Fehlerbehebung bei der „Regional File Storage “-Verschlüsselung während der Übertragung

Virtual Private Cloud

Nutzen Sie die folgenden Themen zur Fehlerbehebung, um Probleme mit der „Regional File Storage “ (RFS)-Verschlüsselung während der Übertragung (EIT) zu beheben.

RFS EIT ist als Beta-Funktion verfügbar und wird ausschließlich für experimentelle Zwecke empfohlen. Verwenden Sie diese Funktion nicht in Produktionsumgebungen.

Warum bleibt mein PVC bei „Pending“ mit dem Status „ 'rfs' profile is not accessible “ hängen?

Ihr PVC befindet sich nach der Erstellung weiterhin im Status „ Pending “, und in den PVC-Ereignissen wird eine Fehlermeldung angezeigt, die in etwa wie folgt lautet:

'rfs' profile is not accessible

Möglicherweise ist Ihr Konto nicht in der Whitelist für das Profil „ rfs “ aufgeführt, oder Ihr Cluster verfügt nicht über die erforderlichen IAM-Berechtigungen für VPC-Dateifreigabevorgänge.

Problemlösung:

  1. Überprüfen Sie die PVC-Ereignisse, um den Fehler zu bestätigen.

    oc describe pvc <pvc-name>
    

    Suchen Sie nach „ 'rfs' profile is not accessible “ in der Rubrik „ Events “. Wenn dieser Fehler auftritt, muss Ihr Konto für das Profil „ rfs “ auf die Whitelist gesetzt werden.

  2. Wenn der Fehler „ 'rfs' profile is not accessible “ lautet, eröffnen Sie bitte ein VPC-Support-Ticket, um Zugriff zu beantragen. Nachdem Ihr Konto auf die Whitelist gesetzt wurde, starten Sie die CSI-Treiber-Knoten-Pods neu.

    oc rollout restart daemonset ibm-vpc-file-csi-node -n kube-system
    
  3. Falls das PVC stattdessen Fehler im Zusammenhang mit Berechtigungen anzeigt, überprüfen Sie, ob Ihr Cluster über die erforderlichen IAM-Berechtigungen für VPC-Dateifreigabevorgänge verfügt.

Warum lässt sich mein Pod mit dem Befehl „ stunnel manager is not initialized “ nicht einbinden?

In Ihrem Pod wird ein „ FailedMount “-Ereignis mit einem Fehler angezeigt, der in etwa wie folgt lautet.

stunnel manager is not initialized, this indicates a configuration error.
Restart the file csi node server pod from kube-system namespace where the
application is running and check if the issue is resolved.

Der Stunnel-Manager im CSI-Knoten-Server-Pod auf dem betroffenen Worker-Knoten wurde nicht initialisiert, was auf einen Konfigurationsfehler auf diesem Knoten hindeutet.

Problemlösung:

  1. Suchen Sie den CSI-Knoten-Server-Pod, der auf demselben Knoten wie Ihr Anwendungs-Pod ausgeführt wird. Notieren Sie sich den Namen des Knotens, auf dem Ihr Pod eingeplant ist.

    oc get pod <app-pod-name> -o wide
    
  2. Starten Sie den CSI-Knoten-Server-Pod auf diesem Knoten.

    oc get pods -n kube-system -l app=ibm-vpc-file-csi-node \
      --field-selector spec.nodeName=<node-name>
    
  3. Löschen Sie den CSI-Knoten-Server-Pod, damit er automatisch neu gestartet wird.

    oc delete pod -n kube-system <csi-node-pod>
    
  4. Warten Sie, bis der Pod neu gestartet ist und den Status „ Running “ erreicht hat, und versuchen Sie es dann erneut mit Ihrem Anwendungs-Pod.

    oc get pods -n kube-system -l app=ibm-vpc-file-csi-node
    

    Sollte das Problem nach dem Neustart des Pods weiterhin bestehen, erstellen Sie bitte ein Support-Ticket beim „ IBM Cloud “-Container-Storage-Team.

Warum kann meine Anwendung mit „ hostNetwork: true “ keinen Port binden?

Ein Anwendungs-Pod, der „ hostNetwork: true “ verwendet, schlägt beim Start mit folgendem Fehler fehl.

Address already in use

RFS EIT belegt pro PVC-Mount einen Port im Bereich von 11300 bis 11599 auf 127.0.0.1. Ein Anwendungs-Pod, der „ hostNetwork: true “ verwendet und versucht, eine Verbindung zu einem Port in diesem Bereich herzustellen, steht in Konflikt mit einer bestehenden RFS-EIT-PVC-Einbindung auf demselben Knoten.

Um das Problem zu beheben, wählen Sie eine der folgenden Optionen:

  • Reduzieren Sie die Auslastung aller Anwendungen, die RFS-EIT-Dateifreigaben nutzen, und erhöhen Sie sie anschließend wieder. Nach der Skalierung beziehen die Anwendungs-Pods unterschiedliche Ports aus dem Zuweisungsbereich, wodurch der Konflikt behoben wird.
  • Greifen Sie auf die Anwendung über eine „ Kubernetes “-Ressource ( Service ) zu, anstatt sich auf Host-Ports zu verlassen ( hostNetwork: true). Dadurch wird der Port-Konflikt vollständig vermieden.