Для определения роли сервера необходимо добавить его FQDN в соответствующую секцию в шаблоне файла hosts.yml. После назначения роли серверу при установке будут выполнены команды Ansible. В файл hosts.yml вносятся только полностью определенные имена доменов (FQDN).
Преднастроенный файл hosts.yml содержит примеры заполнения в следующем формате: co-etcd-1.installation.example.net:
где:
–co-etcd-1 — имя сервера для подгруппы co-etcd;
–installation.example.net — имя домена установки.
Запись в файле hosts.yml при использовании группы серверов отличается записью имени сервера: co-etcd-[1:3].installation.example.net
где: co-etcd-[1:3] — группа серверов co-etcd.
В кластерной конфигурации используется один или несколько серверов для одной роли.
Пример заполнения файла hosts.yml для кластерной конфигурации:
all:
children:
co:
children: # Перечень групп
co_audit: # Подгруппа co_audit
hosts:
co-audit-[1:2].installation.example.net: # FQDN сервера
co_chatbot:
hosts:
co-chatbot-1.installation.example.net:
co_etcd:
hosts:
co-etcd-[1:3].installation.example.net:
В конфигурации standalone для всех ролей используется один и тот же сервер.
Пример заполнения файла hosts.yml для конфигурации standalone:
all:
children:
co:
children:
co_audit:
hosts:
co-infra-1.installation.example.net:
co_etcd:
hosts:
co-infra-1.installation.example.net:
Объединение ролей может применяться в кластерной установке, если ресурсы организации ограничены. Подробнее о выделении ресурсов для установки см. в разделе Архитектура.
Порядок заполнения файла hosts.yml зависит от выбранной архитектуры устанавливаемой системы и настроек DNS-записей.