Chapter 251. 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.

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

251.2. URI Format

openstack-cinder://hosturl[?options]

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

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

251.3.1. Path Parameters (1 parameters):

NameDescriptionDefaultType

host

Required OpenStack host url

 

String

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

251.4. Spring Boot Auto-Configuration

The component supports 2 options, which are listed below.

NameDescriptionDefaultType

camel.component.openstack-cinder.enabled

Enable openstack-cinder component

true

Boolean

camel.component.openstack-cinder.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

251.5. Usage

You can use following settings for each subsystem:

251.6. volumes

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

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

251.7. snapshots

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

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

251.8. See Also

  • Configuring Camel
  • Component
  • Endpoint
  • Getting Started
  • openstack Component
Red Hat logoGithubRedditYoutubeTwitter

Learn

Try, buy, & sell

Communities

About Red Hat Documentation

We help Red Hat users innovate and achieve their goals with our products and services with content they can trust.

Making open source more inclusive

Red Hat is committed to replacing problematic language in our code, documentation, and web properties. For more details, see the Red Hat Blog.

About Red Hat

We deliver hardened solutions that make it easier for enterprises to work across platforms and environments, from the core datacenter to the network edge.

© 2024 Red Hat, Inc.