Как создать базовую роль Ansible локально?

Роли Ansible для общей разумной базовой конфигурации для всех машин. Должен поддерживать RHEL/Debian/SuSE/Solaris/HPUX/Ubuntu Linux.

Базовая конфигурация хоста должна выполнять следующие задачи:

  • ntp — настроить параметры NTP на основе общей конфигурации
  • ssh — настроить безопасность SSH, сервис, параметры ключа
  • Package Yum / repo — настройте собственный диспетчер пакетов операционной системы для работы с внутренними ресурсами HPE и/или внешними ресурсами (например, ftp.debian.org).

Я новичок в создании ролей Ansible. Я еще ничего не пробовал, ищу руководство.

- name: restart ntp
  service:
    name: ntp
    state: restarted
- name: restart sshd
  service:
    name: sshd
    state: restarted

person Community    schedule 22.05.2019    source источник
comment
В документации по ansibles довольно хорошо описано, как написать роль. galaxy.ansible.com/docs/finding/   -  person Toerktumlare    schedule 22.05.2019
comment
Добро пожаловать в StackOverflow! Если у вас есть вопросы, см. раздел Как создать минимальный, полный и проверяемый пример.   -  person Vladimir Botka    schedule 22.05.2019
comment
Спасибо Владимир   -  person    schedule 22.05.2019
comment
@Keith: StackOverflow довольно специфичен в том, как комментировать. При всем уважении, пожалуйста, загляните в Справочный центр: не добавляйте комментарий к своему вопросу или ответу, чтобы сказать "Спасибо". .   -  person Vladimir Botka    schedule 22.05.2019


Ответы (1)


Чтобы создать свою собственную роль, начните с

$ ansible-galaxy init test

Это «создает каркас роли, соответствующий формату метаданных галактики».

> tree test
test
├── defaults
│   └── main.yml
├── files
├── handlers
│   └── main.yml
├── meta
│   └── main.yml
├── README.md
├── tasks
│   └── main.yml
├── templates
├── tests
│   ├── inventory
│   └── test.yml
└── vars
    └── main.yml

Подробнее см. в разделе Роли.

В Ansible Galaxy есть много общих ролей, которые вы можете найти в браузере или с помощью команды линия. Например роли с тегами: Solaris, sshd будут перечислены командой

$ ansible-galaxy search --galaxy-tags solaris,sshd

и установлен локально

$ ansible-galaxy install <ROLE NAME>
person Vladimir Botka    schedule 22.05.2019