To złowrogo brzmiące wyrażenie spełnia ważną rolę w momencie gdy twoja infrastruktura IT jest bardzo rozległa. Rozszerzenie sekcji tasks o async oraz poll zapewnia swego rodzaju timer przy wykonaniu scenariusza. Pierwszy parametr definiuje całkowity czas przewidziany na wykonanie instalacji, drugi zaś przyjmuje próbkowanie co określony czas.
Praktyczne zastosowanie Asynchronous Polling w Ansible
Tak jak wspomniałem we wstępie, możesz użyć tych parametrów do zaplanowania czasu potrzebnego na wykonanie scenariusza. Oczywiście można rozpocząć wykonywanie bez tych parametrów, ale dzięki nim możliwe będzie wcześniejsze zakończenie akcji gdyby coś poszło nie tak lub skrypt wykona się wcześniej. W tym przykładzie instalacja musi zostać wykonana w 300s z próbkowaniem (czyli sprawdzaniem czy tak się stało) co 3s.
Poniżej przykład sekcji tasks rozbudowanej o w/w parametry. Myślę, że ten fragment kodu jest na tyle jasny, że możesz spróbować we własnym zakresie stworzyć prosty playbook.
1 2 3 4 5 |
tasks: - name: Install HTTPD action: yum name=httpd state=installed async: 300 poll: 3 |
Podsumowanie
Ansible pozwala również ograniczyć czas, potrzebny do wykonania playbook’a przy pomocy tylko dwóch krótkich poleceń. To tyle w tym krótkim wpisie, w następnym zajmiesz się sekcją handlers.
Dziękuję Ci, za poświęcony czas na przeczytanie tego artykułu. Jeśli był on dla Ciebie przydatny, to gorąco zachęcam Cię do zapisania się na mój newsletter, jeżeli jeszcze Cię tam nie ma. Proszę Cię także o “polubienie” mojego bloga na Facebooku oraz kanału na YouTube – pomoże mi to dotrzeć do nowych odbiorców. Raz w tygodniu (niedziela punkt 17.00) otrzymasz powiadomienia o nowych artykułach / projektach zanim staną się publiczne. Możesz również pozostawić całkowicie anonimowy pomysł na wpis/nagranie.
Link do formularza tutaj: https://beitadmin.pl/pomysly
Pozostaw również komentarz lub napisz do mnie wiadomość odpisuję na każdą, jeżeli Masz jakieś pytania:).