Настройка

Извлекаемые переменные

Перечень переменных с их методами извлечения доступны в приложении:

variables.txt

Пример переменной:

AUTH_URL
Variable default value: http://localhost:5000
Variable extraction sequence: OS_AUTH_URL

где:

  • AUTH_URL - внутреннее название переменной;
  • http://localhost:5000 - значение по умолчанию для переменной, если ни в одном из методов извлечения не нашлась переменная по последовательности извлечения;
  • OS_AUTH_URL - это название переменной, из которой будет извлекаться значение для указанной внутренней переменной.

Переменные модулей

Для того, чтобы задавать параметры конкретному модулю, используйте соответствующий префикс. Префиксы модулей:

Пример:

Допустим, имеются следующие переменные в глобальном окружении:

DB_SUPERUSER_PASSWORD="123456"
TNX_NC_DB_SUPERUSER_PASSWORD="cloud_pass"

Исходя из методов извлечения, переменная будет извлечена как пароль доступа к базе данных.

В этом случае для всех модулей, кроме TIONIX.NodeControl, пароль доступа к базе данных будет - 123456, а для модуля TIONIX.NodeControl пароль будет - cloud_pass.

Методы извлечения

Управление настройками продуктов TIONIX осуществляется следующими способами:

  1. Через переменные окружения операционной системы;
  2. Считывание существующих yaml файлов конфигурации модулей (будет произведено при указании аргумента утилиты --overwrite-configs);
  3. Передача в аргументы скрипта autosetup параметров;
  4. Через аргумент скрипта autosetup (параметр config_file), указав конфигурационный файл.

Порядок методов определяет извлечение переменной.

Каждый следующий перебивает значение извлеченное ранее, этим обеспечивается приоритет извлечения.

Настройка автоматической установки

Системные аргументы, передаваемые утилите

Аргументы управления поведением утилиты

Наименование Описание Значение по умолчанию
--config-file Файл конфигурации, содержащий параметры переменных. Описание использования представлено в подразделе «Использование конфигурационного файла».  
--generate-config-file Запуск опросника для формирования файла конфигурации с необходимыми для работы автоустановки переменными. Критичные переменные выделены красным цветом.  
--all-variables Запуск опросника в режиме запроса подтверждения значения для всех переменных. Если аргумент не указан, будут запрашиваться значения только для необходимых переменных.  
--packages

Перечень устанавливаемых пакетов, по умолчанию все доступные. Названия модулей указываются через пробел, например:

tnx_autosetup --packages TIONIX.NodeControl TIONIX.Dashboard

Доступные пакеты:

TIONIX.Dashboard
TIONIX.Monitor
TIONIX.NodeControl
TIONIX.Scheduler
TIONIX.VDIserver
 
--no-check-connection Пропуск проверки доступности используемых по указанным параметрам сервисов, необходимых для работы модулей TIONIX.  
--cloud-domain-policy При указании данного аргумента будет произведено конфигурирование OpenStack и модулей TIONIX для работы функций управления доменами. При использовании с параметром --delete настройки будут отменены. Подробная информация доступна по ссылке.  
--update Обновление установленных пакетов. False
--delete Удаление установленных пакетов и добавление постфикса .d в названиях конфигурационных файлов. False
--rollback При указании данного аргумента будет произведен откат окружения pip. False
--file-path При использовании с аргументом --rollback задает путь до файла, содержащего версии пакетов, до которых нужно произвести откат окружения pip.  
--force При использовании с параметром --delete позволяет, игнорируя ошибки подключения к сервисам, удалить дополнительно: все созданное в базе данных, конфигурационные файлы, установленные лицензии, каталог логов, пользователя RabbitMQ, виртуальные машины RabbitMQ.  
--verbose Включение подробного вывода. При указании данного аргумента будет установлен уровень логирования DEBUG. Подробное описание доступно в разделе Уровни логирования.  
--overwrite-configs При указании данного аргумента будет произведено обновление существующих конфигурационных yaml файлов.  
--incompatible-pkg При указании данного атрибута пользователю не будет предлагаться ввести подтверждение при отличных версиях устанавливаемых пакетов.  
--package-version

Версия устанавливаемых пакетов. Игнорируется при использовании аргументов --update и --delete. Примеры возможных значений:

  • 1.12.1.dev2 - Установка версии 1.12.1.dev2;
  • 1.12.1 - Установка последней доступной в рамках версии 1.12.1;
  • 1.12 - Установка последнего доступного патча для версии 1.12, например 1.12.2;
  • last - Установка последней доступной версии.
 
--source

Способ установки пакетов. Возможные значения:

  • pip;
  • apt-get.
pip
--use-ldap При указании данного аргумента при установке и обновлении модулей стандартный драйвер LDAP, используемый в Keystone, будет заменен в конфигурационных файлах доменов на обновленный драйвер TIONIX. При использовании этого аргумента при полном удалении модулей драйвер будет возвращен на стандартный.  

Аргументы, определяющие параметры устанавливаемых модулей

Наименование Описание Значение по умолчанию
--tnx-username Имя пользователя TIONIX. tionix
--log-level Переменная для уровня логирования. INFO
--os-auth-url Адрес для авторизации службы Keystone, значение параметра извлекается в переменную AUTH_URL. http://localhost:5000
--os-username Имя пользователя службы Keystone, значение параметра извлекается в переменную AUTH_USERNAME. admin
--os-password Пароль пользователя службы Keystone, значение параметра извлекается в переменную AUTH_PASSWORD, также может извлекаться в переменные DB_USER_PASSWORD, DB_SUPERUSER_PASSWORD и, тем самым, служить паролем пользователя к базе данных.  
--os-project-name, --OS_TENANT_NAME Наименование проекта OpenStack, значение параметра извлекается в переменную PROJECT_NAME. admin
--os-project-domain-name Доменное имя проекта OpenStack, значение параметра извлекается в переменную PROJECT_DOMAIN_NAME. default
--os-user-domain-name Доменное имя пользователя OpenStack, значение параметра извлекается в переменную USER_DOMAIN_NAME. default
--compute-service-name Тип службы Nova. compute
--volume-service-name Тип службы Cinder. volume
--ceilometer-service-name Тип службы Ceilometer. metering
--identity-service-name Тип службы Keystone. identity
--network-service-name Тип службы Neutron. network
--os-volume-api-version Версия REST API службы Cinder, значение параметра извлекается в переменную VOLUME_API_VERSION. 2
--os-network-api-version Версия REST API службы Neutron, значение параметра извлекается в переменную NETWORK_API_VERSION. 2
--db-superuser-name Суперпользователь базы данных. root
--db-username Пользователь базы данных. tionix
--db-engine Тип базы данных. mysql
--db-host Хост, на котором расположена база данных. controller
--db-port Порт подключения к базе данных. 3306
--broker-type Тип брокера службы RabbitMQ. AMQP
--rabbit-host Хост, на котором расположена служба RabbitMQ. controller
--rabbit-port Порт для подключения к службе RabbitMQ. 5672
--rabbit-username Имя пользователя RabbitMQ. tionix
--rabbit-password Пароль пользователя RabbitMQ. tionix
--rabbit-virthost Виртуальный хост RabbitMQ. tionix
--db-superuser-password Пароль к базе данных, значение параметра извлекается в переменную DB_SUPERUSER_PASSWORD.  
--db-user-password Пароль к базе данных, значение параметра извлекается в переменную DB_USER_PASSWORD.  
--db-allowed-hosts Список хостов, с которых разрешено подключение к базе данных. % - доступ разрешен для всех хостов. Наименования хостов указываются через запятую.
--pypi-host Адрес сервера pypi, используемый для установки пакетов. Значение берется в зависимости от установленной версии OpenStack.
--pip-args Дополнительные аргументы pip, необходимые при установке или обновлении модулей.  
--admin-domain-id Идентификатор домена пользователя с правами администратора.  
--domain-user Пользователь домена с правами администратора . admin
--memcache-location URL адрес для доступа к системе кэширования. localhost:11211
--nova-rabbit-vhost Виртуальный хост RabbitMQ службы Nova. /
--keystone-rabbit-vhost Виртуальный хост RabbitMQ службы Keystone. /
--sentry-enabled Параметр, отвечающий за логирование ошибок в Sentry. False
--sentry-dsn Адрес сервера Sentry, содержит ключ пользователя и идентификатор проекта. Уникальна для каждого модуля.
--sentry-log-level Уровень логирования Sentry. CRITICAL
--tnx-client-db-name Имя базы данных модуля TIONIX.Client. tionix
--tnx-client-service-name Имя службы модуля TIONIX.Client. tnx-journal
--tnx-client-service-port Порт службы модуля TIONIX.Client. 9360
--tnx-dash-db-name Имя базы данных модуля TIONIX.Dashboard. tionix_dashboard
--tnx-mon-db-name Имя базы данных модуля TIONIX.Monitor. tionix_monitor
--tnx-mon-service-name Имя службы модуля TIONIX.Monitor. tnx-monitor
--tnx-mon-service-port Порт службы модуля TIONIX.Monitor. 9363
--tnx-mon-zabbix-host-group Имя группы хостов, в которой по умолчанию будет осуществляться поиск шаблонов в Zabbix. tionix
--tnx-mon-zabbix-host Путь к сервису Zabbix. localhost
--tnx-mon-zabbix-password Пароль пользователя с правами администратора в Zabbix. zabbix
--tnx-mon-zabbix-username Имя пользователя с правами администратора в Zabbix. Admin
--tnx-nc-db-name Имя базы данных модуля TIONIX.NodeControl. tionix_node_control
--tnx-nc-service-name Имя службы модуля TIONIX.NodeControl. tnx-nc
--tnx-nc-service-port Порт службы модуля TIONIX.NodeControl. 9362
--tnx-sch-db-name Имя базы данных модуля TIONIX.Scheduler. tionix_scheduler
--tnx-sch-service-name Имя службы модуля TIONIX.Scheduler. tnx-scheduler
--tnx-sch-service-port Порт службы модуля TIONIX.Scheduler. 10001
--tnx-vdi-db-name Имя базы данных модуля TIONIX.VDIserver. tionix_vdi_server
--tnx-vdi-service-name Имя службы модуля TIONIX.VDIserver. tnx-vdi
--tnx-vdi-service-port Порт службы модуля TIONIX.VDIserver. 9364

Переменные окружения

Извлекаются по имени из системных переменных окружения. Используются только те, которые есть в перечне извлекаемых переменных. Если не указана переменная окружения LC_ALL, то она создается, значение для нее используется из переменной LANG.

Настройка автоматической установки при помощи скрипта

Использование консольной утилиты модуля

Переменные можно указать в параметрах скрипта, передавая их в следующем виде:

tnx_autosetup --os-auth-url "http://controller:5000" --os-username root
tnx_autosetup --help - выводит список по порядку всех доступных аргументов

Использование конфигурационного файла

Указывается через параметр скрипта config-file:

tnx_autosetup --config-file ~/adm

Пример конфигурационного файла:

export OS_AUTH_URL="http://controller:5000"
export OS_USERNAME=root

Также имеется возможность инициализировать переменные, используя существующие yaml файлы модулей. Для этого необходимо указать аргумент --overwrite-configs:

tnx_autosetup --overwrite-configs

Использование консольной утилиты и аргументы pip

Указываются через параметр скрипта pip-args.

Пример:

tnx_autosetup --pip-args="--no-deps"
tnx_autosetup --pip-args="--pre --no-deps"

Установка модулей без доступа к сети интернет:

tnx_autosetup --pip-args="--no-index --find-links ./packages"

где packages - директория с пакетами и их зависимостями.