HerkunftDer Kunde bestellte bei Sangfor ein maßgeschneidertes System, das auf CentOS basierte. Nach einer langen Untersuchung stellten wir fest, dass das Problem tatsächlich eine Dateibeschädigung war und kein Docker-Problem. UmweltinformationenDocker-Informationen: $ Docker-Info Behälter: 0 Laufen: 0 Pausiert: 0 Angehalten: 0 Bilder: 2 Serverversion: 18.09.3 Speichertreiber: overlay2 Unterstützendes Dateisystem: xfs Unterstützt d_type: true Native Overlay Diff: wahr Protokollierungstreiber: JSON-Datei Cgroup-Treiber: cgroupfs Plugins: Lautstärke: lokal Netzwerk: Bridge-Host Macvlan Null-Overlay Protokoll: awslogs fluentd gcplogs gelf journald json-Datei lokale Protokolleinträge splunk syslog Schwarm: inaktiv Laufzeiten: runc Standardlaufzeit: runc Binärdatei initialisieren: docker-init Containerd-Version: e6b3f5632f50dbc4e9cb6288d911bf4f5e95b18e Runc-Version: 6635b4f0c6af3810594d2770f662f34ddc15b40d Init-Version: fec3683 Sicherheitsoptionen: sicherheitskomp Profil: Standard Kernel-Version: 3.10.0 Betriebssystem: CentOS Linux 7 (Core) Betriebssystemtyp: Linux Architektur: x86_64 CPUs: 20 Gesamtspeicher: 125,3 GiB Bezeichnung: eds-1f21a854 ID: VZLV:26PU:ZUN6:QQEJ:GW3I:YETT:HMEU:CK6J:SIPL:CHKV:6ASN:5NDF Docker-Stammverzeichnis: /data/kube/docker Debug-Modus (Client): false Debug-Modus (Server): false Registrierung: https://index.docker.io/v1/ Beschriftungen: Experimentell: falsch Unsichere Register: reg.wps.lan:5000 treg.yun.wps.cn 127.0.0.0/8 Registrierungsspiegel: https://registry.docker-cn.com/ https://docker.mirrors.ustc.edu.cn/ Live-Wiederherstellung aktiviert: false Produktlizenz: Community Engine Systeminformationen $ uname -a Linux eds-1f21a854 3.10.0 #1 SMP Montag, 28. September 2020, 12:00:30 CST x86_64 x86_64 x86_64 GNU/Linux $ Katze /etc/os-release NAME="CentOS Linux" VERSION="7 (Core)" ID="centos" ID_LIKE="rhel-Fedora" VERSION_ID="7" PRETTY_NAME="CentOS Linux 7 (Core)" ANSI_COLOR="0;31" CPE_NAME="cpe:/o:centos:centos:7" HOME_URL="https://www.centos.org/" BUG_REPORT_URL="https://bugs.centos.org/" CENTOS_MANTISBT_PROJECT="CentOS-7" CENTOS_MANTISBT_PROJECT_VERSION="7" REDHAT_SUPPORT_PRODUCT="centos" REDHAT_SUPPORT_PRODUCT_VERSION="7" Serverinformationen: $ Katze Produktname SUGON-60G16 $ Katze sys_vendor SANGFOR $ cat Produktversion 1.2 FehlerbehebungsprozessDie Installation des Docker-Servers hängt Uhrzeit 2020 10/29 19:51:
An diesem Punkt dachte ich, dass ein Kernel-Fehler ausgelöst wurde und der Kernel in Panik geriet, sodass der Server nicht gestartet werden konnte. Uhrzeit 30.10.2020 9:07 Uhr:
Anschließend hat die Implementierung direkt eine Sunflower-Remoteverbindung gesendet. Nachdem ich nach oben gegangen war, stellte ich fest, dass es sich nicht um ein normales Betriebssystem handelte, sondern um ein modifiziertes, das auf CentOS basiert. Ich konnte /var/log/message nicht finden und führte dann unser Docker-Installationsskript manuell aus. bash -x install-docker.sh Dann stoppten die Ausgabeinformationen bei einem bestimmten Schritt, sie sollten "hängen". Ich habe mir die letzten vom Skript ausgegebenen Debuginformationen angesehen und festgestellt, dass darauf der Start von Docker folgte, was durch den Start von Docker ausgelöst werden sollte. Dann konnte ich nach langer Zeit immer noch keine Verbindung herstellen oder einen Ping auslösen, also bat ich das Implementierungspersonal, vor Ort zu prüfen, ob es sich um einen Hardwareserver handelte und ob Idrac, ilo usw. vorhanden waren, um die Informationen der TTY-Konsole zu überprüfen. Das Personal vor Ort überprüfte den Server und stellte fest, dass er „normal startete“. Ich versuchte es, konnte aber trotzdem keine Verbindung herstellen. Sie fragten uns, ob die Route geändert wurde. Ich überprüfte vor Ort mit systemctl und stellte fest, dass Docker aktiv war. Von der Site aus kann weiterhin kein Ping an das Gateway gesendet werden. Plötzlich kam mir der Gedanke, dass es vielleicht gar nicht aufgehängt war. . . Ich habe ihn gebeten, „uptime -s“ auszuführen, um die letzte Startzeit zu überprüfen, aber es stellte sich heraus, dass er überhaupt keinen Neustart durchgeführt hatte. . . Dann stellten wir vor Ort fest, dass es sich um ein iptables-Problem handelte. Als wir Docker starteten, wurden deren Regeln gelöscht. Später nahmen sie einige Änderungen vor und veröffentlichten sie alle. Daher war die Tatsache, dass die Maschine beim Starten von Docker hängen blieb, tatsächlich auf den Einfluss von iptables zurückzuführen, der dazu führte, dass die Netzwerkverbindung getrennt wurde und die Maschine überhaupt nicht neu gestartet wurde. Starten Sie den Container und er stürzt ab Fahren Sie dann fort. Die Implementierung besagt, dass das obige Problem bei der Installation von Docker auf anderen Computern zuvor nicht aufgetreten ist, das obige Problem jedoch beim Start aufgetreten ist. Ich habe die Bereitstellung manuell ausgeführt und ein Fehler wurde gemeldet. Das Skript öffnet -x debugging und sieht, dass beim Laden des Bereitstellungsimages ein Fehler gemeldet wird. Fehler beim Verbinden: Post http://%2Fvar%2Frun%2Fdocker.sock/v1.39/images/load?quiet=0: read unix @->/var/run/docker.sock: read: EOF Manuelle Ausführung: $ docker load -i ./kube/images/deploy.tar Fehler beim Verbinden: Post http://%2Fvar%2Frun%2Fdocker.sock/v1.39/images/load?quiet=0: read unix @->/var/run/docker.sock: read: Verbindung vom Peer zurückgesetzt Ich habe jounalctl überprüft und keine relevanten Protokolle für den Docker-Daemon gefunden. Ich habe nach diesem Fehler gesucht und einige Leute sagten, dass die Docker-Gruppe von /var/run/docker.sock nicht existiert, während andere das Problem durch die direkte Verwendung von chmod 777 gelöst haben. Ich habe es versucht, aber es funktioniert immer noch nicht. Debuggen Sie den Docker an der Rezeption, um zu sehen, ob nützliche Informationen vorliegen: systemctl stoppt Docker pkill dockerd dockerd -D Öffnen Sie ein weiteres Terminal und führen Sie den Vorgang zum Laden des Bildes aus: $ docker load -i ./kube/images/deploy.tar ab6425526dab: Ebene wird geladen [======================================================>] 126,3 MB/126,3 MB c7fe3ea715ef: Ebene wird geladen [========================================================>] 340,3 MB/340,3 MB 7f7eae7934f7: Ebene wird geladen [======================================================>] 3,584kB/3,584kB e99a66706b50: Ebene wird geladen [=======================================================>] 2,105 MB/2,105 MB 245b79de6bb7: Ebene wird geladen [========================================================>] 283,5 MB/283,5 MB 2a56a4432cef: Ebene wird geladen [=======================================================>] 93,18kB/93,18kB 0c2ea71066ab: Ebene wird geladen [======================================================>] 276,5kB/276,5kB bb3f6df0f87c: Ebene wird geladen [=======================================================>] 82,94kB/82,94kB 6f34ead3cef7: Ebene wird geladen [======================================================>] 946,7kB/946,7kB c21422dd15f6: Ebene wird geladen [=======================================================>] 1,97 MB/1,97 MB 940288517f4c: Ebene wird geladen [=======================================================>] 458,2 kB/458,2 kB 0c52f1af61f4: Ebene wird geladen [=======================================================>] 5,12kB/5,12kB 049e7edd48bc: Ebene wird geladen [=======================================================>] 1,57 MB/1,57 MB 73307245d702: Ebene wird geladen [=======================================================>] 5,632kB/5,632kB f109309d8ffc: Ebene wird geladen [=======================================================>] 2,175 MB/2,175 MB Geladenes Bild: xxxxxxxxxxxx.cn/platform/deploy-amd64:ubuntu.16.04 $ Docker-Bilder REPOSITORY TAG BILD ID ERSTELLT GRÖSSE xxxxxxxxxxxx.cn/platform/deploy-amd64 ubuntu.16.04 3ad94a76af5d vor 3 Monaten 734 MB Die Front-End-Protokollausgabe ist auf der Debugseite normal ... DEBU[2020-10-30T14:48:39.955963986+08:00] Angewandter Tar sha256:049e7edd48bc46e3dd5edf89c9caa8f0f7efbb41af403c5a54dd4f1008f604a7 auf d58edd0d97bb672ef40e82e45c1603ca3ceaad847d9b9fc7c9b0588087019649, Größe: 1518278 DEBU[2020-10-30T14:48:39.960091040+08:00] Tar anwenden in /data/kube/docker/overlay2/b044bd592ae800ed071208c6b2f650c5cbdc7452702f56a23b9b4ffe4236ac18/diff storage-driver=overlay2 DEBU[2020-10-30T14:48:40.059510528+08:00] Angewandter Tar sha256:73307245d7021f9627ca0b2cbfeab3aac0b65abfd476f6ec26bb92c75892d7e2 auf b044bd592ae800ed071208c6b2f650c5cbdc7452702f56a23b9b4ffe4236ac18, Größe: 3284 DEBU[2020-10-30T14:48:40.063040538+08:00] Tar anwenden in /data/kube/docker/overlay2/03918b1d275aa284532b8b9c59ca158409416f904e13cc7084c598ed343e844f/diff storage-driver=overlay2 DEBU[2020-10-30T14:48:40.148209852+08:00] Angewandter Tar sha256:f109309d8ffcb76589ad6389e80335d986b411c80122d990ab00a02a3a916e3e bis 03918b1d275aa284532b8b9c59ca158409416f904e13cc7084c598ed343e844f, Größe: 2072803 ^CINFO[2020-10-30T14:48:55.593523177+08:00] Signal „Unterbrechung“ wird verarbeitet DEBU[2020-10-30T14:48:55.593617229+08:00] Daemon mit einem minimalen Shutdown-Timeout von 15 Sekunden konfiguriert DEBU[2020-10-30T14:48:55.593638628+08:00] starte ein sauberes Herunterfahren aller Container mit einem Timeout von 15 Sekunden... DEBU[2020-10-30T14:48:55.594074457+08:00] Unix-Socket /run/docker/libnetwork/ebd15186e86385c48c4c5508d5f30eb83d5d74e56f09af5c82b6d6d9d63ec8b8.sock existiert nicht. Client-Verbindungen können nicht akzeptiert werden DEBU[2020-10-30T14:48:55.594106623+08:00] Alte Mount-ID bereinigen: Start. INFO[2020-10-30T14:48:55.594157536+08:00] Anhalten des Ereignisstroms nach ordnungsgemäßem Herunterfahren Fehler="<nil>" module=libcontainerd namespace=moby DEBU[2020-10-30T14:48:55.594343122+08:00] Alte Mount-ID bereinigen: erledigt. DEBU[2020-10-30T14:48:55.594501828+08:00] Sauberes Herunterfahren erfolgreich INFO[2020-10-30T14:48:55.594520918+08:00] Beenden des Healthchecks nach ordnungsgemäßem Herunterfahren module=libcontainerd INFO[2020-10-30T14:48:55.594531978+08:00] Anhalten des Ereignisstroms nach ordnungsgemäßem Herunterfahren Fehler="Kontext abgebrochen" Modul=libcontainerd Namespace=plugins.moby DEBU[2020-10-30T14:48:55.594603119+08:00] empfangenes Signal signal=beendet INFO[2020-10-30T14:48:55.594739890+08:00] pickfirstBalancer: HandleSubConnStateChange: 0xc4201a61b0, TRANSIENT_FAILURE Modul=grpc INFO[2020-10-30T14:48:55.594751465+08:00] pickfirstBalancer: HandleSubConnStateChange: 0xc4201a61b0, VERBINDEN Modul=grpc Ich habe mir die systemd-Konfiguration angesehen und nichts Besonderes gefunden. Ich war verwirrt, warum es importiert werden konnte, wenn es im Vordergrund ausgeführt wurde. Ich konnte mir keine Lösung für das Problem vorstellen und vermutete daher, dass es sich um ein Socket-Problem handeln könnte. Ich habe versucht, es mit Socat an TCP weiterzuleiten, aber es hat immer noch nicht funktioniert (hier sollten Sie versuchen, TCP, das 127 abhört, zum Daemon hinzuzufügen, nicht über den Socket, und Socat hat den Socket schließlich weitergegeben). $ socat -d -d TCP-LISTEN:2375,fork,bind=127.0.0.1 UNIX:/var/run/docker.sock 2020/10/30 17:39:58 socat[5201] N hört auf AF=2 127.0.0.1:2375 ^[[C2020/10/30 17:42:06 socat[5201] N akzeptiert Verbindung von AF=2 127.0.0.1:35370 auf AF=2 127.0.0.1:2375 2020/10/30 17:42:06 socat[5201] N hat den Kindprozess 11501 abgezweigt 2020/10/30 17:42:06 socat[5201] N hört auf AF=2 127.0.0.1:2375 2020/10/30 17:42:06 socat[11501] N öffnet Verbindung zu AF=1 "/var/run/docker.sock" 2020/10/30 17:42:06 socat[11501] N erfolgreich verbunden von lokaler Adresse AF=1 "\0\0\0\0\0\0 \x0D\x@7\xE9\xEC\x7E\0\0\0\x01\0\0\0\0" 2020/10/30 17:42:06 socat[11501] N Start einer Datenübertragungsschleife mit FDs [6,6] und [5,5] 2020/10/30 17:42:12 socat[11501] E write(5, 0x55f098349920, 8192): Rohrbruch 2020/10/30 17:42:12 socat[11501] N Ausgang(1) 2020/10/30 17:42:12 socat[5201] N childdied(): Signal 17 verarbeiten $ docker --log-level debug -H tcp://127.0.0.1:2375 load -i kube/images/deploy.tar c7fe3ea715ef: Ebene wird geladen [==============================================> ] 286,9 MB/340,3 MB unerwarteter EOF Am Ende hat es ziemlich lange gedauert. Ich war zu der Zeit beschäftigt und habe mir deshalb das Problem eines anderen Kunden angesehen. Dann bin ich hierher zurückgekommen und habe spontan versucht, andere Bilder hochzuladen. Es hat funktioniert. . . $ docker load -i kube/images/pause_3.1.tar e17133b79956: Ebene wird geladen [=======================================================>] 744,4kB/744,4kB Geladenes Bild: mirrorgooglecontainers/pause-amd64:3.1 $ docker load -i kube/images/tiller_v2.16.1.tar 77cae8ab23bf: Ebene wird geladen [=======================================================>] 5,815 MB/5,815 MB 679105aa33fb: Ebene wird geladen [=======================================================>] 6,184 MB/6,184 MB 639eab5d05b1: Ebene wird geladen [=======================================================>] 40,46 MB/40,46 MB 87e5687e03f2: Ebene wird geladen [=======================================================>] 41,13 MB/41,13 MB Geladenes Image: gcr.io/kubernetes-helm/tiller:v2.16.1 $ docker load -i kube/images/calico_v3.1.3.tar cd7100a72410: Ebene wird geladen [========================================================>] 4,403 MB/4,403 MB ddc4cb8dae60: Ebene wird geladen [======================================================>] 7,84 MB/7,84 MB 77087b8943a2: Ebene wird geladen [======================================================>] 249,3kB/249,3kB c7227c83afaf: Ebene wird geladen [=======================================================>] 4,801 MB/4,801 MB 2e0e333a66b6: Ebene wird geladen [======================================================>] 231,8 MB/231,8 MB Geladenes Bild: calico/node:v3.1.3 2580685bfb60: Ebene wird geladen [=======================================================>] 50,84 MB/50,84 MB Geladenes Bild: calico/kube-controllers:v3.1.3 0314be9edf00: Ebene wird geladen [=======================================================>] 1,36 MB/1,36 MB 15db169413e5: Ebene wird geladen [======================================================>] 28,05 MB/28,05 MB 4252efcc5013: Ebene wird geladen [=======================================================>] 2,818 MB/2,818 MB 76cf2496cf36: Ebene wird geladen [======================================================>] 3,03 MB/3,03 MB 91d3d3a16862: Ebene wird geladen [=======================================================>] 2,995 MB/2,995 MB 18a58488ba3b: Ebene wird geladen [========================================================>] 3,474 MB/3,474 MB 8d8197f49da2: Ebene wird geladen [=======================================================>] 27,34 MB/27,34 MB 7520364e0845: Ebene wird geladen [======================================================>] 9,216kB/9,216kB b9d064622bd6: Ebene wird geladen [=======================================================>] 2,56kB/2,56kB Geladenes Bild: calico/cni:v3.1.3 Nur beim Importieren tritt ein Fehler auf $ docker load -i kube/images/deploy.tar Fehler beim Verbinden: Post http://%2Fvar%2Frun%2Fdocker.sock/v1.39/images/load?quiet=0: read unix @->/var/run/docker.sock: read: Verbindung vom Peer zurückgesetzt Anschließend wurde die Prüfsumme der Datei auf der Maschine, die das Paket erstellt hatte, verglichen und es stellte sich heraus, dass sie falsch war. . . . ZusammenfassenEine Frage ist, warum das Front-End dies tun kann. Zweitens löscht der Docker-Daemon keine Protokolle, wenn die Datei beschädigt und importiert wird, und setzt die Verbindung direkt zurück. Die neue Version hat diese Situation nicht getestet. Dies ist das Ende dieses Artikels über den zeitaufwändigen Fehlerbehebungsprozess bei Docker-Fehlern. Weitere relevante Inhalte zur zeitaufwändigen Fehlerbehebung bei Docker-Fehlern finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
<<: JavaScript generiert dynamisch eine Tabelle mit Zeilenlöschfunktion
>>: MySQL-Gruppierungsabfragen und Aggregatfunktionen
Durch das Hinzufügen des Attributs rel="nofo...
1) Geltungsbereich: schreibgeschützt: Eingabe [Typ...
Beim Erstellen eines Formulars in einem aktuellen...
Ein Kollege hat mir einmal gesagt, ich solle eine...
Inhaltsverzeichnis Normale Belastung Lazy Loading...
1. Versuchsbeschreibung Installieren Sie in der v...
Vorwort [root@localhost ~]# cat /etc/fstab # # /e...
Nachdem Sie einen Container lokal erstellt haben,...
1. Übersicht über Dateiberechtigungen und Eigentu...
In diesem Artikelbeispiel wird der spezifische Co...
Verwenden Sie Indizes, um Abfragen zu beschleunig...
Inhaltsverzeichnis 1. Das Konzept schnell erkenne...
Die Sicherheitsprobleme, die bei der Frontend-Ent...
Inhaltsverzeichnis Mindmap Einfaches Verständnis ...
<!doctype html> <html xmlns="http:/...