целом при использовании любого inventory) отлавливать fatal: UNREACHABLE или FAILED и совершать действие на локальном хосте, например добавлять хост в исключение или дергать внешний скрипт?
Unreachable - я добавил бы в начале бука таску wait_for или даже какой-то bash-скрипт с собственной логикой, который исполнялся бы локально и на зафейленные хосты отвечал exit 1, а дальше ловил бы when: availability_check.failed Failed - регистрировал бы результат выполнения тасок и ловил дальше аналогично when: task_result.failed Ещё ансибл умеет сохранять retry-файлы, в которых держит как раз список зафейленного - можно посмотреть в него Ещё можно свой модуль/плагин написать, который будет всё это ловить Ну или ansible-playbook ... | grep ..., если это надо сделать быстро и один раз, но я этого не говорил :)
Обсуждают сегодня