Примеры определения ролей
Для определения роли сервера необходимо добавить его доменное имя или IP-адрес в соответствующую секцию в шаблоне файла inventory. После назначения роли серверу при установке будут выполнены команды Ansible.
Домен host.example.com (указан для примера) должен резолвится в IP-адрес на сервере с ролью operator и на всех серверах кластера.
Пример. Для назначения группы ролей pythagoras серверу с доменным именем host.example.com необходимо указать следующие значения:
pythagoras:
hosts:
host1.example.com:
При совмещении всех ролей на одном сервере в шаблоне файла inventory дублируется секция hosts. При изменении конфигурации установки возможно добавление или удаление серверов в группах.
В режиме кластерной установки в файле inventory указывается несколько IP-адресов или доменных имен серверов в соответствующей группе.
Пример (фрагмент шаблона ~/install_pgs/contrib/pgs/standalone/hosts.yml). Все роли и группы ролей устанавливаются на один сервер по адресу host.example.com:
all:
children:
pgs:
children:
pythagoras:
hosts:
host.example.com:
keycloak:
hosts:
host.example.com:
arangodb:
hosts:
host.example.com:
volume_device_arangodb: False
volume_device_arangodb_path: "/dev/disk/by-uuid/<UUID>"
Текущей версией ПО поддерживается кластеризация для сервисов, перечисленных в таблице. В таблице указано минимально необходимое количество серверов для работы кластера. В зависимости от инфраструктуры и типа установки количество серверов может быть изменено.
| Наименование сервиса | Группа | Количество серверов |
|---|---|---|
| Aristoteles Dionis Epicure Euclid Heraclitus Pheidippides Restrictions Sisyphusworker | Pythagoras | 2 |
| Subscriptions User_listener | Pythagoras | 1 |
| Keycloak | Keycloak | 2 |
| ArangoDB | ArangoDB | 2(1) |
| ArangoDB | Arangodb_agent | 3(1) |
| Elasticsearch | Search | 3 |
| Sisyphussearch | Search | 3 |
| Redis | Redis | 3 |
| RabbitMQ | RabbitMQ | 3 |
| Etcd | Etcd | 3 |
| Nginx | Nginx | 2 |
| Postgres | Postgres | 2 |
| Docker Registry | Infrastructure | 1 |
| Syslog-ng | Infrastructure | 1 |
| Monitoring | Infrastructure | 1 |
| Storage | Storage | 3 |