В конфигурации SSH вы можете использовать следующий формат для перечисления нескольких псевдонимов, которые указывают один и тот же хост:
Host DEV-USA-BGW100 dev-usa-bgw100 USA100 usa100
HostName 192.168.1.100
User ansible
Host DEV-CAN-BGW101 dev-can-bgw101 CAN101 can101
HostName 192.168.2.101
User ansible
Host DEV-CAN-BGW102 dev-can-bgw102 CAN102 can102
HostName 192.168.2.102
User ansible
Я хотел бы сделать то же самое в анзибль, но я не уверен, возможно ли это. Причина в том, что иногда я хочу протестировать одну команду на одном хосте, не вводя дословно полное имя хоста.
Я искал, но не смог найти ответа. Я нашел страницу, на которой написано, что по умолчанию анзибль будет использовать OpenSSH на сервере и, следовательно, должен прочитать файл конфигурации SSH. Я тестировал это, но это не сработало.
Определите файл инвентаризации или сценарий, который возвращает полные имена хостов. затем использовать шаблоны.
ansible '*can*101*' -m ping
Или вы можете иметь группы групп в инвентаре достаточно глубоко, где имя группы является псевдонимом для 1 или 2 устройств.
Определение одного и того же хоста под разными именами в инвентаре может привести к тому, что задачи будут выполняться дважды на одном и том же устройстве.
Конфигурация SSH - это отдельная вещь, о которой Ansible не знает.