Файл инвентаря может включать следующие блоки:
all
kuma
kuma_k0s
Для каждого хоста должен быть указан FQDN в формате <имя хоста
>.<домен
> или IP-адрес в формате ipv4 или ipv6. Имя домена Ядра KUMA и его поддомены не должно начинаться с цифры.
Пример: hosts: hostname.example.com: ip: 0.0.0.0 или ip: ::%eth0 |
Блок all
В этом блоке указываются переменные, которые распространяются на все хосты, указанные в инвентаре, включая неявно заданный localhost, на котором запущена установка. Переменные можно переопределять на уровне групп хостов или даже отдельных хостов.
Пример переопределения переменных в файле инвентаря
В следующей таблице приведен список возможных переменных в разделе vars и их описание.
Список возможных переменных в разделе vars
Переменная |
Описание |
Возможные значения |
---|---|---|
|
Cпособ подключения к целевым машинам. |
|
|
Имя пользователя, от которого производится подключение к целевым машинам и установка компонентов. |
Если пользователь root на целевых машинах заблокирован, нужно использовать имя пользователя, имеющего право на подключение по SSH и повышение привилегий через su или sudo. |
|
Признак необходимости повышения привилегий пользователя, от имени которого осуществляется установка компонентов KUMA. |
|
|
Способ повышения привилегий пользователя, от имени которого осуществляется установка компонентов KUMA . |
|
|
Путь к закрытому ключу в формате /<путь>/.ssh/id_rsa. Эту переменную необходимо задать, если требуется указать файл ключа, отличный от используемого по умолчанию: ~/.ssh/id_rsa. |
|
|
Признак разворачивания компонент KUMA в кластере Kubernetes. |
|
|
Признак перемещения компонент KUMA в кластере Kubernetes. |
|
|
Признак выполнения установщиком шагов по настройке файрвола на хостах. |
Если параметр не указан в шаблоне, установщик выполняет шаги по настройке файрвола на хостах. |
|
Признак регистрации машин в DNS-зоне вашей организации. В этом случае установщик автоматически дополнит файлы /etc/hosts на машинах, куда устанавливаются компоненты KUMA, IP-адресами машин из файла инвентаря. Указанные IP-адреса должны быть уникальными. |
|
|
Признак создания предустановленных сервисов при установке. |
|
|
Признак установки KUMA в окружениях с ограниченными вычислительными ресурсами. |
По умолчанию переменная отсутствует в шаблоне файла инвентаря. При необходимости вы можете указать переменную |
Блок kuma
В этом блоке перечисляются параметры компонентов KUMA, развернутых вне кластера Kubernetes.
В блоке доступны следующие разделы:
vars
–
в этом разделе можно указать переменные, которые распространяются на все хосты, указанные в блоке kuma
. children
– в этом разделе можно перечислить группы параметров компонентов:kuma_core
– параметры Ядра KUMA. Может содержать только один хост.kuma_collector
– параметры коллекторов KUMA. Может содержать несколько хостов.kuma_correlator
– параметры корреляторов KUMA. Может содержать несколько хостов.kuma_storage
– параметры узлов хранилища KUMA. Может содержать несколько хостов.Блок kuma_k0s
В этом блоке задаются параметры кластера Kubernetes, использование которого обеспечивает отказоустойчивость KUMA. Этот блок есть только в файле инвентаря на основе шаблона k0s.inventory.yml.template.
Для тестовой и демонстрационной установки в окружениях с ограниченными вычислительными ресурсами необходимо задать переменную low_resources: true
на уровне блока all
. В этом случае размер тома core
будет снижен до 4 ГБ, и ограничения для других вычислительных ресурсов не будут заданы.
Для каждого хоста в этом блоке должен быть указан его уникальный FQDN и IP-адрес в параметре ansible_host, кроме хоста в разделе kuma_lb – для него должен быть указан FQDN. Хосты в группах не должны повторяться.
Для демонстрационной установки допустимо совместить контроллер с рабочим узлом. Такая конфигурация не обеспечивает отказоустойчивости Ядра и служит для демонстрации возможностей или проверки программной среды.
Минимальная конфигурация для обеспечения отказоустойчивости - 3 выделенных контроллера, 2 рабочих узла и 1 балансировщик нагрузки. Для промышленной эксплуатации рекомендуется использовать выделенные рабочие узлы и контроллеры. Если контроллер кластера находится под рабочей нагрузкой и под (англ. pod) с Ядром KUMA размещается на контроллере, отключение контроллера приведет к полной потере доступа к Ядру.
В блоке доступны следующие разделы:
vars
– в этом разделе можно указать переменные, которые распространяются на все хосты, указанные в блоке kuma
.сhildren
– в этом разделе задаются параметры кластера Kubernetes, использование которого обеспечивает отказоустойчивость KUMA.В таблице ниже приведен список возможных переменных в разделе vars
и их описание.
Список возможных переменных в разделе vars
Группа переменных |
Описание |
|
---|---|---|
|
FQDN балансировщика нагрузки. Балансировщик пользователь устанавливает самостоятельно. Если внутри группы указать параметр |
|
|
Хост, выполняющий роль выделенного главного контроллера кластера. |
Группы для указания главного контроллера. Хост необходимо задать только в одной из них. |
|
Хост, совмещающий роль главного контроллера и рабочего узла кластера.Для каждого контроллера кластера, совмещенного с рабочим узлом, в файле инвентаря должен быть указан параметр |
|
|
Хосты, выполняющие роль выделенного контроллера кластера. |
Группы для указания второстепенных контроллеров. |
|
Хосты, совмещающие роль контроллера и рабочего узла кластера. Для каждого контроллера кластера, совмещенного с рабочим узлом, в файле инвентаря должен быть указан параметр |
|
|
Рабочие узлы кластера. Для каждого рабочего узла в файле инвентаря должен быть указан параметр |