Inhaltsverzeichnis
Problemanalyse" >Problemanalyse
Heim Computer-Tutorials Computerwissen So lösen Sie das Problem der langsamen Ausführungsgeschwindigkeit von Ansible

So lösen Sie das Problem der langsamen Ausführungsgeschwindigkeit von Ansible

Mar 05, 2024 pm 05:34 PM
ansible become

Ich habe vom Projekt Feedback erhalten, dass der Kunde bei der Bereitstellung des Produkts mit den von uns bereitgestellten Tools auf Schwierigkeiten gestoßen ist und beim Host-Hinzufügen auf Probleme gestoßen ist, die das Implementierungsteam daran gehindert haben, die Arbeit weiter voranzutreiben, und haben uns daher um Hilfe gebeten.

Umweltinformationen: kylin10

Architektur: Arm

So lösen Sie das Problem der langsamen Ausführungsgeschwindigkeit von Ansible

Erste Anzeichen

Während des Systembereitstellungsprozesses haben wir Ansible-Skripte für Batch-Vorgänge auf Hosts verwendet. Kürzlich bin ich auf ein Problem gestoßen, bei dem der Ausführungsprozess hängengeblieben ist. Zunächst wurde vermutet, dass Ansible während der Ausführung blockiert wurde. Um dies zu überprüfen, habe ich einen Befehl zum Testen an das Feld gesendet.

localhost$ date
2024年02月19日星期 17:30:41 CST 
localhost$ ansible all -i "192.168.2.84, -m shell -a 'date' --l become --become-method=sudo --become-user=root -u test
192.168.2.84 CHANGED rc=0 >> 
2024年02月19日星期 17:33:34 CST 
Nach dem Login kopieren

Natürlich hat es mehr als 2 Minuten gedauert, einen einfachen Ansible-Befehl in der Umgebung auszuführen, bevor das Ergebnis zurückgegeben wurde. Die Ursache des Problems liegt hier und wir haben eine allgemeine Richtung.

Ansible ist während der tatsächlichen Ausführung immer noch auf eine SSH-Remote-Verbindung angewiesen. Es wird zunächst spekuliert, dass die Ausführungsrückgabegeschwindigkeit aufgrund der langsamen SSH-Verbindungsgeschwindigkeit langsam sein könnte.

Überprüfen Sie die SSH-Parameter und die /etc/ssh/sshd_config-Konfiguration

GSSAPIAuthentication no #关闭SERVER上的GSS认证  
Nach dem Login kopieren

Unter Linux ist die umgekehrte DNS-Auflösung von SSH standardmäßig aktiviert. Dies nimmt viel Zeit in Anspruch und muss daher deaktiviert werden. In der Konfigurationsdatei ist UseDNS zwar mit „Ja“ kommentiert, der Standardschalter ist jedoch „Ja“

UseDNS=no  #关闭SERVER上DNS反向解析 
Nach dem Login kopieren

Es stellt sich heraus, dass die beiden SSH-Parameterkonfigurationen im Projekt mit den oben genannten übereinstimmen und der manuelle Test der SSH-Anmeldung beim Peer-Host sehr schnell ist

Problemanalyse

Ich habe keine Ahnung, daher kann ich nur den Linux-Befehl strace verwenden, um Systemaufrufe zu verfolgen

So lösen Sie das Problem der langsamen Ausführungsgeschwindigkeit von Ansible

Beim Blick auf das Strace-Protokoll haben wir festgestellt, dass es eine große Anzahl ausgewählter Wartezeiten gibt, die bei der Ausführung eines bestimmten Vorgangs für eine lange Zeit blockiert werden sollten.

Debuggen mit Ansible

ansible all -i "192.168.2.84, -m shell -a 'date' --l become --become-method=sudo --become-user=root -u test -vvv
Nach dem Login kopieren

Fügen Sie -vvv nach dem Befehl hinzu, um den detaillierten Ausführungsprozess anzuzeigen

So lösen Sie das Problem der langsamen Ausführungsgeschwindigkeit von Ansible

Lösen Sie das Problem

Aus den Debug-Informationen können wir den Fehler „mux_client_read_packet: Header lesen fehlgeschlagen: Broken Pipe“ erkennen. An der Stelle, an der das Skript ausgeführt wird, können wir sehen, dass Ansible mit Python zusammenhängt Ausführung?

Ich habe die Informationen online überprüft und festgestellt, dass es Kompatibilitätsprobleme zwischen Ansible und Python gibt.

So lösen Sie das Problem der langsamen Ausführungsgeschwindigkeit von Ansible

Ich habe also die Python-Version überprüft. Ich kann sehen, dass die Standardversion von Python Python2 ist, aber es gibt auch Python3 auf dem System. Versuchen Sie, den Softlink zur Überprüfung auf Python3.7 zu ändern

So lösen Sie das Problem der langsamen Ausführungsgeschwindigkeit von Ansible

Führen Sie den Ansible-Befehl erneut aus

So lösen Sie das Problem der langsamen Ausführungsgeschwindigkeit von Ansible

Die Ausführungszeit beträgt 1,3 Sekunden. Es scheint, dass die Kompatibilität von Ansible- und Python-Versionen dieses Problem verursacht hat.

Das obige ist der detaillierte Inhalt vonSo lösen Sie das Problem der langsamen Ausführungsgeschwindigkeit von Ansible. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Ausführliche Erklärung der Funktionsweise von Ansible Ausführliche Erklärung der Funktionsweise von Ansible Feb 18, 2024 pm 05:40 PM

Das Funktionsprinzip von Ansible kann aus der obigen Abbildung verstanden werden: Die Verwaltungsseite unterstützt drei Methoden: Lokal, SSH und Zeromq, um eine Verbindung zur verwalteten Seite herzustellen. Dieser Teil entspricht der Verbindung Im obigen Architekturdiagramm können Sie den Anwendungstyp HostInventory (Hostliste) verwenden, um entsprechende Vorgänge über verschiedene Module zu implementieren und einen einzelnen Befehl auszuführen -hoc; Der Verwaltungsknoten kann eine Reihe von Aufgaben über Playbooks implementieren, z. B. die Installation und Bereitstellung von Webdiensten, die Stapelsicherung von Datenbankservern usw. Wir können Playbooks einfach so verstehen, wie das System vergeht

So lösen Sie das Problem der langsamen Ausführungsgeschwindigkeit von Ansible So lösen Sie das Problem der langsamen Ausführungsgeschwindigkeit von Ansible Mar 05, 2024 pm 05:34 PM

Nachdem der Kunde Feedback vom Projekt erhalten hatte, stieß er auf Schwierigkeiten bei der Bereitstellung des Produkts mithilfe der von uns bereitgestellten Tools und stieß beim Schritt des Host-Hinzufügens auf Probleme, die das Implementierungsteam daran hinderten, die Arbeit weiter voranzutreiben. Daher bat er uns um Hilfe. Umgebungsinformationen: kylin10-Architektur: Arm hat begonnen, Gestalt anzunehmen. Während des Systembereitstellungsprozesses haben wir für den Stapelbetrieb von Hosts während der Entwicklung Ansible-Skripte verwendet. Kürzlich bin ich auf das Problem gestoßen, dass der Ausführungsprozess hängen bleibt. Es wird zunächst vermutet, dass Ansible während der Ausführung blockiert ist. Um dies zu überprüfen, habe ich einen Befehl zum Testen an das Feld gesendet. localhost$date2024-02-19 Sonntag 17:30:41CSTlocalhost$ansibleall-i

Ansible Ad-Hoc (Peer-to-Peer-Modus) Ansible Ad-Hoc (Peer-to-Peer-Modus) Feb 18, 2024 pm 04:48 PM

Offizielle Dokumentation: https://docs.ansible.com/ansible/latest/command_guide/intro_adhoc.html Einführung Ein Ad-hoc-Befehl ist ein Befehl, der vorübergehend eingegeben und ausgeführt wird und normalerweise zum Testen und Debuggen verwendet wird. Sie müssen nicht dauerhaft gespeichert werden. Einfach ausgedrückt ist Ad-hoc ein „Sofortbefehl“. Häufig verwendete Module 1. Befehlsmodul (Standardmodul) Das Standardmodul ist nicht so leistungsfähig wie die Shell. Grundsätzlich kann das Shell-Modul die Funktionen des Befehlsmoduls unterstützen. 【1】Help ansible-doccommand# Es wird empfohlen, das folgende ansible-doccomm zu verwenden

Ansible-Playbook-Variablen (grundlegende Verwendung von Variablen) Ansible-Playbook-Variablen (grundlegende Verwendung von Variablen) Feb 18, 2024 pm 04:45 PM

Ansible ist ein automatisiertes Open-Source-Konfigurationsmanagement- und Bereitstellungstool, das Administratoren dabei hilft, Aufgaben auf mehreren Servern zu automatisieren. In Ansible sind Playbooks YAML-Dateien, die zur Beschreibung von Automatisierungsaufgaben verwendet werden. Die Verwendung von Variablen ist ein wichtiger Teil der Playbook-Funktionalität, der Ihr Playbook flexibler, wiederverwendbar und einfacher zu warten machen kann. Im Folgenden sind einige grundlegende Verwendungsmöglichkeiten von Variablen in Ansible Playbook aufgeführt: Variablen definieren: Sie können Variablen im Playbook, in der Inventardatei, in der Vars-Datei oder in der Befehlszeile mithilfe des Parameters -e definieren. Beispiel: Variablen im Playbook definieren: ----na

Erkundung des Linux-Remoteverwaltungsartefakts: Fünf praktische Tools empfohlen Erkundung des Linux-Remoteverwaltungsartefakts: Fünf praktische Tools empfohlen Feb 23, 2024 pm 01:00 PM

Als leistungsstarkes Betriebssystem werden die Fernverwaltungstools von Linux häufig für die Serververwaltung, Netzwerküberwachung usw. verwendet. Bei unserer täglichen Arbeit müssen wir häufig spezielle Tools verwenden, um Linux-Server aus der Ferne zu verwalten. In diesem Artikel werden fünf praktische Linux-Remoteverwaltungstools vorgestellt und spezifische Codebeispiele bereitgestellt, um deren Verwendung zu demonstrieren. 1.SSHSSH (SecureShell) ist ein verschlüsseltes Netzwerkprotokoll, das zum sicheren Anmelden und Ausführen von Befehlen aus der Ferne verwendet wird. Über SSH können Benutzer

Linux-Remoteverwaltungstools: fünf empfohlene Tools Linux-Remoteverwaltungstools: fünf empfohlene Tools Feb 24, 2024 pm 11:18 PM

Linux-Remoteverwaltungstools, die Sie nicht kennen: Fünf empfohlene Empfehlungen Im Bereich der modernen Informationstechnologie ist das Linux-Betriebssystem für viele Unternehmen und Privatpersonen zu einem der bevorzugten Betriebssysteme geworden. Für Linux-Systemadministratoren sind Remote-Verwaltungstools sehr wichtig, die ihnen helfen, Remote-Server schnell und effizient zu überwachen und zu verwalten. In diesem Artikel werden fünf Linux-Remoteverwaltungstools vorgestellt, die Sie möglicherweise nicht kennen, und ich hoffe, dass er Ihnen bei der Linux-Remoteverwaltung hilfreich sein wird. tmu

Wie verbindet sich Java mit der automatischen Betriebs- und Wartungsplattform Ansible? Wie verbindet sich Java mit der automatischen Betriebs- und Wartungsplattform Ansible? Apr 20, 2023 pm 04:40 PM

Java dockt an die automatische Betriebs- und Wartungsplattform ansible an, um die Dateisammlung und -verteilung zu realisieren. Dieses Andocken hat hauptsächlich die folgenden zwei Funktionen: Dateisammlung (Batch-Vorgänge für Dateien, einschließlich Batch-Sammlung allgemeiner Dateien wie Protokolldateien von mehreren Hosts) Dateiverteilung (Batch-Vorgänge für Dateien) Führen Sie Batch-Vorgänge durch, einschließlich der Batch-Verteilung gemeinsamer Dateien (z. B. Protokolldateien) von mehreren Hosts.) Szenariobeschreibung und Ansibleyum-Installation Da Ansible kein Windows-Installationspaket hat, wird zur Erleichterung des Testens ein Linux benötigt Es wurde eine Umgebung für nachfolgende Arbeiten geschaffen. Dieses Mal wird die yum-Methode zur Installation verwendet. Nachdem Sie Ansible mit der yum-Methode installiert haben, installieren Sie zunächst die EPEL-Quelle. yuminstall-yhttp://dl.fedor

So konfigurieren Sie automatisierte Bereitstellungstools (z. B. Ansible) unter Linux So konfigurieren Sie automatisierte Bereitstellungstools (z. B. Ansible) unter Linux Jul 07, 2023 pm 05:37 PM

So konfigurieren Sie automatisierte Bereitstellungstools (z. B. Ansible) unter Linux. Einführung: Im Prozess der Softwareentwicklung sowie des Betriebs und der Wartung stoßen wir häufig auf Situationen, in denen Anwendungen auf mehreren Servern bereitgestellt werden müssen. Die manuelle Bereitstellung ist zweifellos ineffizient und fehleranfällig, daher ist die Konfiguration eines automatisierten Bereitstellungstools unerlässlich. In diesem Artikel erfahren Sie, wie Sie Ansible, ein häufig verwendetes automatisiertes Bereitstellungstool, unter Linux konfigurieren, um eine schnelle und zuverlässige Anwendungsbereitstellung zu erreichen. 1. Installieren Sie Ansible. Öffnen Sie das Terminal und verwenden Sie den folgenden Befehl.

See all articles