Chapter 249. OpenStack Cinder Component

Available as of Camel version 2.19

The openstack-cinder component allows messages to be sent to an OpenStack block storage services.

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

249.2. URI Format

openstack-cinder://hosturl[?options]

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

249.3. URI Options

The OpenStack Cinder component has no options.

The OpenStack Cinder endpoint is configured using URI syntax:

openstack-cinder:host

with the following path and query parameters:

249.3.1. Path Parameters (1 parameters):

NameDescriptionDefaultType

host

Required OpenStack host url

 

String

249.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 Cinder 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

249.4. Usage

You can use following settings for each subsystem:

249.5. volumes

249.5.1. Operations you can perform with the Volume producer

OperationDescription

create

Create new volume.

get

Get the volume.

getAll

Get all volumes.

getAllTypes

Get volume types.

update

Update the volume.

delete

Delete the volume.

249.5.2. Message headers evaluated by the Volume producer

HeaderTypeDescription

operation

String

The operation to perform.

ID

String

ID of the volume.

name

String

The volume name.

description

String

Volume description.

size

Integer

Size of volume.

volumeType

String

Volume type.

imageRef

String

ID of image.

snapshotId

String

ID of snapshot.

isBootable

Boolean

Is bootable.

If you need more precise volume settings you can create new object of the type org.openstack4j.model.storage.block.Volume and send in the message body.

249.6. snapshots

249.6.1. Operations you can perform with the Snapshot producer

OperationDescription

create

Create new snapshot.

get

Get the snapshot.

getAll

Get all snapshots.

update

Get update the snapshot.

delete

Delete the snapshot.

249.6.2. Message headers evaluated by the Snapshot producer

HeaderTypeDescription

operation

String

The operation to perform.

ID

String

ID of the server.

name

String

The server name.

description

String

The snapshot description.

VolumeId

String

The Volume ID.

force

Boolean

Force.

If you need more precise server settings you can create new object of the type org.openstack4j.model.storage.block.VolumeSnapshot and send in the message body.

249.7. See Also

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