Download PDF
Download page Служба OneFlow.
Служба OneFlow
Оглавление
Дополнительная информация
Общие сведения
Служба OneFlow осуществляет управление сервисом, реализованным в виде многозвенного (multi-tier) приложения. Каждое звено (tier) представляет собой приложение, функционирующее на отдельной ВМ.
Кроме того, службой OneFlow обеспечивается автоматическая перенастройка сервиса в соответствии с заданными правилами (политикой эластичности). Под перенастройкой сервиса подразумевается автоматическое изменение состояния виртуальных машин, логически объединенных в сервис (остановка, запуск, перезапуск и т.д.), а также автоматическое изменение количества виртуальных машин с заданной ролью.
В ПК СВ служба OneFlow реализована в виде инструмента командной строки opennebula-flow
, который устанавливается автоматически при установке и инициализации сервиса фронтальной машины. Также можно развернуть службу OneFlow на отдельном сервере, для этого необходимо установить пакет opennebula-flow
, который размещен в репозитории ПК СВ.
Настройка службы OneFlow
Значения параметров службы OneFlow представлены в конфигурационном файле /etc/one/oneflow-server.conf
, который имеет формат YAML и по умолчанию размещен на фронтальной машине. Для настройки службы OneFlow используются следующие параметры:
Параметр | Описание |
---|---|
Сетевые настройки | |
| Адрес для подключения к API службы управления ПК СВ (по протоколу XML-RPC) |
| Адрес для подключения к службе хуков |
| Интервал времени (в секундах) между проверками значений параметров, указанных в политике эластичности |
| Сетевое имя или IP-адрес, который необходимо прослушивать (ожидать запрос на соединение) |
| Порт, который необходимо прослушивать (ожидать запрос на соединение) |
| Флаг, который устанавливает режим принудительного удаления ВМ |
Значения, установленные по умолчанию | |
| Длительность паузы (в секундах) после выполнения автоматического масштабирования сервиса. Во время паузы службой OneFlow не выполняется никаких действий. |
| Длительность ожидания (в секундах) отчета об изменении состояния ВМ |
| Количество ядер, выделенных для работы службы OneFlow |
| Режим выключения ВМ. Может принимать следующие значения:
|
| Количество ВМ с заданной ролью, которым будет одновременно направлена команда на изменение состояния |
| Интервал времени (в секундах) через который будет повторно направлена команда на изменение состояния ВМ с заданной ролью. Команда повторяется до тех пор, пока все ВМ с заданной ролью, не получат эту команду. Количество ВМ, которым будет одновременно направлена команда на изменение состояния определяется параметром |
| Шаблон имени ВМ, создаваемой службой OneFlow. При формировании шаблона допускается использовать следующие переменные:
По умолчанию установлен следующий шаблон имени ВМ: $ROLE_NAME_$VM_NUMBER_(service_$SERVICE_ID) |
| Размер страницы данных при очистке сервиса, имеющего статус DONE |
Аутентификация | |
| Метод аутентификации, используемый при подключении к службе управления ПК СВ (oned). Может принимать следующие значения:
|
Протоколирование | |
| Уровень протоколирования. Возможные значения:
|
По умолчанию служба OneFlow настроена на прослушивание локального адреса (localhost
). Если служба OneFlow развернута на фронтальной машине и планируется взаимодействие с этой службой в ОС фронтальной машины, то дополнительных настроек не требуется.
Если планируется удаленное подключение к службе OneFlow, то необходимо в качестве значения параметра ":host"
указать адрес сервера, на котором развернута эта служба, и к которому имеется сетевой доступ. Кроме того, для параметра ":host"
можно указать значение 0.0.0.0
(для прослушивания всех IP-адресов, присвоенных серверу).
После внесения изменений в конфигурационный файл необходимо перезагрузить службу OneFlow командой:
Управление службой OneFlow
Чтобы запустить, перезапустить или остановить службу OneFlow, необходимо выполнить соответствующую команду:
sudo systemctl start opennebula-flow
sudo systemctl restart opennebula-flow
sudo systemctl stop opennebula-flow
sudo systemctl enable opennebula-flow
sudo systemctl disable opennebula-flow
/var/log/one/oneflow.log;
/var/log/one/oneflow.error.
Кроме, того информация о работе службы OneFlow регистрируется в системном журнале. Для просмотра этой информации необходимо выполнить команду:
/var/log/one/oneflow/<идентификатор_сервиса>
.Настройка ПК СВ для использования службы OneFlow
Для взаимодействия пользователя со службой OneFlow используются веб-интерфейс ПК СВ, а также инструменты командной строки oneflow
и oneflow-template
.
Настройка веб-интерфейса ПК СВ
При настройке веб-интерфейса ПК СВ для доступа к службе OneFlow используется параметр ":oneflow_server"
, значение которого содержит сетевое имя (IP-адрес) и порт для доступа к службе OneFlow. Изменение значения параметра ":oneflow_server"
производится в конфигурационном файле /etc/one/sunstone-server.conf
.
Пример
:oneflow_server: http://192.168.0.5:2474/
После внесения изменений необходимо перезапустить службу веб-интерфейса ПК СВ:
Настройка инструментов командной строки
Дополнительная настройка не требуется. Однако, если планируется удаленное подключение к службе OneFlow, то при вызове инструмента командной строки необходимо предварительно указывать адрес доступа к службе (ONEFLOW_URL
).
Пример