Chcete-li provést automatizovaný úkol na vzdáleném hostiteli pomocí Ansible, je nutné vyplnit a pracovat s určitými proměnnými, jak lze očekávat. Například tento typ úkolu je nezbytný pro online připojení vzdáleného hostitele, povolení přihlašovacích a uživatelských oprávnění a nastavení prostředí Pythonu.
Je možné SSH do vzdáleného hostitele a zkontrolovat, zda hostitel splňuje všechna kritéria. Jako automatizační nástroj však Ansible poskytuje moduly, které vám umožňují provádět tyto zdlouhavé, časově náročné úkoly v jediném řádku příkazů.
Tento kurz ukazuje, jak používat integrovaný ping modul Ansible k provádění různých nastavených proměnných na vzdálených hostitelích. Ansible ping request je jednoduchý, ale užitečný nástroj, který můžete použít k testování dostupnosti a praktičnosti vzdálených hostitelů.
Nyní se blíže podíváme na to, jak funguje pant Ansible.
POZNÁMKA: Tato část je poněkud teoretická. Pokud potřebujete pouze technickou část článku, můžete tuto část přeskočit. Přesto doporučujeme přečíst si tuto část, protože poskytuje užitečné informace a informace o modulu ping.
Když si to povšimneme, nyní přejdeme k zavedení modulu ping.
O modulu Ansible ping
Žádost o možný ping zkontroluje vzdáleného hostitele. Tento modul konkrétně kontroluje:
- Zda je vzdálený hostitel zapnutý a přístupný.
- Zda prostředí Pythonu dokáže úspěšně spustit požadované příručky.
- Přihlášení uživatele a oprávnění.
Po odeslání požadavku ping na vzdáleného hostitele modul vrátí hodnotu označující, zda byl ping úspěšný. Ve výchozím nastavení vrátí modul ping řetězec 'pong' při úspěchu a výjimku při selhání (je-li zadána).
PROFESIONÁLNÍ TIP: Abyste zajistili, že vaše scénáře Ansible na cílových vzdálených hostitelích nezlyhají, použijte modul ping ke kontrole, zda jsou splněny požadavky, a úkoly proveďte pouze v případě, že je získán úspěšný výstup.
Vlastnosti modulu Aning ping
Modul ping je poměrně jednoduchý a následuje seznam funkcí poskytovaných tímto modulem:
- Není ICMP ping; spíše je to malý modul, který vyžaduje platné prostředí Pythonu na vzdálených hostitelích.
- Vzdálení hostitelé Windows by místo toho měli používat modul win_ping.
- Poskytuje modul net_ping pro síťová zařízení.
- Přijímá pouze jeden parametr ke zvýšení výjimky.
- Ve výchozím nastavení se používá při volání příkazu ansible v adresáři / usr / bin / ansible k ověření přihlašovacích oprávnění a platného prostředí Pythonu.
- Vrátí řetězec „pong“ při úspěchu.
Jak používat modul ping Ansible
Nyní se podíváme na několik příkladů, které používají modul ping Ansible.
Pomocí příkazu ping služby AD HOC
Nejjednodušší způsob spuštění modulu Ansible ping je spuštění jednoduchého příkazu AD HOC v terminálu.
Příkaz AD HOC je následující:
ansible all -m ping -vVýše uvedený příkaz začíná voláním Ansible, následovaným konkrétním vzorem hostitele. V tomto případě chceme provést ping na „všechny“ hostitele. Další část, -m, určuje modul, který chceme použít. Znak -v znamená verbose.
Při úspěchu získáte výstup podobný tomuto:
Pomocí / etc / ansible / ansible.cfg jako konfigurační soubor 35.222.210.12| ÚSPĚCH =>
"ansible_facts":
"objevil_interpreter_python": "/ usr / bin / python",
"changed": false,
"ping": "pong"
Pokud jsou vzdálení hostitelé nedostupní (možná jsou offline), získáte výstup podobný tomuto:
Pomocí / etc / ansible / ansible.cfg jako konfigurační soubor 35.222.210.12| NEDOSTATEČNÝ! =>
"changed": false,
"msg": "Nepodařilo se připojit k hostiteli pomocí ssh: ssh: připojit k hostiteli 35.222.210.12 port 22: Vypršel časový limit připojení ",
"unreachable": true
Používání modulu ping v příručkách
Můžete také použít modul ping uvnitř playbooku. Ve většině případů nebudete vytvářet playbook, který provede pouze požadavek ping. Všechny úkoly však můžete zabalit do podmínek požadavku ping.
Zvažte následující jednoduchý scénář:
- hostitelé: všichnistát se: ano
úkoly:
- ping
Můžete si všimnout, že do výše uvedené příručky jsem zahrnul směrnici „stát se“. To není požadavek, ale narazil jsem na případy, kdy modul ping selže pro standardního uživatele. Nyní můžete spustit příručku a zkontrolovat, zda hostitelský server splňuje požadavky na úspěšnou odpověď typu „pong“.
ansible-playbook ping.ymlPokud je ping neúspěšný, zobrazí se následující chyba „nedostupnosti“:
fatální: [35.222.210.12]: NEDOSTATEČNÝ! => "changed": false, "msg": "Nepodařilo se připojit k hostiteli pomocí ssh: ssh: připojit k hostiteli 35.222.210.12 port 22: Vypršel časový limit připojení "," nedosažitelný ": truePoužití výjimky zvýšení s ping modulem
Můžete také určit data jako selhání a vyvolat tak výjimku. Tím se změní výchozí návrat z „pongu“ na „pád.''
Zvažte následující příručku:
- hostitelé: všichnistát se: ano
úkoly:
- ping:
pád: data
Spuštění playbooku s výjimkou by mělo vrátit následující hodnotu:
ansible-playbook ping_except.yml
Závěr
Tento výukový program vám ukázal různorodou užitečnost modulu ping. Ačkoli tento modul neobsahuje složité parametry jako většina modulů Ansible, stále obsahuje výkonné funkce. Například můžete pomocí modulu ping zkontrolovat, zda je chyba způsobena chybějícím prostředím Pythonu, a vytvořit úlohu pro instalaci požadovaného prostředí na vzdáleného hostitele.