Download PDF
Download page Управление экземплярами сервиса.
Управление экземплярами сервиса
Жизненный цикл экземпляра сервиса
Жизненный цикл экземпляра сервиса включает состояния, приведенные в таблице:
Состояние сервиса | Описание |
---|---|
| Исходное состояние сервиса. Сервис находится в этом состоянии, пока служба OneFlow не начнет процесс развертывания этого сервиса |
| Начался процесс развертывания каких-либо групп ВМ с заданной ролью |
| Все группы ВМ с заданной ролью из состава сервиса успешно развернуты |
| Обнаружена ошибка при развертывании ВМ |
| Начался процесс автоматического масштабирования группы ВМ с заданной ролью |
| Пауза между итерациями автоматического масштабирования группы ВМ с заданной ролью |
| Начался процесс отмены развертывания каких-либо групп ВМ с заданной ролью |
| Обнаружена ошибка при развертывании сервиса |
| Обнаружена ошибка во время отмены развертывания сервиса |
| Обнаружена ошибка во время автоматического масштабирования сервиса |
При этом каждая группа ВМ с заданной ролью может быть в одном из состояний, описание которых приведено в таблице:
Состояние группы | Описание |
---|---|
| Ожидание начала процесса развертывания |
| Начался процесс развертывания ВМ. Группа ВМ с заданной ролью находится в этом состоянии, пока статус всех ВМ из состава группы не примет значение |
| Статус всех ВМ из состава группы имеет значение |
| Обнаружена ошибка при развертывании ВМ |
| Начался процесс автоматического масштабирования. Группа ВМ с заданной ролью находится в этом состоянии, пока необходимое количество ВМ не будет развернуто или выключено |
| Пауза между итерациями автоматического масштабирования |
| Начался процесс выключения каких-либо ВМ. Группа ВМ с заданной ролью находится в этом состоянии, пока статус указанных ВМ не примет значение |
| Обнаружена ошибка при развертывании ВМ |
| Обнаружена ошибка во время отмены развертывания ВМ |
| Обнаружена ошибка во время автоматического масштабирования группы ВМ с заданной ролью |
Управление экземплярами сервиса в интерфейсе командной строки
Развертывание экземпляра сервиса
Для развертывания сервиса из шаблона можно воспользоваться командой:
Отображение развернутых сервисов
Для отображения развернутых сервисов необходимо использовать команду oneflow list
. Пример вывода после выполнения команды:
ID USER GROUP NAME STARTTIME STATE
1 oneadmin oneadmin my_service 10/28 17:42:46 PENDING
oneflow top
для непрерывного отображения развернутых сервисов.Для просмотра полной информации о сервисе необходимо использовать команду:
Управление состоянием сервиса
Для управления состоянием сервиса используются следующие команды:
Команда | Описание |
---|---|
oneflow delete | Выключение сервиса. Эта команда запускает процесс корректного выключения всех развернутых экземпляров ВМ. Если в настройках сервиса указан тип развертывания straight , то процесс выключения групп ВМ с заданной ролью производится в обратном порядке |
oneflow recover | Восстановление после сбоя. Используется для автоматического возобновления функционирования в штатном режиме (см. также Особенности восстановления после сбоя) |
oneflow recover --delete | Принудительное удаление экземпляра сервиса. Используется, если в процессе удаления ВМ произошла ошибка |
oneflow purge-done | Удаление всех сервисов, состояние которых имеет значение DONE |
Добавление или удаление групп ВМ в экземпляре сервиса
RUNNING
.
Чтобы добавить группу ВМ с заданной ролью, необходимо выполнить команду:
<идентификатор_сервиса>
– идентификатор экземпляра сервиса;<файл_json>
– файл в формате JSON, в котором указаны значения параметров группы ВМ с заданной ролью.
Пример
Файл role.json
с параметрами группы ВМ:
{
"name": "MASTER",
"cardinality": 1,
"vm_template": 0,
"min_vms": 1,
"max_vms": 2,
"elasticity_policies": [],
"scheduled_policies": []
}
Добавление группы ВМ в экземпляр сервиса с идентификатором 0:
После получения команды на добавление группы ВМ с заданной ролью в сервис, состояние этого сервиса примет значение DEPLOYING
. Сервис находится в этом состоянии, пока статус необходимого количества ВМ из состава группы не примет значение RUNNING
.
Чтобы удалить группу ВМ с заданной ролью, необходимо выполнить команду:
UNDEPLOYING
. Сервис находится в этом состоянии до тех пор, пока все ВМ из состава группы не будут удалены. После этого состояние сервиса примет значение RUNNING
. Управление группой ВМ из состава экземпляра сервиса
Для управления состоянием всех ВМ из состава группы ВМ с заданной ролью используется следующая команда:
terminate
terminate-hard
undeploy
undeploy-hard
hold
release
stop
suspend
resume
reboot
reboot-hard
poweroff
poweroff-hard
snapshot-create
snapshot-revert
snapshot-delete
disk-snapshot-create
disk-snapshot-revert
disk-snapshot-delete
Кроме того, возможно указать, что заданное в команде действие применялось не одновременно ко всем ВМ из состава группы, а поочередно в отношении одной или нескольких ВМ. Для этого используются следующие аргументы команды:
"-n"
или"--number"
– количество ВМ с заданной ролью, которым будет одновременно направлена команда на изменение состояния за одну итерацию;"-p"
или"--period"
– пауза (в секундах) между итерациями.
Если аргументы "--number"
и "--period"
не указаны, то используются соответственно значения параметров ":action_number
" и ":action_period
", заданные в конфигурационном файле /etc/one/oneflow-server.conf
службы OneFlow.
Пример
Направить всем ВМ из состава группы с ролью my-role
сервиса my-service
команду на перезагрузку. При этом за одну итерацию команда на перезагрузку будет направлена только двум ВМ из состава группы. Пауза между итерациями составляет 300 секунд.
Управление экземплярами сервиса в веб-интерфейсе ПК СВ
Развертывание экземпляра сервиса
Для развертывания сервиса из шаблона, в веб-интерфейсе ПК СВ необходимо выполнить действия, описанные ниже.
- В меню слева выбрать пункт меню «Шаблоны — Сервисы».
- На открывшейся странице Шаблоны Сервисов выбрать необходимый шаблон.
На открывшейся странице Шаблон Сервиса нажать на кнопку [+] и в открывшемся меню выбрать пункт Создать ВМ.
- На открывшейся странице Развернуть Шаблон Сервиса :
- в поле Имя сервиса задать наименование сервиса;
- указать количество экземпляров сервиса;
- нажать на кнопку [Создать ВМ].
В веб-интерфейсе в меню слева выбрать пункт меню «Экземпляры ВМ — Сервисы» и дождаться пока в поле Состояние для созданного на предыдущем шаге сервиса значение
РАЗВОРАЧИВАЕТСЯ
не изменится наЗАПУЩЕНО
. Для обновления информации на странице можно воспользоваться кнопкой [Обновить страницу].
Отображение развернутых сервисов
Для отображения развернутых сервисов в веб-интерфейсе ПК СВ необходимо в меню слева выбрать пункт меню «Экземпляры ВМ — Сервисы». На открывшейся странице Сервисы будет отображена таблица экземпляров сервисов (см. рисунок выше).
Для просмотра полной информации о сервисе необходимо на странице Сервисы выбрать необходимый сервис. После этого откроется страница сервиса (вкладка Сведения).
Управление состоянием сервиса
Для управления состоянием сервиса используются следующие кнопки веб-интерфейса:
Кнопка | Действие | Описание |
---|---|---|
[Удалить] | Инициирует команду oneflow delete | Выключение сервиса. Эта команда запускает процесс корректного выключения всех запущенных экземпляров ВМ. Если в настройках сервиса указан тип развертывания straight , то процесс выключения групп ВМ с заданной ролью производится в обратном порядке |
[Восстановить] | Инициирует команду oneflow recover | Восстановление после сбоя. Используется для автоматического возобновления функционирования в штатном режиме (см. также Особенности восстановления после сбоя) |
[Восстановить - удалить] | Инициирует командуoneflow recover --delete | Принудительное удаление экземпляра сервиса. Используется, если в процессе удаления ВМ произошла ошибка |
[Очистить] | Инициирует командуoneflow purge-done | Удаление всех сервисов, состояние которых имеет значение DONE |
Управление группой ВМ из состава экземпляра сервиса
Для управления состоянием всех ВМ из состава группы ВМ с заданной ролью, в веб-интерфейсе ПК СВ необходимо выполнить действия, описанные ниже.
- В меню слева выбрать пункт меню «Экземпляры ВМ — Сервисы».
- На открывшейся странице Сервисы выбрать необходимый сервис.
На открывшейся странице Сервис во вкладке Роли выбрать группу ВМ, состояние которой необходимо изменить. После этого станут доступны кнопки для управления состоянием группы ВМ.
Также можно указать, что заданное в команде действие применялось не одновременно ко всем ВМ из состава группы, а поочередно в отношении одной или нескольких ВМ. Для этого используются следующие поля для ввода:
Номер
– количество ВМ с заданной ролью, которым будет одновременно направлена команда на изменение состояния за одну итерацию;Период
– пауза (в секундах) между итерациями.
Если значения параметров
Номер
иПериод
не указаны, то используются соответственно значения параметров ":action_number
" и ":action_period
", заданные в конфигурационном файле/etc/one/oneflow-server.conf
службы OneFlow.
Для управления состоянием конкретной ВМ из состава группы ВМ с заданной ролью, в веб-интерфейсе ПК СВ необходимо выполнить действия, описанные ниже.
- В меню слева выбрать пункт меню «Экземпляры ВМ — Сервисы».
- На открывшейся странице Сервисы выбрать необходимый сервис.
На открывшейся странице Сервис во вкладке Роли выбрать группу ВМ, состояние которой необходимо изменить, и пролистать страницу вниз.
- На странице Сервис в секции ВМ выбрать необходимую ВМ (допускается выбрать несколько ВМ). После этого станут доступны кнопки для управления состоянием ВМ.
Особенности восстановления после сбоя
Некоторые ошибки, возникшие в процессе функционирования сервиса, могут быть устранены в автоматическом режиме с помощью команды oneflow recover
. Последовательность действий при выполнении этой команды зависит от исходного состояния сервиса (см. таблицу ниже).
Исходное состояние сервиса | Описание автоматических действий при выполнении команды "oneflow recover" | Новое состояние сервиса |
---|---|---|
FAILED_DEPLOYING | ВМ, имеющие статус DONE или FAILED , уничтожаются. ВМ со статусом UNKNOWN развертываются | DEPLOYING |
FAILED_UNDEPLOYING | Возобновление процесса удаления сервиса | UNDEPLOYING |
FAILED_SCALING | ВМ, имеющие статус DONE или FAILED , уничтожаются. ВМ со статусом UNKNOWN развертываются. Если в процессе автоматического масштабирования производилось уменьшение количества ВМ, то возобновляется действие по выключению заданных ВМ | SCALING |
COOLDOWN | Пропуск паузы, немедленное возобновление функционирования | RUNNING |