Делегат ansible playbook третьим хозяевам - PullRequest
0 голосов
/ 07 февраля 2020

У меня есть книга воспроизведения, которая копирует дистрибутивы в Jumphosts и подготавливает файлы конфигурации для развертывания на удаленных серверах. enter image description here

Вопрос: import_playbook нельзя использовать с delegate_to. Как запустить playbook на Jumphost с созданными хостами и playbook из дистрибутивов?

Обновление: я не могу контролировать Jumphost и не могу использовать пересылку s sh.

1 Ответ

0 голосов
/ 11 февраля 2020

Q: «Как запустить playbook на« Jumphost »с созданными хостами и playbook из дистрибутивов?»

A: Возможно создание динамических c Инвентаризационные группы с модулем add_host. Например, предположим, что мы хотим развернуть все хосты intr anet с диско Ubuntu.

Создать инвентарь

$ cat hosts
Host1 ansible_host=10.11.0.3
Host2 ansible_host=10.11.0.4
Host3 ansible_host=10.11.0.5
Host4 ansible_host=10.11.0.6

Создать книгу воспроизведения для развертывания хостов в группе my_ubuntu_disco_group

$ cat deploy-Ubuntu-disco.yaml
- hosts: my_ubuntu_disco_group
  tasks:
    - debug:
        var: inventory_hostname

Запустите книгу воспроизведения, которая создает динамическую группу c и импортирует игру.

- hosts: all
  tasks:
    - add_host:
        name: "{{ item }}"
        groups: my_ubuntu_disco
      loop: "{{ groups.all }}"
      when:
        - hostvars[item].ansible_distribution == 'Ubuntu'
        - hostvars[item].ansible_distribution_release == 'disco'
      run_once: true

- import_playbook: deploy-Ubuntu-disco.yaml
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...