OpenStack Nova
Since Camel 2.19
The openstack-nova component allows messages to be sent to an OpenStack compute services.
Dependencies
Maven users will need to add the following dependency to their pom.xml.
pom.xml
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-openstack</artifactId>
<version>${camel-version}</version>
</dependency>
where ${camel-version} must be replaced by the actual version of Camel.
URI Format
openstack-nova://hosturl[?options]
You can append query options to the URI in the following format
?options=value&option2=value&…
URI Options
The OpenStack Nova component has no options.
The OpenStack Nova endpoint is configured using URI syntax:
openstack-nova:host
with the following path and query parameters:
Path Parameters (1 parameters):
| Name | Description | Default | Type |
|---|---|---|---|
host |
Required OpenStack host url |
String |
Query Parameters (9 parameters):
| Name | Description | Default | Type |
|---|---|---|---|
apiVersion (producer) |
OpenStack API version |
V3 |
String |
config (producer) |
OpenStack configuration |
Config |
|
domain (producer) |
Authentication domain |
default |
String |
operation (producer) |
The operation to do |
String |
|
password (producer) |
Required OpenStack password |
String |
|
project (producer) |
Required The project ID |
String |
|
subsystem (producer) |
Required OpenStack Nova subsystem |
String |
|
username (producer) |
Required OpenStack username |
String |
|
synchronous (advanced) |
Sets whether synchronous processing should be strictly used, or Camel is allowed to use asynchronous processing (if supported). |
false |
boolean |
Spring Boot Auto-Configuration
When using Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-openstack-starter</artifactId>
<version>x.x.x</version>
<!-- use the same version as your Camel core version -->
</dependency>
The component supports 2 options, which are listed below.
| Name | Description | Default | Type |
|---|---|---|---|
camel.component.openstack-nova.enabled |
Enable openstack-nova component |
true |
Boolean |
camel.component.openstack-nova.resolve-property-placeholders |
Whether the component should resolve property placeholders on itself when starting. Only properties which are of String type can use property placeholders. |
true |
Boolean |
flavors
Operations you can perform with the Flavor producer
| Operation | Description |
|---|---|
|
Create new flavor. |
|
Get the flavor. |
|
Get all flavors. |
|
Delete the flavor. |
Message headers evaluated by the Flavor producer
| Header | Type | Description |
|---|---|---|
|
|
The operation to perform. |
|
|
ID of the flavor. |
|
|
The flavor name. |
|
|
The number of flavor VCPU. |
|
|
Size of RAM. |
|
|
Size of disk. |
|
|
Size of swap. |
|
|
Rxtx Factor. |
If you need more precise flavor settings you can create new object of the type org.openstack4j.model.compute.Flavor and send in the message body.
servers
Operations you can perform with the Server producer
| Operation | Description |
|---|---|
|
Create new server. |
|
Create snapshot of the server. |
|
Get the server. |
|
Get all servers. |
|
Delete the server. |
|
Perform an action on the server. |
Message headers evaluated by the Server producer
| Header | Type | Description |
|---|---|---|
|
|
The operation to perform. |
|
|
ID of the server. |
|
|
The server name. |
|
|
The Image ID. |
|
|
The ID of flavor which will be used. |
|
|
The Keypair name. |
|
|
The network ID. |
|
|
Admin password of the new server. |
|
|
An action to perform. |
If you need more precise server settings you can create new object of the type org.openstack4j.model.compute.ServerCreate and send in the message body.