Назад | Перейти на главную страницу

Ansible - Исключение: хост не найден: {{item}}

У меня есть задача, которую я хочу delegate_to некоторые хосты (наконец, я хочу перечислить их в некотором var, а не использовать группу из инвентаря). Для этого вопроса давайте упростим его до (я сделал то же самое, надеясь, что это поможет мне определить, где проблема):

- name Foo
  tamplate:
    dest=/path/to/file
    src=template.j2
  delegate_to: "{{ item }}"
  with_items:
    - some.host.in.my.domain

Это вызывает исключение:

Exception: host not found: {{ item }}

Есть идеи, почему это не работает? Дайте мне знать, если вам понадобятся подробности. Заранее благодарю за помощь.

Это что-то вроде ошибка в анзибле 1.8.2. Я столкнулся с такой же проблемой в другом месте, которое работало до того, как я сделал обновление.

Предполагая, что хост delegate_to может быть указан с помощью значения with_items - и я не понимаю, почему это не сработает - проблема в том, что вы не можете делегировать несуществующий хост.

Однако не все потеряно; Хитрость здесь в том, чтобы динамически добавлять хосты перед делегированием им. Попробуйте использовать add_host действие для добавления хостов в анзибл. Затем вы сможете делегировать им полномочия.