Ansible: Jak odświeżyć ekwipunek hosta w czasie wykonywania i dodać pauzę podczas wykonywania Playbooka?

Opublikowany: 2022-02-14

Jak odświeżyć ekwipunek hosta w czasie wykonywania i dodać pauzę podczas wykonywania podręcznika?

Na Crunchify opublikowaliśmy tak wiele samouczków na temat Ansible, a ten skupi się na tym, jak odświeżyć How to Refresh Host Inventory w czasie wykonywania i Add a Pause podczas wykonywania zadań.

Rozważmy następujący prosty scenariusz tworzenia maszyn wirtualnych Amazon EC2:

  • Używasz skryptu Amazon EC2 Ansible, który tworzy maszynę wirtualną i dynamicznie przechwytujesz publiczne adresy IP w skrypcie.
  • Podczas wykonywania – dodajesz publiczny adres IP tej maszyny wirtualnej do pliku hosts w grupie [crunchify] .
  • W kolejnym zadaniu użyj nowo dodanego publicznego adresu IP, który został dodany do pliku hosts i zainstaluj na nim Javę.
  • Jeśli nie użyjesz refresh_inventory , nie pobierze on nowo dodanego adresu IP i zobaczysz błąd taki sam, jak poniżej.

Dodatkowo, czy masz któreś z poniższych pytań?

  • Jak przeładować dynamic inventory Ansible
  • Ansible dynamiczne kroki odświeżania inwentarza
  • Czy mogę zaktualizować inwentarz hostów i używać nowych hostów w same playbook ?
  • Ansible Dynamic Inventory nie otrzymuje najnowszych informacji EC2 – dlaczego?

Zacznijmy:

Krok 1

Całkowicie postępuj zgodnie z samouczkiem, jak spawn Amazon EC2 VM instance remotely using Ansible ?

Jak stworzyć, uruchomić i skonfigurować instancję Amazon EC2 za pomocą prostego skryptu Ansible? (odradza się zdalnie)

Krok 2

Poszukaj poniższego zadania w pliku crunchify-ec2.yml .

Jak widać, po utworzeniu Amazon EC2 VM przechwytujemy publiczny adres IP VM i zapisujemy go w pliku hosts

Jeśli masz dodatkowe zadania w tym samym .yml file adresy IP nie będą ładowane automatycznie. Wystarczy dodać poniższy wiersz do swojego podręcznika Ansible Playbook, a automatycznie odświeży on całą listę ekwipunku.

W ten sam sposób, jeśli chcesz dodać czekaj, dodaj poniższą linię:

Powyższy tag wprowadzi minutowe oczekiwanie do twojego podręcznika gry Ansible.

Zaktualizowany podręcznik Ansible Playbook dla Amazon EC2 z Wait i Meta Refresh

Zaktualizowany podręcznik Ansible Playbook dla Amazon EC2 z Wait i Meta Refresh — porady Crunchify

Oto mój przykładowy test Ansible Playbook:

Nazwa pliku: crunchify-refresh-hostfile-pause-1min.yml

Wyjście:

Po prostu uruchom ponownie swój podręcznik Ansible Playbook, a zobaczysz pomyślny wynik, jak poniżej.

Otóż ​​to. Gratulacje. Pomyślnie uruchomiłeś Ansible Playbook.

Jeśli szukasz wszystkich samouczków Ansible, odwiedź stronę Ansible Archive.