Wie behebe ich einen fehlgeschlagenen Patch Manager (Linux)-Vorgang?

Lesedauer: 4 Minute
0

Ich möchte meinen fehlgeschlagenen Patch Manager (Linux)-Vorgang beheben.

Kurzbeschreibung

Patchvorgänge können aus verschiedenen Gründen fehlschlagen, und die Behebung von Fehlern kann je nach verwendetem Betriebssystem variieren. Sie können Fehler in der AWS-Managementkonsole oder in der API-Antwort finden. Die Konsolenausgabe wird jedoch auf 48.000 Zeichen gekürzt, was die Sichtbarkeit bestimmter Probleme einschränkt. Bei diesen Problemen empfiehlt es sich, die gesamte Ausgabe zu überprüfen, die auf dem verwalteten Knoten gespeichert ist. Sie können die an Amazon CloudWatch (CloudWatch) und Amazon Simple Storage Service (Amazon S3) gesendete Ausgabe auch zur weiteren Fehlerbehebung verwenden.

Die folgenden Fehler können auftreten, wenn ein Patch Manager (Linux)-Vorgang fehlschlägt:

  • Erlaubnis verweigert/Befehle konnten nicht ausgeführt werden
  • Payload kann nicht heruntergeladen werden
  • Keine solche Datei oder Verzeichnis
  • Ein anderer Prozess hat Yum Lock übernommen
  • Nicht unterstützte Kombination aus Package Manager und Python-Version
  • Betriebssystem wird nicht unterstützt
  • Ausgabe gekürzt

Behebung

Gehen Sie wie folgt vor, um Fehler zu beheben, die bei einem fehlgeschlagenen Patch Manager (Linux)-Vorgang auftreten können:

Erlaubnis verweigert/Befehle konnten nicht ausgeführt werden

Der folgende Beispielfehler tritt auf, wenn /var/lib/amazon mit noexec-Berechtigungen gemountet wird:

/var/lib/amazon/ssm/<instanceid>/document/orchestration/<commandid>/PatchLinux/_script.sh: Permission deniedfailed to run commands: exit status 126

Um diesen Fehler zu beheben, stellen Sie sicher, dass Sie exklusive Partitionen für /var/log/amazon und /var/lib/amazon konfiguriert haben und dass sie mit exec-Rechten gemountet sind.

Payload kann nicht heruntergeladen werden

Der folgende Beispielfehler tritt auf, wenn der verwaltete Knoten nicht über die erforderlichen Berechtigungen für den Zugriff auf den angegebenen Amazon S3-Bucket verfügt:

Unable to download payload: https://s3.DOC-EXAMPLE-BUCKET.region.amazonaws.com/aws-ssm-region/patchbaselineoperations/linux/payloads/patch-baseline-operations-X.XX.tar.gz.failed to run commands: exit status 156

Um diesen Fehler zu beheben, aktualisieren Sie Ihre Netzwerkkonfiguration und stellen Sie sicher, dass der regionale Amazon S3-Endpunkt erreichbar ist. Weitere Informationen finden Sie unter SSM Agent communications with AWS managed S3 buckets.

Keine solche Datei oder Verzeichnis

Der folgende Beispielfehler tritt aus den folgenden Gründen auf:

  • Zwei Befehle zur Ausführung von AWS-RunPatchBaseline wurden gleichzeitig auf demselben verwalteten Knoten ausgeführt.
  • Mangel an verfügbarem Speicherplatz im /var-Verzeichnis.
IOError: [Errno 2] No such file or directory: 'patch-baseline-operations-X.XX.tar.gz'
Unable to extract tar file: /var/log/amazon/ssm/patch-baseline-operations/patch-baseline-operations-1.75.tar.gz.
failed to run commands: exit status 155
Unable to load and extract the content of payload, abort.
failed to run commands: exit status 152

Gehen Sie wie folgt vor, um diesen Fehler zu beheben:

  • Stellen Sie sicher, dass kein Wartungsfenster zwei oder mehr Run Command-Tasks enthält, die AWS-RunPatchBaseline ausführen. Die Aufgaben können nicht dieselbe Prioritätsstufe haben und auf denselben Ziel-IDs ausgeführt werden. Ordnen Sie die Prioritätsstufen bei Bedarf neu an.
  • Stellen Sie sicher, dass nur eine State Manager-Zuordnung AWS-RunPatchBaseline nach demselben Zeitplan ausführt und auf dieselben verwalteten Knoten abzielt.
  • Geben Sie Speicherplatz im /var-Verzeichnis frei.

Ein anderer Prozess hat Yum Lock übernommen

Der folgende Beispielfehler tritt auf, wenn AWS-RunPatchBaseline auf einem verwalteten Knoten ausgeführt wird, auf dem Yum bereits läuft und ein anderer Prozess die Datenbank gesperrt hat:

MM/DD/YYYY HH:MM:SS root [INFO]: another process has acquired yum lock, waiting 2 s and retry.

Um diesen Fehler zu beheben, stellen Sie Folgendes sicher:

  • Keine State-Manager-Zuordnung, keine Aufgaben im Wartungsfenster oder andere Konfigurationen, die AWS-RunPatchBaseline nach einem Zeitplan ausführen, zielen gleichzeitig auf denselben verwalteten Knoten ab.
  • Es werden keine manuellen Yum-Operationen gleichzeitig ausgeführt.

Nicht unterstützte Kombination aus Package Manager und Python-Version

Der folgende Beispielfehler tritt auf, wenn eine unterstützte Version von Python 3 nicht auf der RHEL-, Debian Server-, Raspberry Pi- oder Ubuntu Server-Instance installiert ist:

An unsupported package manager and python version combination was found. Dnf requires Python 2 or Python 3 to be installed.

Um diesen Fehler zu beheben, installieren Sie eine Version von Python 3 (3.0-3.9) auf dem erforderlichen Server.

Betriebssystem wird nicht unterstützt

Der folgende Beispielfehler tritt auf, wenn ein Betriebssystem nicht unterstützt wird:

An error occurred (UnsupportedOperatingSystem) when calling the GetDeployablePatchSnapshotForInstance operation: patch_common.exceptions. PatchManagerError: ('Unsupported Operating System', 146)

Verwenden Sie ein unterstütztes Betriebssystem, um diesen Fehler zu beheben.

Ausgabe gekürzt

Dieser Fehler tritt auf, wenn der Patchvorgang fehlschlägt und die Konsolenausgabe gekürzt wird, was dazu führt, dass der Fehler nicht angezeigt werden kann. Die Konsolenausgabe wird auf 48.000 Wörter gekürzt.

Um diesen Fehler zu beheben, überprüfen Sie die gesamte Ausgabe der Instance an der folgenden Stelle:

**Hinweis:**Stellen Sie sicher, dass Sie alle example-Zeichenfolgen durch Ihre erforderlichen Werte ersetzen.

/var/lib/amazon/ssm/<example-instance-id>/document/orchestration/<example-command-id>/awsrunShellScript/PatchLinux/stdout

Sie können den Vorgang auch so konfigurieren, dass die Run Command-Ausgabe an Amazon S3 oder CloudWatch gesendet wird.

AWS OFFICIAL
AWS OFFICIALAktualisiert vor 10 Monaten