W tym artykule dowiemy się o jednym z ważnych zadań Ansible, którym jest zadanie „ponownego”, które wymienimy w podręczniku, aby wykonywać polecenia. Dowiemy się, jak działa zadanie ponowne.
Retry to zadanie użyteczne do wielokrotnego wykonywania problematycznych podręczników. Terminal wyjściowy Ansible pokaże błędy w tej awarii. Z tego powodu czasami trudno jest zrozumieć te problemy, gdy próbujemy je naprawić za pomocą ansible. Jednak Ansible zapewnia opcję „ponownego”, która pozwala nam wykonywać polecenie więcej niż raz.
Weź scenariusz, gdy mamy zadanie w naszym podręczniku z „wszystkich” hostów, niektórzy gospodarze są ukierunkowani z powodu pewnych warunków zadań ich wykonania podczas pierwszej próby po wykonaniu podręcznika. Czasami jednak pozostali gospodarze odniosą sukces podczas drugiej próby zadania. Teraz istnieją różne metody, w których możemy spróbować rozwiązać ten problem, ale czasami możemy nie mieć czasu ani kontroli systemu, aby to osiągnąć.
Ponowne ponowne zadanie w tej sytuacji może być najprostszym i najskuteczniejszym sposobem działania. Podręcznik zostanie następnie ponownie wykonany w stanie awarii biegu i domyślnie będzie próbował, dopóki nie wygeneruje pożądanego wyniku lub przestanie błędów zgłaszania. Nie możemy twierdzić, że opcja ponownej ponownej awary. Zatem nie jesteśmy w stanie użyć ponownego użycia procesu do zadań, dla których nie mamy możliwości przewidywania ani oszacowania, jak długo będą. Dlatego nie może to być substytutem standardowej pętli. Jednak pozwala to uniknąć poważnego problemu nieskończonej pętli, wyznaczając czas pracy po z góry określonej liczbie prób.
Wymagania wstępne zadań ponownych w Ansible
Praktyczne przykłady ansible są podane w tej sesji. Zakładamy, że zawsze miałeś następujące warunki wstępne, jeśli zamierzasz śledzić podczas korzystania z opcji ponownej próby:
Przejrzyjmy po prostu pomysł opcji ponownej próby i sprawdź, w jaki sposób Ansible wdraża go, używając przykładu.
Przykład: ponowne ponowne zadania 5 razy w Ansible Playbooks
Przed wdrożeniem przykładu dokładne zrozumienie różnych zadań zawartych w narzędziu konfiguracyjnym Ansible jest wymogiem dla każdego aspirującego dostawcy ANSable Master lub Sitodeled, na przykład kontrolera Ansible, aby wprowadzić zmiany w zdalnym urządzeniu hosta. Weźmy scenariusz, w którym staramy się wdrożyć opcję ponownego. Oto przykład w Ansible, który zamierzamy zaimplementować, aby wiele razy wykonywać zadania podręcznika.
Aby rozpocząć wdrażanie poleceń, najpierw będziemy musieli zrobić podręcznik za pomocą narzędzia Ansible. Poniżej znajduje się stwierdzenie, które uruchomimy, aby utworzyć podręcznik w Ansible.
[root@master ansible]# nano ponowne.ymlPo napisaniu powyższego polecenia ponowne.Playbook YML zostanie utworzony i otwarty na nowy terminal Ansible. W podręczniku zawsze definiujemy implementację, którą zamierzamy zaimplementować w parametrze „Nazwa”. Następnie wykorzystamy parametr „hostów”, abyśmy mogli podać adres IP lub powiązane informacje zdalnego hosta. W tym przykładzie użyjemy „LocalHost” jako docelowego serwera zdalnego.
Korzystając z komponentu „Zebranie faktów”, zbierzemy informacje o ukierunkowanym lokalnym hoście. Dane te są powszechnie opisywane jako „fakty” lub „parametry” w oprogramowaniu Ansible. Korzystając z konkretnego polecenia „konfiguracja” w oprogramowaniu Ansible, możemy zebrać informacje o LocalHost. Jednak Ansible Playbooks na ogół nazywają ten parametr konfiguracji domyślnie, aby osiągnąć parametr faktów gromadzących. Zapewnimy wartość „true”, albo „fałsz” w celu zebrania danych lokalnego hosta. Jak pokazano poniżej w podręczniku, nie chcemy uzyskać docelowych informacji o lokalizacji, dlatego dostarczyliśmy „fałszywą” wartość parametru Gather_Fact.
Po ogłoszeniu parametrów, które będą wymagane do skonfigurowania lokalnego urządzenia hosta, wymienimy zadania w podręczniku, które chcemy zaimplementować na lokalnym komputerze hosta. Na liście zadań najpierw podamy nazwę zadania, które zamierzamy wykonać, to znaczy sprawdzić, czy ważność pliku jest obecna lub nie na komputerze LocalHost. Używamy parametru powłoki ansible, który wykonuje polecenia powłoki na urządzeniu LocalHost.
W ansible parametr powłoki ma domyślną ścieżkę, w której /bin /sH wykonuje polecenia, ale w tym przykładzie podaliśmy „ls -lst /tmp /myProcess.PID ”ścieżka, na której kontroler Ansible wprowadził zmiany w urządzeniu LocalHost. Następnie, aby monitorować i zapisać dane wyjściowe w tym parametrze Ansible, zastosowaliśmy parametr „rejestr”.
Następnie użyliśmy parametru „do”, który jest używany do ponownej ponownej ponownej liczby zadań podręcznika 5 razy przez 2 sekundy. Do definiowania przedziału użyliśmy domyślnego parametru Ansible, który jest „opóźnieniem”, a liczba zadań podręcznika jest w parametrze „Próby” Ansible.
Teraz zakończymy ponowne.Playbook YML, uderzając Ctrl+x. Teraz chcemy uruchomić podręcznik. Więc użyjemy poniższego polecenia:
[root@master ansible]# ansible-playbook próbuje.ymlOtrzymamy wynik poniżej po wykonaniu powyższego polecenia. Jak pokazano na wyjściu, podręcznik jest wykonywany 5 razy skutecznie z czasem wykonania 2 sekund.
Wniosek
Ten artykuł obejmował, w jaki sposób funkcjonuje parametry Poradu Playka Ansible. Dokładnie opanowaliśmy teorię parametrów Retry. Następnie, aby lepiej zrozumieć pojęcie ponownego.