Wie lassen sich häufige Containerprobleme in Container Station beheben und beseitigen?
Container Station ermöglicht es Ihnen, Anwendungen und Container von Drittanbietern auf Ihrem QNAP-Gerät bereitzustellen. Die zum Erstellen dieser Container verwendeten Open-Source-Images können zu Problemen bei der Bereitstellung führen.
QNAP bietet keinen technischen Support für Images von Drittanbietern. Führen Sie die folgenden Schritte aus, um häufige Probleme im Zusammenhang mit Containern zu diagnostizieren und zu beheben.
Container-Konfiguration überprüfen
Container erben alle Attribute des Quell-Images. Scannen Sie die Image-Datei, um Sicherheitslücken, Fehlkonfigurationen und Backdoor-Bedrohungen vor der Bereitstellung zu erkennen.
Wenn nach der Bereitstellung des Containers Probleme auftreten, analysieren Sie die Containerprotokolle, um Probleme zu diagnostizieren und zu beheben.
Image-Informationen überprüfen
Überprüfen Sie die Voraussetzungen für das Image und führen Sie alle erforderlichen Schritte aus, bevor Sie den Container bereitstellen.
Wenn Sie beispielsweise einen PostgreSQL-Container mit dem postgres
-Image bereitstellen, müssen Sie die Umgebungsvariable POSTGRES_PASSWORD
setzen. Der Container lässt sich ohne diese Variable nicht bereitstellen.
POSTGRES_PASSWORD
.Container Station-Ereignisprotokolle analysieren
Container Station protokolliert alle Anwendungs- und Containeraktivitäten. Fehlerprotokolle enthalten explizite Fehlermeldungen, einschließlich des Anwendungs- oder Containernamens, des Fehlercodes und der Fehlerdetails.
- Öffnen Sie Container Station.
- Klicken Sie auf Ereignisprotokolle.
- Suchen Sie Fehlerprotokolle.
Beispiel 1
In diesem Beispiel verzeichnete das Ereignisprotokoll einen Startfehler, weil die angegebenen Ports bereits von anderen Diensten verwendet wurden, sodass der Container sich nicht an die erforderlichen Netzwerkschnittstellen binden konnte.
Beispiel 2
Das Ereignisprotokoll verzeichnete in diesem Beispiel einen Startfehler aufgrund eines falsch konfigurierten Einstiegspunktbefehls, der den Container daran hinderte, den beabsichtigten Prozess auszuführen.
Einzelne Containerprotokolle überprüfen
Analysieren Sie die einzelnen Containerprotokolle auf Fehler- und Warnmeldungen. Container Station protokolliert detaillierte Fehlerzustände, wie z. B. fehlende Umgebungsvariablen, ungültige Namensformate, fehlgeschlagene Image-Abrufe und Initialisierungsfehler.
- Öffnen Sie Container Station.
- Klicken Sie auf Container.
- Wählen Sie einen Container aus, um die Detailseite zu öffnen.
- Klicken Sie auf Protokolle.
- Überprüfen Sie Fehler- und Warnmeldungen.
Beispiel 1
Das Ereignisprotokoll zeichnete einen Startfehler auf, weil die Umgebungsvariable MYSQL_ROOT_PASSWORD
vor der Bereitstellung des MySQL-Containers nicht gesetzt wurde, was dazu führte, dass der Container sofort nach der Initialisierung beendet wurde.
Beispiel 2
Im Ereignisprotokoll wurde ein Startfehler aufgezeichnet, weil der Rancher-Container mit dem rancher/rancher
-Image ohne Aktivierung des privilegierten Modus bereitgestellt wurde. Ohne das --privileged
-Flag konnte der Container nicht richtig initialisiert werden.
Image-Kompatibilität verifizieren
Stellen Sie sicher, dass das Image mit der Prozessorarchitektur und dem Betriebssystem Ihres QNAP-Geräts kompatibel ist. Falsche Image-Versionen oder Architekturen verhindern das Ausführen von Containern.
Plattform Kompatibilität überprüfen
Überprüfen Sie, ob die Image-Plattform mit der CPU-Architektur Ihres QNAP-Geräts übereinstimmt. Wenn Sie ein Image von einem anderen QNAP-Gerät übertragen, stellen Sie sicher, dass beide Geräte die gleiche Architektur verwenden.
Docker
Die Docker-Image-Seite enthält eine Liste der unterstützten Architekturen und Betriebssysteme für jede Image-Version. Im Folgenden finden Sie die allgemeinen Kompatibilitätsrichtlinien für Docker-Images:
linux/arm/v7
Images unterstützen 32-Bit-ARM-Architekturen.linux/arm64/v8
Images unterstützen 64-Bit-ARM-Architekturen.linux/amd64
Images unterstützen 64-Bit-x86-Architekturen.
LXD
Weitere Informationen zur Kompatibilität finden Sie unter LXD-Image-Server. Im Folgenden finden Sie die allgemeinen Richtlinien zur Kompatibilität der Architektur von LXD-Containern:
armhf
Container unterstützen 32-Bit-ARM-Architekturen.arm64
Container unterstützen 64-Bit-ARM-Architekturen.amd64
Container unterstützen 64-Bit-x86-Architekturen.
Container-Inkompatibilität identifizieren
Bei inkompatiblen Docker-Containern wird möglicherweise ein exec format error
protokolliert, was auf eine Architekturinkongruenz hinweist.
Beim Bereitstellen von inkompatiblen LXD-Containern zeichnet Container Station Fehlerprotokolle auf der Seite "Ereignisprotokolle" auf.
Kompatibilität der Seitengröße überprüfen
QNAP hat die Systemseitengröße von 4K auf 32K aktualisiert, um die Leistung auf bestimmten 32-Bit-ARM-Geräten zu verbessern. Diese Änderung kann den Zugriff des Containers auf die Speicherressourcen einschränken und zu Segmentierungsfehlern führen. Überprüfen Sie vor der Bereitstellung die Kompatibilität von Drittanbieter-Containern.
Serie | Modelle |
---|---|
TS-x31P | TS-531P |
TS-x31P3 | TS-231P3, TS-431P3 |
TS-x31X | TS-231X, TS-431X, TS-531X, TS-831X, TS-431X2, TS-431X3 |
TS-x31KX | TS-431KX |
TS-x31XU | TS-431XU, TS-431XU-RP, TS-831XU, TS-831XU-RP, TS-1231XU, TS-1231XU-RP |
TS-x31XeU | TS-431XeU |
TS-x35 | TS-1635 |
QNAP-Systemkonfiguration überprüfen
Stellen Sie sicher, dass das QNAP-Gerät ordnungsgemäß für die Bereitstellung und Orchestrierung von Containern konfiguriert ist.
Netzwerkeinstellungen verifizieren
- Melden Sie sich bei Ihrem QNAP Gerät an und öffnen Sie Netzwerk und Virtueller Switch.
- Wählen Sie den Modus Erweitert.
- Wechseln Sie zu Netzwerk > Virtueller Switch.
- Identifizieren Sie die vom Container-Netzwerk verwendeten Netzwerksegmente.
- Wechseln Sie zu Systemsteuerung > System > Sicherheit > Liste Zulassen/Verweigern.HinweisWenn QuFirewall auf Ihrem Gerät installiert ist, stellen Sie sicher, dass es aktiviert ist, öffnen Sie dann QuFirewall und fügen Sie die gewünschten Netzwerksegmente zur Liste "Zulassen" hinzu.
- Stellen Sie sicher, dass die Segmente des Container-Netzwerks in die Liste "Zulassen" aufgenommen wurden.WichtigQNAP empfiehlt dringend, die folgenden IP-Bereiche in die Liste "Zulassen" aufzunehmen:
10.0.3.0/24
,10.0.5.0/24
,10.0.7.0/24
,172.29.0.0/22
,172.30.0.0/22
. Wenn Kubernetes-Dienste aktiviert sind, fügen Sie auch10.42.0.0/24
(Kubernetes Pod Network CIDR) hinzu.
Erweiterte Berechtigungseinstellungen überprüfen
- Wechseln Sie zu Systemsteuerung > Berechtigung > Freigabeordner > Erweiterte Berechtigungen.
- Deaktivieren Sie Erweitere Ordnerzugriffsrechte aktivieren.
- Klicken Sie auf Übernehmen.
- Wechseln Sie zu Systemsteuerung > Berechtigung > Kontingent und überprüfen Sie die Einstellungen des Benutzerkontingents.HinweisKontingenteinstellungen gelten nur, wenn die Kontingentverwaltung aktiviert ist.WarnungÜberprüfen Sie die Einstellungen des Benutzerkontingents, um sicherzustellen, dass keine unbeabsichtigten Kontingentbeschränkungen bestehen. Unbeabsichtigte Kontingenteinstellungen können dazu führen, dass der Container aufgrund von Speicherplatzbeschränkungen Fehler meldet.
Speicher- und Netzwerkkonfiguration verifizieren
- Wechseln Sie zu Speicher & Snapshots > Speicher > Speicher/Snapshots.
- Überprüfen Sie die verfügbare Speicherkapazität.HinweisWenn der Status nicht "Bereit" ist, überprüfen Sie den Datenträgerstatus auf Speicherfehler. Weitere Informationen finden Sie unter Datenträgerstatus im QTS- oder QuTS hero-Benutzerhandbuch.
Netzwerkkonfiguration überprüfen
Stellen Sie sicher, dass die Netzwerkeinstellungen korrekt konfiguriert sind, indem Sie die folgenden Schritte ausführen:
- Wechseln Sie zu Netzwerk und Virtueller Switch > Netzwerk > Schnittstellen und überprüfen Sie die DNS- und Gateway-Einstellungen.
- Stellen Sie sicher, dass der DHCP-Server IP-Adressen an Container zuweisen kann, die einen virtuellen Switch verwenden. Weitere Informationen finden Sie unter Konfiguration des virtuellen Switches im QTS- oder QuTS hero-Benutzerhandbuch.HinweisDie Einstellung IP-Adressen nicht zuweisen (bei speziellen Gründen, wie dem Aufbau eines externen oder isolierten Netzwerks) in der Konfiguration des virtuellen Switches ist für bestimmte Netzwerkkonfigurationen vorgesehen. Wenn Sie kein benutzerdefiniertes Netzwerk benötigen, sollten Sie diese Einstellung deaktivieren.
Wenn Sie jedoch ein externes oder isoliertes Netzwerk einrichten, sollten Sie sie aktivieren. Beachten Sie, dass diese Einstellung Auswirkungen auf die Netzwerkkonfiguration des Containers haben kann. Weitere Informationen finden Sie unter Einen virtuellen Switch im erweiterten Modus erstellen im QTS- oder QuTS hero-Benutzerhandbuch. - Wechseln Sie zu Container Station > Voreinstellungen > Netzwerkeinstellungen und stellen Sie sicher, dass die Segmente des Containernetzwerks nicht in Konflikt mit der lokalen Umgebung stehen.WichtigContainer Station verwendet
10.0.3.0/24
,10.0.5.0/24
und10.0.7.0/24
als die Standard-IP-Netzwerke.
Nachschlagen in der Online-Hilfe und Dokumentation
Einige Images sind open-source, sodass die Benutzer den Quellcode ändern können. Wenn keine der Methoden zur Fehlerbehebung das Problem löst, ist das Quell-Image möglicherweise inkompatibel oder beschädigt. In solchen Fällen empfiehlt QNAP, die Image-Website für weitere Informationen zu besuchen oder alternative Images aus derselben Kategorie zu verwenden.
Wenn das Image aus der Docker-Registrierung stammt, finden Sie weitere Details auf der Übersichtsseite des Images. Das Ubuntu-Image in Docker bietet beispielsweise Schnellverweise für weitere Informationen.