Ansible ignorieren Sie Fehler

Ansible ignorieren Sie Fehler

Während der Konfiguration der Aufgabe auf einem anderen Host -Gerät sind Ansible -Fehler ein häufiges Auftreten. Sie repräsentieren einzigartige und möglicherweise bedeutende Systemzustände. Trotzdem gibt es möglicherweise einige Fehler, die wir vermeiden möchten, damit die Aufgaben auch die Ausgabe ausführen und zeigen, wenn sie erfolgreich ausgeführt werden. In diesem Artikel werden wir über Ansible -Fehler und darüber sprechen, wie sie ignorieren können. Wir demonstrieren speziell eine Technik, um die Fehler mit Ansible zu unterdrücken und zu ignorieren.

Im Gegensatz zur Fehlerreparatur im Gegensatz zur Fehlerbehebung ist das Vermeiden von Fehlern die Fortsetzung der Aufgaben, die die Aktivität im Ansible Playbook unberührt ist. Das Ansible -Tool gibt eine Warnmeldung aus, wenn es keine Aufgabe oder ein Spielbuch beenden kann. Es gibt mehrere Ursachen, aber es liegt an uns, sie zu identifizieren und eine Lösung zu finden. Leider können nicht alle Fehler behoben werden. Sie können sich dafür entscheiden, die Fehler zu ignorieren, wenn Sie nicht möchten oder wenn Sie das Problem nicht beheben können.

Die Mehrheit der Kontrolle der Manager in einem ansiblen Gebrauchsbetriebswesen nutzt diese Strategie und verbindet sich mit den Zielhosts in realen Szenarien. Ansible Standardeinstellungen für die Einstellung von Aktivitäten auf einem Zielgerät und die fortgesetzten Aktivitäten auf einigen anderen Servern, wenn es ein Ergebnis ungleich Null aus einer Anweisung oder einem Fehler aus einem Paket zurückgibt. Obwohl es bestimmte Situationen gibt, in denen Sie möglicherweise anders handeln möchten. Ein zurückgegebenes Ergebnis, das nicht Null ist, bezeichnet gelegentlich den Fortschritt. Oft möchten Sie möglicherweise, dass die Verarbeitung einen Server anhält, damit sie auf allen Hosts stoppt.

Möglichkeiten, die Fehler in Ansible zu ignorieren

In Ansible werden unterschiedliche Wege verwendet, um die Spielbuchaufgaben auszuführen, wenn es den Aufgabenfehler zeigt. Im Folgenden sind die unterschiedlichen Arten, die dazu beitragen, die Aufgabe auszuführen, auch wenn Ansible Fehler zeigt:

1. Verwendung des Befehls ignore_errors = true

Obwohl die Aufgabe weiter fehlschlägt, wird das Spielbuch weiter ausgeführt, wenn Sie den Befehl ignore_errors = true am Ende der Aktivität angeben. Trotz der Betreuung der Aufgabenabschluss oder der Ausfälle führt es immer noch die nachfolgende Aktivität durch. Wenn die Aktivität irgendwie erfolglos ist, geht sie zum nächsten über. Wenn die Aktivität erfolgreich ist, wird danach einen Prozess abgeschlossen.

2. Verwendung des Scheckmodus in Ansible

Verwenden Sie die Special -Variablen boolean, der Ansible -Check -Modus, der auf True definiert ist, sobald Ansible in der Überprüfungsmethode ist, um eine Aufgabe zu umgehen oder die Fehler für eine Aufgabe zu ignorieren, wenn die Überprüfungsmethodeversion von Ansible verwendet wird.

3. Verwendung des fehlgeschlagenen = wenn Befehls im Ansible Playbook

In Ansible können wir auch das fehlgeschlagene nutzen, um den „Fehler“ für jede Aktivität implizieren zu geben. Ähnlich wie bei allen Ansible -bedingten Aussagen werden die Listen zahlreicher fehlgeschlagener Kriterien mit einem impliziten kombiniert. Die Aufgabe schlägt also nur fehl, wenn alle Bedingungen erfüllt sind.

Voraussetzungen, um die Fehler in Ansible zu ignorieren

Das Ansible -Konfigurationstool muss den erforderlichen Kriterien entsprechen, um das konkrete Beispiel einzuschließen:

  • Ein Ansible -Hauptserver oder wir können sagen, dass ein steuerlicher Server erforderlich ist, damit wir die Befehle auf dem Zielgerät konfigurieren können.
  • Wir müssen die lokalen Hosts haben, damit wir uns an jeden kontaktieren können, um die verschiedenen Arten zu verwenden, um die Fehler in der Ansible -Software zu ignorieren. Wir verwenden den lokalen Host in dieser Instanz als Ziel -Remote -Server für die Dauer der Aktivität.
  • Wir schreiben die Playbooks, führen die Ansible Ignoring-Fehlerbefehle aus und verwenden das Gerät mit Ansible-Controller, um die Ergebnisse auf entfernten Hosts zu verfolgen.

Um den Lernenden zu unterstützen, das Prinzip der Verwendung des Ignorierfehlers in einem ansiblen Spielbuch zu erfassen, lassen Sie uns das folgende Beispiel implementieren:

Beispiel: Verwenden des Befehls ignore_errors = true

Dies ist das einfachste Beispiel, das Ansible zur Implementierung verwendet. Dazu schreiben wir zunächst den folgenden Code in das Ansible -Terminal:

[root@master ansible]# nano ignore_errors.YML

Nach der Erstellung und Start der Ignore_Errors.YML Playbook, wir beginnen jetzt, die Befehle im Spielbuch einzugeben. Zunächst verwenden wir die Option "Hosts" und bestehen die mitgelieferten Hosts als "Localhost". Wir geben den „falschen“ Wert in das Argument „Fakten sammeln“ ein, damit wir keine zusätzlichen Informationen über den lokalen Host erhalten können, wenn wir das Spielbuch ausführen.

Danach beginnen wir mit der Auflistung jeder Aufgabe, die wir unter der Option „Aufgaben“ ausführen möchten. In der ersten Aufgabe zeigen wir das Dokument an, das im Ansible-Verzeichnis nicht vorhanden ist. Zunächst übergeben wir den Titel der Aufgabe, die wir implementieren möchten. Dann verwenden wir die Befehlsoption und speichern das nicht existierende Textdokument und verwenden „LS“, damit wir den Befehl in der ersten Aufgabe ausführen können. Nach der ersten Aufgabe verwenden wir den Befehl Ignore_Errors = True, sodass die Aufgabe über die Anweisung Ignore einen Fehler aufweist, die Aufgabe ignoriert und zur nächsten Aufgabe wechselt und sie ausführt.

Wir listen eine andere Aufgabe auf, die verwendet wird. Wenn die erste Aufgabe fehlschlägt, muss das Ansible -Tool die nächste Aufgabe ausführen. Dann verwenden wir den Debug -Parameter, um die Aufgabe im Spielbuch auszuführen.

- Gastgeber: Localhost
sammeln_facts: false
Aufgaben:
- Name: Listen Sie eine nicht existierende Datei auf
Befehl: ls nicht existent.txt
Ignore_errors: Richtig
- Name: Fahren Sie nach dem Fehler fort
debuggen:
MSG: "Aufgabe nach dem Scheitern fortsetzen"

Jetzt listen wir genügend Aufgaben auf, um den Befehl ignorieren zu ignorieren und zu überprüfen. Jetzt beenden wir das Spielbuch und kehren zum Hauptterminal zurück. Danach laufen wir das Spielbuch. Dafür verwenden wir die folgende Erklärung:

[Root@Master Ansible]# Ansible-Playbook Ignore_errors.YML

Nachdem wir den oben genannten Befehl ausgeführt haben, erhalten wir die folgende Ausgabe. Wie Sie sehen, zeigt die erste Aufgabe, die eine nicht existierende Datei auflistet. Die zweite Aufgabe wird jedoch erfolgreich ausgeführt, weil wir die erste Aufgabe ignoriert haben, indem wir im Playbook das ignore_error = true verwenden.

Abschluss

Wir haben gelernt, was der Ignorierfehler in Ansible bedeutet. Wir haben darüber diskutiert, wie es im Ansible Playbook funktioniert. Wir haben auch die verschiedenen Arten zur Ignorierung des Fehlers in Ansible bei der Ausführung der Aufgaben diskutiert. Wir haben ein Beispiel implementiert, damit jedes Konzept für den Benutzer klar ist.