Wenn Sie die Speicherrichtlinie mithilfe von vSphere Client aus vCenter Server oder einem Namespace im Supervisor-Cluster entfernen, bleibt ihre übereinstimmende Speicherklasse zwar in der Kubernetes-Umgebung erhalten, sie kann aber nicht verwendet werden.
Problem
Bei der Ausführung des Befehls kubectl get sc wird die Speicherklasse in der Ausgabe weiterhin als im Namespace verfügbar angezeigt. Sie kann jedoch nicht verwendet werden. Wenn Sie beispielsweise versuchen, die Speicherklasse für eine neue Beanspruchung eines dauerhaften Volumes zu verwenden, schlägt dies fehl.
Falls die Speicherklasse bereits von einer Kubernetes-Bereitstellung verwendet wird, verhält sich die Bereitstellung möglicherweise unvorhersehbar.
Lösung
- Zur Überprüfung, welche Speicherklassen im Namespace vorhanden sind, führen Sie den Befehl kubectl describe namespace namespace_name aus.
Die Speicherklasse wird in der Ausgabe für diesen Befehl nicht aufgeführt, wenn die übereinstimmende Speicherrichtlinie entfernt wurde.
- Falls die Speicherklasse bereits von einer Bereitstellung verwendet wird, stellen Sie die Speicherklasse wieder her.
- Erstellen Sie mithilfe von vSphere Client eine neue Speicherrichtlinie und geben Sie ihr den Namen der von Ihnen entfernten Richtlinie.
- Weisen Sie die Richtlinie dem Namespace zu.
Nachdem Sie die Richtlinie dem Namespace zugewiesen haben, löscht
vSphere with Tanzu die alte Speicherklasse und erstellt eine übereinstimmende Speicherklasse mit demselben Namen.