Установка и настройка¶
Важно
Вначале необходимо произвести настройку окружения. Все команды выполняются только от суперпользователя.
Режим суперпользователя:
sudo -i
Важно
Установка производится на управляющий узел.
Установка¶
Установите модуль TIONIX.Scheduler из репозитория RPM-пакетов:
yum -y install python3-tionix_scheduler
Установка на двух и более контроллерах¶
При установке TIONIX.Scheduler на двух и более контроллерах, необходимо:
- Реплицировать базу данных на каждый из контроллеров;
- Реплицировать брокер сообщений на каждый из контроллеров;
- Устанавливать модуль с одинаковыми параметрами на каждый из контроллеров.
Примечание
Удаление и диагностика модуля на каждом контроллере происходит таким же образом, как и в случае с одним контроллером.
Настройка¶
Выполните первичную настройку модуля:
openstack tnx configure -n tnx_scheduler tnx_client
Настройте брокер сообщений RabbitMQ Server:
rabbitmqctl add_user tionix password rabbitmqctl add_vhost tionix rabbitmqctl set_permissions -p tionix tionix ".*" ".*" ".*" rabbitmqctl set_permissions tionix ".*" ".*" ".*"
Создайте каталог для лог-файлов с нужными правами:
mkdir -p /var/log/tionix/scheduler chown -R tionix:tionix /var/log/tionix/scheduler
Скопируйте образец конфигурационного файла, при использовании нестандартных параметров отредактируйте их (подробнее см. Файл конфигурации):
cp /etc/tionix/scheduler.yaml.example /etc/tionix/scheduler.yaml
Создайте базу данных на примере MySQL, настройте права, тип базы и остальные параметры:
# Зайдите в базу данных, используя пароль пользователя root mysql -uroot -p # Создайте пользователя tionix c паролем password CREATE USER 'tionix'@'localhost' IDENTIFIED BY 'password'; # Создайте базу данных tionix_scheduler CREATE DATABASE tionix_scheduler; # Дайте пользователю права на чтение, редактирование, выполнение любых действий над всеми таблицами базы данных tionix_scheduler GRANT ALL PRIVILEGES ON tionix_scheduler.* TO 'tionix'@'localhost'; # Осуществите выход из базы данных
Выполните миграцию базы данных:
openstack tnx db migrate -n tnx_scheduler
Включите и запустите службы systemd:
systemctl daemon-reload systemctl enable tionix-scheduler-beat.service systemctl start tionix-scheduler-beat.service systemctl enable tionix-scheduler-worker.service systemctl start tionix-scheduler-worker.service
Перезапустите службы TIONIX:
systemctl restart tionix-*
Перезапустите веб-сервер:
systemctl restart httpd
Создайте сервис Scheduler API:
openstack service create --name tnx-scheduler --description "TIONIX Scheduler Service" tnx-scheduler
Создайте точки входа (endpoint):
openstack endpoint create --region RegionOne tnx-scheduler internal http://controller:10001 openstack endpoint create --region RegionOne tnx-scheduler admin http://controller:10001 openstack endpoint create --region RegionOne tnx-scheduler public http://controller:10001
Примечание
Необходимо убедиться в корректности конфигурационного файла: проверить пути к установленным модулям, пути к логам, соответствие директив установленной версии Apache.
Файл конфигурации¶
Примечание
По умолчанию в файле scheduler.yaml.example
строки с уровнем логирования нет, она указывается при необходимости. Уровень логирования по умолчанию выставлен в общем конфигурационном файле. Подробнее ознакомиться с файлами конфигурации можно в соответствующем разделе.
Конфигурационный файл представлен в yaml
формате и состоит из следующих секций и параметров:
Параметр | Описание | Значение по умолчанию |
---|---|---|
DB |
Настройки базы данных, где:
|
|
LOG_LEVEL |
Уровень логирования. Доступные значения:
Значения являются регистронезависимыми. Подробное описание параметров доступно в разделе Уровни логирования. |
INFO |
ENTRY_GROUPS |
Список наименований групп, по которым будет производиться сбор задач по точкам входа, например: tionix_tasks . |
|
TASK_LOCALE |
Локальное наименование задач, собранных по точкам входа. Например, en . |
Параметр | Описание | Значение по умолчанию |
---|---|---|
TIME_ZONE |
Временная зона для логирования событий процессов Celery. | |
CELERY_TASK_SERIALIZER |
Задача сериализации. | |
CELERY_RESULT_SERIALIZER |
Результаты сериализации. | |
CELERY_ACCEPT_CONTENT |
Разрешенные операции сериализации для поступающих сообщений. | |
CELERYBEAT_SYNC_EVERY |
Количество выполненных задач до очередной синхронизации. | |
CELERYBEAT_MAX_LOOP_INTERVAL |
Интервал между проверками расписания. | |
SENTRY |
Настройки логирования Sentry, где:
|
|
SCHEDULER_WORKER_LOGFILE |
Путь до лог файла службы tionix-scheduler-worker . |
/var/log/tionix/scheduler/worker.log |
SCHEDULER_BEAT_LOGFILE |
Путь до лог файла службы tionix-scheduler-beat . |
/var/log/tionix/scheduler/beat.log |
Дополнительные параметры:
Параметр | Описание | Значение по умолчанию |
---|---|---|
TRACEBACK_ENABLED |
Параметр для вывода трассировки ошибки при логировании. Возможные значения:
Значения являются регистронезависимыми. |
False |
Важно
При изменении параметров файла конфигурации, для вступления их в силу необходимо произвести процедуру, описанную в разделе «Обновление файла конфигурации».