PowerFlex Manager: RKE2-Upgrade schlägt wiederholt fehl aufgrund des Fehlers "405 Not Allowed".
Summary: PowerFlex Manager: Das RKE2-Upgrade schlägt wiederholt fehl aufgrund des Fehlers "405 Not Allowed" während der Erstellung der Upgrade-Payload Während des Upgrades der PowerFlex Management Platform (PFMP) schlägt der Prozess wiederholt fehl und wird bei der Erstellung des Upgrade-Payload-Ordners in der HTTP-Freigabe in einer Schleife ausgeführt. Der Fehler tritt mit dem Fehler "HTTP 405 Not Allowed" auf. ...
Symptoms
Betroffene Version:
PowerFlex Manager 4.x
Wenn ein Nutzer ein RKE2-Upgrade im Rahmen des PFMP-Upgrades durchführt, treten die folgenden Symptome auf:
- Der Upgradeprozess lädt das Bundle kontinuierlich herunter, schlägt jedoch während der Payload-Erstellungsphase fehl.
- Protokolle aus dem
alcmPod zeigt den Fehler "405 Not Allowed" an, während versucht wird, den Upgrade-Payload-Ordner in der HTTP-Freigabe zu erstellen2024-11-30T06:37:50.452413347-06:00 stdout F 2024-11-30 12:37:50 [pool-2-thread-1] (UpgradePFMP.java:168) [INFO] Starting PFMP upgrade .. 2024-11-30T06:49:06.712045703-06:00 stdout F 2024-11-30 12:49:06 [pool-2-thread-1] (UpgradePFMP.java:718) [DEBUG] PFMP Bundle download progress 100% .. 2024-11-30T06:53:47.628162548-06:00 stdout F 2024-11-30 12:53:47 [pool-2-thread-1] (UpgradePFMP.java:1681) [INFO] Current RKE2 version: 1.25.3 2024-11-30T06:53:47.629703367-06:00 stdout F 2024-11-30 12:53:47 [pool-2-thread-1] (UpgradePFMP.java:1688) [INFO] Available RKE2 version: 1.26.13 ... 024-11-30T06:54:02.071950984-06:00 stdout F 2024-11-30 12:54:02 [pool-2-thread-1] (ExecuteSystemCommands.java:106) [DEBUG] Moving RKE2 artifacts to upgrade-artifacts folder . . . 2024-11-30T06:54:02.344803044-06:00 stdout F 2024-11-30 12:54:02 [pool-2-thread-1] (ExecuteSystemCommands.java:106) [DEBUG] /opt/Dell/ASM/temp/upgrade853246658060560317/Upgrade/prepare-upgrade.sh: line 264: kubectl: command not found 2024-11-30T06:54:02.368496491-06:00 stdout F 2024-11-30 12:54:02 [pool-2-thread-1] (ExecuteSystemCommands.java:106) [DEBUG] Creating upgrade payload folder in http-share . . .<html> 2024-11-30T06:54:02.368527723-06:00 stdout F 2024-11-30 12:54:02 [pool-2-thread-1] (ExecuteSystemCommands.java:106) [DEBUG] <head><title>405 Not Allowed</title></head> 2024-11-30T06:54:02.368533448-06:00 stdout F 2024-11-30 12:54:02 [pool-2-thread-1] (ExecuteSystemCommands.java:106) [DEBUG] <body> 2024-11-30T06:54:02.368548798-06:00 stdout F 2024-11-30 12:54:02 [pool-2-thread-1] (ExecuteSystemCommands.java:106) [DEBUG] <center><h1>405 Not Allowed</h1></center> 2024-11-30T06:54:02.368553418-06:00 stdout F 2024-11-30 12:54:02 [pool-2-thread-1] (ExecuteSystemCommands.java:106) [DEBUG] <hr><center>nginx/1.21.5</center> 2024-11-30T06:54:02.368565659-06:00 stdout F 2024-11-30 12:54:02 [pool-2-thread-1] (ExecuteSystemCommands.java:106) [DEBUG] </body> 2024-11-30T06:54:02.36859845-06:00 stdout F 2024-11-30 12:54:02 [pool-2-thread-1] (ExecuteSystemCommands.java:106) [DEBUG] </html> 2024-11-30T06:54:02.369264313-06:00 stdout F 2024-11-30 12:54:02 [pool-2-thread-1] (ExecuteSystemCommands.java:106) [DEBUG] done.
Cause
PFMP verlässt sich für RKE2-Upgrades auf Node-Ebene auf httpshare-ingress-upload, wodurch der Upload von Node-Upgrademodulen ermöglicht wird.
Ein von der Dell Support-Website bereitgestelltes Skript "CMO_Patch.zip" schränkte die HTTP-Freigabe-Uploadfunktionen ein, um eine Sicherheitslücke zu beheben, was zu Upgradefehlern führte.
Resolution
Problemumgehung
-
Stellen Sie sicher, dass httpshare-ingress-upload ingress nicht vorhanden ist.
kubectl get ingress -A | egrep httpshare-ingress
-
Übertragen Sie die YAML-Datei:
Kopieren Sie die an diesen Wissensdatenbank-Artikel angehängte Datei "httpshare-ingress-upload.zip" auf einen der MVM-Nodes und extrahieren Sie sie. -
Wenden Sie die Ingress-Korrektur an:
Melden Sie sich beim MVM-Node an, navigieren Sie zu dem Verzeichnis, in dem die YAML-Datei gespeichert ist, und wenden Sie die Einstellungen an:kubectl apply -f httpshare-ingress-upload.yaml
-
Überprüfen Sie die Ingress-Erstellung:
Stellen Sie sicher, dass der httpshare-ingress-upload-Eingang erfolgreich erstellt wurde. Es kann 15 bis 30 Sekunden dauern, bis die IP-Adressen ausgefüllt werden. Überprüfen Sie mit:kubectl get ingress -n powerflex | egrep -i httpshare
-
Starten Sie den alcm-Pod neu
kubectl delete pod $(kubectl get pods -n powerflex | egrep alcm | awk '{print $1}') -n powerflex -
Überprüfen Sie die ACLM-Pod-Protokolle, um festzustellen, ob das Upgrade ausgeführt wird. Falls nicht, wiederholen Sie das PFMP-Upgrade:
Starten Sie den Upgradeprozess erneut. Das Problem sollte nun behoben sein.
Aktionen nach dem Upgrade:
Sobald das PFMP-Upgrade abgeschlossen ist, führen Sie die folgenden Schritte basierend auf Ihrer PFMP-Version aus:
-
Für Systeme, auf denen PFMP-Versionen vor 4.6.1 ausgeführt werden:
- Wenden Sie das CVE-Korrekturtool (CMO_Patch.zip) erneut an, um eine kontinuierliche Sicherheitscompliance sicherzustellen. Siehe KB-Korrektur für PowerFlex Manager CVE-2024-37143 (Dell Supportkonto erforderlich, um diesen Artikel aufzurufen)
Hinweis: Für zukünftige Upgrades muss der oben genannte Workaround erneut angewendet werden, es sei denn, das System wird auf Version 4.6.1 oder höher aktualisiert.
- Wenden Sie das CVE-Korrekturtool (CMO_Patch.zip) erneut an, um eine kontinuierliche Sicherheitscompliance sicherzustellen. Siehe KB-Korrektur für PowerFlex Manager CVE-2024-37143 (Dell Supportkonto erforderlich, um diesen Artikel aufzurufen)
-
Für Systeme mit PFMP-Version 4.6.1 oder höher:
- Nach dem Upgrade sind keine weiteren Maßnahmen erforderlich.
Behoben in Version: PowerFlex Manager 4.6.1
Additional Information
Wichtig
Wenn die PFMP-Installation (PowerFlex Manager) zuvor als Root-Nutzer durchgeführt wurde, stellen Sie sicher, dass die Eigentumsrechte der folgenden Verzeichnisse entsprechend aktualisiert werden, bevor Sie mit dem PFMP-Upgrade fortfahren. Weitere Informationen finden Sie unter PowerFlex Management Platform – PFXM-Upgrade schlägt bei Aufgabe fehl Zielverzeichnis für Artefakte löschen