Chapter 242. OpenStack Nova Component

Available as of Camel version 2.19

The openstack-nova component allows messages to be sent to an OpenStack compute services.

242.1. 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.

242.2. URI Format

openstack-nova://hosturl[?options]

You can append query options to the URI in the following format ?options=value&option2=value&…​

242.3. 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:

242.3.1. Path Parameters (1 parameters):

NameDescriptionDefaultType

host

Required OpenStack host url

 

String

242.3.2. Query Parameters (9 parameters):

NameDescriptionDefaultType

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

242.4. Usage

You can use following settings for each subsystem:

242.5. flavors

242.5.1. Operations you can perform with the Flavor producer

OperationDescription

create

Create new flavor.

get

Get the flavor.

getAll

Get all flavors.

delete

Delete the flavor.

242.5.2. Message headers evaluated by the Flavor producer

HeaderTypeDescription

operation

String

The operation to perform.

ID

String

ID of the flavor.

name

String

The flavor name.

VCPU

Integer

The number of flavor VCPU.

ram

Integer

Size of RAM.

disk

Integer

Size of disk.

swap

Integer

Size of swap.

rxtxFactor

Integer

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.

242.6. servers

242.6.1. Operations you can perform with the Server producer

OperationDescription

create

Create new server.

createSnapshot

Create snapshot of the server.

get

Get the server.

getAll

Get all servers.

delete

Delete the server.

action

Perform an action on the server.

242.6.2. Message headers evaluated by the Server producer

HeaderTypeDescription

operation

String

The operation to perform.

ID

String

ID of the server.

name

String

The server name.

ImageId

String

The Image ID.

FlavorId

String

The ID of flavor which will be used.

KeypairName

String

The Keypair name.

NetworkId

String

The network ID.

AdminPassword

String

Admin password of the new server.

action

org.openstack4j.model.compute.Action

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.

242.7. keypairs

242.7.1. Operations you can perform with the Keypair producer

OperationDescription

create

Create new keypair.

get

Get the keypair.

getAll

Get all keypairs.

delete

Delete the keypair.

242.7.2. Message headers evaluated by the Keypair producer

HeaderTypeDescription

operation

String

The operation to perform.

name

String

The keypair name.

242.8. See Also

  • Configuring Camel
  • Component
  • Endpoint
  • Getting Started
  • openstack Component