Перейти к основному содержимому

Инвентарь

Список инвентарей

Инвентарь — это файл, содержащий список хостов, на которых Ansible будет выполнять plays. Инвентарь также хранит переменные, которые могут использоваться в playbook. Инвентарь может храниться в формате YAML, JSON или TOML. Подробнее об инвентарях можно прочитать в документации Ansible.

Semaphore UI может читать инвентарь либо из файла на сервере, к которому у пользователя Semaphore есть доступ на чтение, либо использовать статический инвентарь, редактируемый через веб-интерфейс. К каждому инвентарю также привязаны как минимум одни учётные данные. Учётные данные пользователя обязательны — именно их Ansible использует для входа на хосты этого инвентаря. Учётные данные sudo используются для повышения привилегий на хосте. Для создания инвентаря необходимо иметь в хранилище ключей учётные данные пользователя — либо имя пользователя с паролем, либо настроенный SSH. Информацию об учётных данных можно найти в разделе Хранилище ключей этого сайта.

Типы инвентарей​

ТипОписание
staticИнвентарь в формате INI, редактируемый в веб-интерфейсе.
static-yamlИнвентарь в формате YAML, редактируемый в веб-интерфейсе. Используйте его для инвентарей на основе плагинов, например NetBox или Consul.
fileПуть к файлу инвентаря. Относительный путь указывает внутрь репозитория шаблона, абсолютный — на файл на сервере. При необходимости выберите отдельный репозиторий инвентаря, если файл находится в другом Git-репозитории.
terraform-workspace, tofu-workspace, terragrunt-workspaceНе инвентарь Ansible: рабочее пространство для шаблонов Terraform/OpenTofu и Terragrunt.

Создание инвентаря​

  1. Откройте вкладку Key Store и убедитесь, что у вас есть ключ типа login_password или ssh
  2. Откройте вкладку Inventory и нажмите New Inventory
  3. Задайте имя инвентаря и выберите в выпадающем списке нужные учётные данные пользователя. При необходимости выберите нужные учётные данные sudo
  4. Выберите тип инвентаря
  • Если вы выбрали file, укажите абсолютный путь к файлу. Если файл находится в вашем git-репозитории, используйте относительный путь, например inventory/linux-hosts.yaml
  • Если вы выбрали static или static-yaml, вставьте или введите инвентарь в форму
  1. Нажмите Create.

Изменение инвентаря​

  1. Откройте вкладку Inventory
  2. Нажмите значок карандаша рядом с инвентарём, который хотите изменить
  3. Внесите изменения
  4. Нажмите Save

Удаление инвентаря​

Прежде чем удалить инвентарь, необходимо удалить все связанные с ним ресурсы. Если вы не уверены, какие ресурсы используются в окружении, выполните шаги 1 и 2 ниже. Вам будет показано, какие ресурсы используются, со ссылками на них.

  1. Откройте вкладку Inventory
  2. Нажмите значок корзины рядом с инвентарём
  3. Нажмите Yes, если вы уверены, что хотите удалить инвентарь