BUG

Die Anwendung des ArcGIS Server Log4j Patch auf eine AWS-Bereitstellung (Amazon Web Services) kann dazu führen, dass ein Computer aus der ArcGIS Server-Site entfernt wird

Last Published: April 18, 2022

Beschreibung

Die Anwendung des ArcGIS Server Log4j Patch auf eine AWS-Bereitstellung (Amazon Web Services) kann dazu führen, dass ein Computer aus der ArcGIS Server-Site entfernt wird. Mit dem angehängten Skript kann dieses Problem verhindert und behoben werden.
 

Wichtiger Hinweis vom 11. April 2022: Es wurden neue Patches veröffentlicht, um das Auftreten dieses Fehlers (BUG-000148146) auf AWS-Bereitstellungen (Amazon Web Services) zu verhindern. Die B-Patches der betroffenen Versionen (10.9.110.910.8.1) werden zusätzlich zu den ursprünglichen Patches installiert, insofern Sie die ursprünglichen Patches zuvor installiert haben. Wenn Sie die ursprünglichen Patches zuvor installiert haben, befolgen Sie bitte die Schritte in diesem technischen Artikel, um sicherstellen, dass in Ihrem System keine Probleme auftreten, wenn nach einem Computerneustart ArcGIS Server-Computer aus einer Site entfernt werden. Wenn Sie die ursprünglichen Patches zuvor nicht installiert haben und nur die "B"-Version des Patch installieren, sollte kein Problem auftreten.


Das Skript wird bereitgestellt, um die Fehler zu beheben, die nach der Installation des ArcGIS Server Log4j Patch für die Versionen 10.8.1, 10.9 und 10.9.1 in einer AWS-Bereitstellung aufgetreten sind.
 

  • Das Problem tritt nur auf, wenn Version 1 des AWS-Metadatendienstes deaktiviert ist.  Es wirkt sich auf alle ArcGIS Server-Sites aus, die von Cloud Builder oder den von Esri bereitgestellten Vorlagen für CloudFormation erstellt wurden.  Bei der manuellen Installation aktiviert Amazon standardmäßig Version 1 des AWS-Metadatendienstes.
  • Das Problem tritt auf, wenn ArcGIS Server nach der Installation des Log4j-Patch neu gestartet wurde.  ArcGIS Server wird nach der Patch-Installation möglicherweise einige Zeit ordnungsgemäß ausgeführt.
  • Unabhängig von der aktivierten Version des AWS-Metadatendienstes wird die Ausführung des Skripts empfohlen, um sicherzustellen, dass das Problem später nicht mehr auftritt.
  • Das angehängte Skript ist für AWS-Bereitstellungen auf der Grundlage der AWS AMIs von Esri oder für Bereitstellungen konzipiert, die mit Cloud Builder oder den von Esri bereitgestellten Vorlagen für CloudFormation erstellt wurden.  Wenn die Bereitstellung manuell konfiguriert wurde, sind Sie von diesem Bug möglicherweise nicht betroffen.  Wenden Sie sich an den technischen Support von Esri, falls Sie weitere Unterstützung benötigen.

Problemumgehung

Das angehängte Python-Skript muss heruntergeladen und auf allen AWS-EC2-Instanzen ausgeführt werden, auf denen der Patch ausgeführt wurde. Die Schritte variieren etwas, je nachdem, ob das Problem aufgetreten ist oder ob es latent ist (bis zum nächsten Neustart des ArcGIS-Server-Service).

Laden Sie entweder die ZIP-Datei (für Windows) oder die TAR.GZ-Datei (für Linux) herunter. Vergewissern Sie sich, dass die Datei nicht manipuliert wurde, indem Sie wie folgt die SHA256-Prüfsumme berechnen:

Berechnen der Prüfsumme unter Windows

  1. Starten Sie Powershell.
  2. Wechseln Sie in das Verzeichnis, in dem sich die Zip-Datei befindet.
  3. Geben Sie den folgenden Befehl ein:
Get-FileHash log4jserverpatchfix.zip
  1. Stellen Sie sicher, dass der Hash wie folgt lautet:
2C73CC8233770F65C5760D1872630DA41A58574D39DD4A1D353D1CDB976D1645

Berechnen der Prüfsumme unter Linux

  1. Starten Sie eine Shell.
  2. Ändern Sie das Verzeichnis in das Verzeichnis der TAR.GZ-Datei.
  3. Geben Sie den folgenden Befehl ein:
sha256sum log4jserverpatchfix.tar.gz
  1. Stellen Sie sicher, dass der Hash wie folgt lautet:
48861fa6ec6646d425d5952c33d9eff2eaae58fb90b458b48800d1ced51969be

Extrahieren
Laden Sie die Python-Datei als ZIP- oder TAR.GZ-Datei herunter, und extrahieren Sie sie.

Ausführung des Skripts
Die allgemeine Syntax für die Ausführung des Python-Skripts lautet wie folgt:

python3 log4jserverpatchfix.py <Installationsverzeichnis> [Eigenschaftendatei]

Das Installationsverzeichnis ist immer erforderlich. Die Eigenschaftendatei muss nur angegeben werden, wenn das Problem bereits aufgetreten ist (der Computer wurde aus der Site entfernt).

Windows:

  1. Öffnen Sie eine Eingabeaufforderung.
  2. Ändern Sie das Verzeichnis in das Verzeichnis, wo Sie das Skript abgelegt haben.
  3. Führen Sie den Python-Befehl aus: 
"C:\Program Files\ArcGIS\Server\framework\runtime\ArcGIS\bin\Python\envs\arcgispro-py3\python.exe" log4jserverpatchfix.py "C:\Program Files\ArcGIS\Server"

Linux:

  1. Starten Sie eine Shell.
  2. Ändern Sie das Verzeichnis in das Verzeichnis, wo Sie das Skript abgelegt haben.
  3. Führen Sie den Python-Befehl aus:
python3 log4jserverpatchfix.py /arcgis/server

Eigenschaftendatei:
Die Eigenschaftendatei "log4jserverpatchfix.txt" ist im Download enthalten und wird benötigt, um die Verbindung zum Konfigurationsspeicher von ArcGIS Server wieder herzustellen, wenn der Computer aus der Site entfernt wurde. Eine Beispieltextdatei ist dem Skript beigefügt. Für jede zu aktualisierende Instanz (bzw. jeden zu aktualisierenden Computer) sind folgende Eigenschaften erforderlich und müssen im kommagetrennten Format aufgelistet werden:

  • private IP-Adresse
  • Verbindungszeichenfolge des Konfigurationsspeichers
  • Pfad des lokalen Repositorys

Private IP
Unter Windows wird die private IP normalerweise in der oberen rechten Ecke auf dem Desktop angezeigt, wie in der folgenden Abbildung dargestellt.

Picture1.png

Unter Linux kann die private IP vom Terminal abgerufen werden, indem Sie wie in der folgenden Abbildung $ ip addr ausführen:

Picture2.png

Bei der ersten IP-Adresse handelt es sich um die Loopback-IP-Adresse, die zweite ist die private IP-Adresse.

Verbindungszeichenfolge des Konfigurationsspeichers
Wenn der Konfigurationsspeicher von ArcGIS Server in AWS auf Dateisystemebene gespeichert ist, lautet der Pfad sehr wahrscheinlich "\\DATEISERVER\config-store" unter Windows oder "/net/DATEISERVER/gisdata/arcgisserver/config-store" unter Linux.

Wenn Sie einen ArcGIS-Server mit hoher Verfügbarkeit verwenden, werden die Einstellungen (der Konfigurationsspeicher) in AWS DynamoDB gespeichert. Um ArcGIS Server mitzuteilen, wie die Verbindung zu DynamoDB hergestellt wird, müssen Sie die Regions-ID (z. B. "us-west-2") sowie Informationen über die DynamoDB-Tabelle abrufen.

Die Region kann in der oberen rechten Ecke der AWS Console wie in der folgenden Abbildung dargestellt abgerufen werden, indem Sie auf die Schaltfläche für die Region klicken.  Wenn Sie auf die Region klicken, werden sowohl der Name (z. B. "US West (Oregon)") als auch die Regions-ID ("us-west-2") angezeigt.  Die Regions-ID wird für die Eigenschaftendatei benötigt, wie in der folgenden Abbildung dargestellt:

Picture3.png

Die DynamoDB-Informationen können abgerufen werden, indem Sie in der AWS Console zu DynamoDB navigieren und im linken Menü auf Tables klicken.  Das Hauptfenster sollte jetzt der folgenden Abbildung ähneln.

Picture4.png

In den Tabellen des Hauptfensters werden Einträge wie "ArcGISConfigStore.NAMESPACE" angezeigt.  Bei "NAMESPACE" handelt es sich um den Namespace, den Sie zur Wiederherstellung der Verbindung verwenden müssen.

Pfad des lokalen Repositorys
Der Pfad des lokalen Repositorys ist die letzte Information, die in der Eigenschaftendatei benötigt wird. Hierbei handelt es sich um einen Ordner auf dem Computer, in dem eine lokale Kopie der Einstellungen gespeichert wird.  Die Standardverzeichnisse für diese Ordner lauten wie folgt:

  • Windows: C:\arcgisserver\local
  • Linux: /arcgis/server/usr/local

Nach Ausführung des Skripts muss der ArcGIS-Server-Service neu gestartet werden, damit die Änderungen wirksam werden.

Artikel-ID:000027487

Hilfe von ArcGIS-Expert*innen erhalten

Technischen Support kontaktieren

Die Esri Support-App herunterladen

Zu den Download-Optionen

Zugehörige Informationen

Weitere Informationen zu diesem Thema erkunden