OpenStack Keystone
Поддерживается только производитель
Компонент Openstack Keystone позволяет отправлять сообщения в службы идентификации OpenStack.
* Компонент openstack-keystone поддерживает только Identity API v3.
Dependencies
Пользователям Maven необходимо добавить следующую зависимость в свой файл pom.xml.
pom.xml
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-openstack</artifactId>
<version>${camel-version}</version>
</dependency>где ${camel-version} необходимо заменить на фактическую версию Camel.
URI Format
openstack-keystone://hosturl[?options]
Configuring Options
Компоненты Camel настраиваются на двух отдельных уровнях:
-
уровень компонентов
-
уровень конечной точки
Configuring Component Options
На уровне компонентов задаются общие и общие конфигурации, которые затем наследуются конечными точками. Это самый высокий уровень конфигурации.
Например, компонент может иметь настройки безопасности, учетные данные для аутентификации, URL-адреса для сетевого подключения и т. д.
У некоторых компонентов всего несколько параметров, а у других -- много. Поскольку компоненты обычно имеют предустановленные значения по умолчанию, которые широко используются, зачастую вам может потребоваться настроить лишь несколько параметров компонента, а то и вовсе ни одного.
Вы можете настроить компоненты, используя:
-
Компонент DSL (opens in a new tab) .
-
в файле конфигурации (
application.propertiesфайлы*.yaml, и т.д.). -
непосредственно в коде Java.
Configuring Endpoint Options
Настройка конечных точек обычно занимает больше времени, поскольку у них есть множество параметров. Эти параметры помогают вам настроить функции конечной точки. Параметры также классифицируются по тому, используется ли конечная точка как потребитель ( от ), как производитель ( от ) или и то, и другое.
Конечные точки чаще всего настраиваются непосредственно в URI конечной точки в виде параметров пути и запроса . Вы также можете использовать Endpoint DSL (opens in a new tab) и DataFormat DSL (opens in a new tab) в качестве типобезопасного способа настройки конечных точек и форматов данных в Java.
Хорошей практикой при настройке параметров является использование заполнителей свойств (opens in a new tab) .
Заполнители свойств обеспечивают несколько преимуществ:
-
Они помогают предотвратить использование жестко запрограммированных URL-адресов, номеров портов, конфиденциальной информации и других настроек.
-
Они позволяют вынести конфигурацию за пределы кода.
-
Они помогают коду стать более гибким и пригодным для повторного использования.
В следующих двух разделах перечислены все параметры, сначала для компонента, а затем для конечной точки.
Component Options
Компонент OpenStack Keystone поддерживает 2 варианта, которые перечислены ниже.
lazyStartProducer (producer)
-
По умолчанию: Следует ли запускать производитель в режиме ленивого запуска (при первом сообщении). Запуск в режиме ленивого запуска позволяет разрешить запуск CamelContext и маршрутов в ситуациях, когда производитель может выйти из строя при запуске, что приведет к сбою запуска маршрута. Отложив запуск в режим ленивого запуска, можно обработать сбой запуска во время маршрутизации сообщений с помощью обработчиков ошибок маршрутизации Camel. Имейте в виду, что после обработки первого сообщения создание и запуск производителя могут занять некоторое время и увеличить общее время обработки.
-
По умолчанию: Тип: false
-
Тип: boolean
autowiredEnabled (advanced)
-
Включено ли автоматическое связывание. Это используется для параметров автоматического связывания (параметр должен быть помечен как autowired) путём поиска в реестре экземпляра соответствующего типа, который затем настраивается в компоненте. Это может использоваться для автоматической настройки источников данных JDBC, фабрик JMS-подключений, клиентов AWS и т. д.
-
По умолчанию: true
-
Тип: boolean
Endpoint Options
Конечная точка OpenStack Keystone настраивается с использованием синтаксиса URI:
openstack-keystone:host
Со следующими параметрами пути и запроса :
Path Parameters (1 parameters)
host (producer)
-
Требуемый URL-адрес хоста OpenStack..
-
По умолчанию:
-
Тип: String
Query Parameters (8 parameters)
config (producer)
-
Конфигурация OpenStack.
-
По умолчанию:
-
Тип: Config
domain (producer)
-
Тип: Домен аутентификации.
-
По умолчанию: default
-
Тип: String
operation (producer)
-
Операция, которую предстоит сделать.
-
По умолчанию:
-
Тип: String
password (producer)
-
Требуется пароль OpenStack.
-
По умолчанию:
-
Тип: String
project (producer)
-
Тип: Обязательно Идентификатор проекта.
-
По умолчанию:
-
Тип: String
subsystem (producer)
-
Требуется подсистема OpenStack Keystone.
Значения перечисления:
-
regions
-
domains
-
projects
-
users
-
groups
-
-
По умолчанию:
-
Тип: String
username (producer)
-
Тип: Обязательное имя пользователя OpenStack.
-
По умолчанию:
-
Тип: String
lazyStartProducer (producer (advanced))
-
Следует ли запускать производитель в режиме ленивого запуска (при первом сообщении). Запуск в режиме ленивого запуска позволяет разрешить запуск CamelContext и маршрутов в ситуациях, когда производитель может выйти из строя при запуске, что приведет к сбою запуска маршрута. Отложив запуск в режим ленивого запуска, можно обработать сбой запуска во время маршрутизации сообщений с помощью обработчиков ошибок маршрутизации Camel. Имейте в виду, что после обработки первого сообщения создание и запуск производителя могут занять некоторое время и увеличить общее время обработки.
-
По умолчанию: false
-
Тип: boolean
Message Headers
Компонент OpenStack Keystone поддерживает 10 заголовков сообщений, которые перечислены ниже:
description (producer)
Constant: DESCRIPTION (opens in a new tab)
-
Описание.
-
По умолчанию:
-
Тип: String
domainId (group project user)
Constant: DOMAIN_ID (opens in a new tab)
-
Идентификатор домена.
-
По умолчанию:
-
Тип: String
parentId (project)
Constant: PARENT_ID (opens in a new tab)
-
Идентификатор родительского проекта.
-
По умолчанию:
-
Тип: String
password (user)
Constant: PASSWORD (opens in a new tab)
-
Пароль пользователя.
-
По умолчанию:
-
Тип: String
email (user)
Constant: EMAIL (opens in a new tab)
-
Тип: Электронная почта пользователя.
-
По умолчанию:
-
Тип: String
userId (group)
Constant: USER_ID (opens in a new tab)
-
Идентификатор пользователя.
-
По умолчанию:
-
Тип: String
groupId (group)
Constant: GROUP_ID (opens in a new tab)
-
Идентификатор группы.
-
По умолчанию:
-
Тип: String
operation (producer)
Constant: OPERATION (opens in a new tab)
-
Операция, которую необходимо выполнить.
-
По умолчанию:
-
Тип: String
ID (producer)
Constant: ID (opens in a new tab)
-
Тип: The ID.
-
По умолчанию:
-
Тип: String
name (producer)
Constant: NAME (opens in a new tab)
-
Имя.
-
По умолчанию:
-
Тип: String
Usage
Для каждой подсистемы вы можете использовать следующие настройки:
Domains
Operations you can perform with the Domain producer
create
- Создайте новый домен.
get
- Тип: Получите домен.
getAll
- По умолчанию: Получить все домены.
update
- Обновите домен.
delete
- Удалить домен.
Если вам нужны более точные настройки домена, вы можете создать новый объект типа
org.openstack4j.model.identity.v3.Domainи отправить его в теле сообщения.
Groups
Operations you can perform with the Group producer
create
- Создайте новую группу.
get
- По умолчанию: Получить группу.
getAll
- Тип: Получить все группы.
update
- Обновите группу.
delete
- Удалить группу.
addUserToGroup
- Добавьте пользователя в группу.
checkUserGroup
- Тип: Проверьте, находится ли пользователь в группе..
removeUserFromGroup
- Удалить пользователя из группы.
Если вам нужны более точные настройки группы, вы можете создать новый объект типа
org.openstack4j.model.identity.v3.Groupи отправить его в теле сообщения.
Projects
Operations you can perform with the Project producer
create
- Тип: Создайте новый проект.
get
- По умолчанию: Получить проект.
getAll
- Получить все проекты.
update
- Обновите проект.
delete
- Удалить проект.
Если вам нужны более точные настройки проекта, вы можете создать новый объект типа
org.openstack4j.model.identity.v3.Projectи отправить его в теле сообщения.
Regions
Operations you can perform with the Region producer
create
- По умолчанию: Создать новый регион..
get
- Тип: Получите регион.
getAll
- Получить все регионы.
update
- Обновите регион.
delete
- По умолчанию: Удалить регион.
Если вам нужны более точные настройки региона, вы можете создать новый объект типа
org.openstack4j.model.identity.v3.Regionи отправить его в теле сообщения.
Users
Operations you can perform with the User producer
create
- Тип: Создать нового пользователя.
get
- Получите пользователя.
getAll
- Тип: Получить всех пользователей.
update
- По умолчанию: Обновите пользователя.
delete
- Тип: Удалить пользователя.
Если вам нужны более точные настройки пользователя, вы можете создать новый объект типа
org.openstack4j.model.identity.v3.Userи отправить его в теле сообщения.
Spring Boot Auto-Configuration
При использовании openstack-keystone с Spring Boot обязательно используйте следующую зависимость Maven для поддержки автоматической настройки:
<dependency>
<groupId>org.apache.camel.springboot</groupId>
<artifactId>camel-openstack-starter</artifactId>
<version>x.x.x</version>
<!-- use the same version as your Camel core version -->
</dependency>Компонент поддерживает 18 опций, которые перечислены ниже.
camel.component.openstack-cinder.autowired-enabled
-
Включено ли автоматическое связывание. Это используется для параметров автоматического связывания (параметр должен быть помечен как autowired) путём поиска в реестре экземпляра соответствующего типа, который затем настраивается в компоненте. Это может использоваться для автоматической настройки источников данных JDBC, фабрик JMS-подключений, клиентов AWS и т. д.
-
По умолчанию: true
-
Тип: Boolean
camel.component.openstack-cinder.enabled
-
Включить ли автоматическую настройку компонента openstack-cinder. По умолчанию эта опция включена.
-
По умолчанию:
-
Тип: Boolean
camel.component.openstack-cinder.lazy-start-producer
-
Следует ли запускать производитель в режиме ленивого запуска (при первом сообщении). Запуск в режиме ленивого запуска позволяет разрешить запуск CamelContext и маршрутов в ситуациях, когда производитель может выйти из строя при запуске, что приведет к сбою запуска маршрута. Отложив запуск в режим ленивого запуска, можно обработать сбой запуска во время маршрутизации сообщений с помощью обработчиков ошибок маршрутизации Camel. Имейте в виду, что после обработки первого сообщения создание и запуск производителя могут занять некоторое время и увеличить общее время обработки.
-
По умолчанию: false
-
Тип: Boolean
camel.component.openstack-glance.autowired-enabled
-
Включено ли автоматическое связывание. Это используется для параметров автоматического связывания (параметр должен быть помечен как autowired) путём поиска в реестре экземпляра соответствующего типа, который затем настраивается в компоненте. Это может использоваться для автоматической настройки источников данных JDBC, фабрик JMS-подключений, клиентов AWS и т. д.
-
По умолчанию: true
-
Тип: Boolean
camel.component.openstack-glance.enabled
-
Включить ли автоматическую настройку компонента openstack-glance. По умолчанию эта опция включена.
-
По умолчанию:
-
Тип: Boolean
camel.component.openstack-glance.lazy-start-producer
-
Следует ли запускать производитель в режиме ленивого запуска (при первом сообщении). Запуск в режиме ленивого запуска позволяет разрешить запуск CamelContext и маршрутов в ситуациях, когда производитель может выйти из строя при запуске, что приведет к сбою запуска маршрута. Отложив запуск в режим ленивого запуска, можно обработать сбой запуска во время маршрутизации сообщений с помощью обработчиков ошибок маршрутизации Camel. Имейте в виду, что после обработки первого сообщения создание и запуск производителя могут занять некоторое время и увеличить общее время обработки.
-
По умолчанию: false
-
Тип: Boolean
camel.component.openstack-keystone.autowired-enabled
-
Включено ли автоматическое связывание. Это используется для параметров автоматического связывания (параметр должен быть помечен как autowired) путём поиска в реестре экземпляра соответствующего типа, который затем настраивается в компоненте. Это может использоваться для автоматической настройки источников данных JDBC, фабрик JMS-подключений, клиентов AWS и т. д.
-
По умолчанию: true
-
Тип: Boolean
camel.component.openstack-keystone.enabled
-
Включить ли автоматическую настройку компонента openstack-keystone. По умолчанию эта опция включена.
-
По умолчанию:
-
Тип: Boolean
camel.component.openstack-keystone.lazy-start-producer
-
Следует ли запускать производитель в режиме ленивого запуска (при первом сообщении). Запуск в режиме ленивого запуска позволяет разрешить запуск CamelContext и маршрутов в ситуациях, когда производитель может выйти из строя при запуске, что приведет к сбою запуска маршрута. Отложив запуск в режим ленивого запуска, можно обработать сбой запуска во время маршрутизации сообщений с помощью обработчиков ошибок маршрутизации Camel. Имейте в виду, что после обработки первого сообщения создание и запуск производителя могут занять некоторое время и увеличить общее время обработки.
-
По умолчанию: false
-
Тип: Boolean
camel.component.openstack-neutron.autowired-enabled
-
Включено ли автоматическое связывание. Это используется для параметров автоматического связывания (параметр должен быть помечен как autowired) путём поиска в реестре экземпляра соответствующего типа, который затем настраивается в компоненте. Это может использоваться для автоматической настройки источников данных JDBC, фабрик JMS-подключений, клиентов AWS и т. д.
-
По умолчанию: true
-
Тип: Boolean
camel.component.openstack-neutron.enabled
-
Включить ли автоматическую настройку компонента openstack-neutron. По умолчанию эта опция включена.
-
По умолчанию:
-
Тип: Boolean
camel.component.openstack-neutron.lazy-start-producer
-
Следует ли запускать производитель в режиме ленивого запуска (при первом сообщении). Запуск в режиме ленивого запуска позволяет разрешить запуск CamelContext и маршрутов в ситуациях, когда производитель может выйти из строя при запуске, что приведет к сбою запуска маршрута. Отложив запуск в режим ленивого запуска, можно обработать сбой запуска во время маршрутизации сообщений с помощью обработчиков ошибок маршрутизации Camel. Имейте в виду, что после обработки первого сообщения создание и запуск производителя могут занять некоторое время и увеличить общее время обработки.
-
По умолчанию: false
-
Тип: Boolean
camel.component.openstack-nova.autowired-enabled
-
Включено ли автоматическое связывание. Это используется для параметров автоматического связывания (параметр должен быть помечен как autowired) путём поиска в реестре экземпляра соответствующего типа, который затем настраивается в компоненте. Это может использоваться для автоматической настройки источников данных JDBC, фабрик JMS-подключений, клиентов AWS и т. д.
-
По умолчанию: true
-
Тип: Boolean
camel.component.openstack-nova.enabled
-
Включить ли автоматическую настройку компонента openstack-nova. По умолчанию эта опция включена.
-
По умолчанию:
-
Тип: Boolean
camel.component.openstack-nova.lazy-start-producer
-
Следует ли запускать производитель в режиме ленивого запуска (при первом сообщении). Запуск в режиме ленивого запуска позволяет разрешить запуск CamelContext и маршрутов в ситуациях, когда производитель может выйти из строя при запуске, что приведет к сбою запуска маршрута. Отложив запуск в режим ленивого запуска, можно обработать сбой запуска во время маршрутизации сообщений с помощью обработчиков ошибок маршрутизации Camel. Имейте в виду, что после обработки первого сообщения создание и запуск производителя могут занять некоторое время и увеличить общее время обработки.
-
По умолчанию: false
-
Тип: Boolean
camel.component.openstack-swift.autowired-enabled
-
Включено ли автоматическое связывание. Это используется для параметров автоматического связывания (параметр должен быть помечен как autowired) путём поиска в реестре экземпляра соответствующего типа, который затем настраивается в компоненте. Это может использоваться для автоматической настройки источников данных JDBC, фабрик JMS-подключений, клиентов AWS и т. д.
-
По умолчанию: true
-
Тип: Boolean
camel.component.openstack-swift.enabled
-
Включить ли автоматическую настройку компонента openstack-swift. По умолчанию эта опция включена.
-
По умолчанию:
-
Тип: Boolean
camel.component.openstack-swift.lazy-start-producer
-
Следует ли запускать производитель в режиме ленивого запуска (при первом сообщении). Запуск в режиме ленивого запуска позволяет разрешить запуск CamelContext и маршрутов в ситуациях, когда производитель может выйти из строя при запуске, что приведет к сбою запуска маршрута. Отложив запуск в режим ленивого запуска, можно обработать сбой запуска во время маршрутизации сообщений с помощью обработчиков ошибок маршрутизации Camel. Имейте в виду, что после обработки первого сообщения создание и запуск производителя могут занять некоторое время и увеличить общее время обработки.
-
По умолчанию: false
-
Тип: Boolean