Wie lösche ich Operator Lifecycle Manager-Komponenten?
Operator Lifecycle Manager (OLM) ist auf Clustern, auf denen Kubernetes Version 1.23 oder höher ausgeführt wird, nicht installiert oder verwaltet. In Clustern, für die ein Upgrade von Version 1.22 auf Version 1.23 oder höher durchgeführt wurde, sind die OLM-Komponenten möglicherweise noch installiert. Wenn Sie keine OLM-Komponenten in Ihrem Cluster verwenden, führen Sie die folgenden Schritte aus, um sie zu entfernen.
Wenn Sie die Komponenten von OLM weiterhin in Ihrem Cluster verwenden möchten oder wenn Sie OLM auf einem Cluster installieren und ausführen möchten, auf dem die Version 1.23 oder höher läuft, müssen Sie die Updates selbst verwalten. Siehe die Open-Source-Dokumentation OLM.
-
Vergewissern Sie sich, dass der Operator OLM installiert ist.
kubectl get deploy -n ibm-system olm-operatorBeispielausgabe
NAME READY UP-TO-DATE AVAILABLE AGE olm-operator 1/1 1 1 6mo -
Prüfen Sie, ob Sie die Versionen 1.4 bis 1.9 des Add-ons Istio verwenden. Istio die Versionen 1.4 bis 1.9 werden nicht unterstützt und verwenden OLM. Wenn Sie diese Versionen verwenden, aktualisieren Sie auf eine unterstützte Version des Add-ons Istio, die den Operator OLM nicht verwendet. Nachdem Sie auf eine unterstützte Version von Istio aktualisiert haben, können Sie den Operator OLM löschen.
ibmcloud ks cluster addons -c CLUSTERIn dieser Beispielausgabe wird OLM noch von der Add-on-Version Istio 1.5 verwendet. Führen Sie ein Upgrade des Add-ons durch und fahren Sie anschließend mit diesen Schritten fort.
NAME Version Health State Health Status istio 1.5 normal Addon Ready -
Prüfen Sie, ob Operatoren im Gebrauch sind, die über OLM bereitgestellt wurden, indem Sie die Cluster-Service-Versionen auflisten.
kubectl get clusterserviceversions -ABeispielausgabe eines Operators, der über OLMbereitgestellt wurde
NAMESPACE NAME DISPLAY VERSION REPLACES PHASE kubernetes-operator-lifecycle-manager packageserver Package Server 0.19.0 SucceededWenn in der Ausgabe
clusterserviceversionsaufgeführt ist, verwenden Sie immer noch Operatoren, die über OLM verwaltet werden. Sie können OLM weiterhin verwenden, sind aber für die Verwaltung der Updates verantwortlich. Bei den folgenden Schritten wird davon ausgegangen, dass Sie OLM nicht mehr verwenden, und es werden Anweisungen zum Aufräumen gegeben. Fahren Sie nicht fort, wenn Sie noch OLM verwenden. -
Wenn in der Ausgabe von Schritt 3 keine
clusterserviceversions-Instanzen vorhanden waren, verwenden Sie OLMnicht. Sie können jetzt eine Liste der Ressourcen abrufen, die von OLM erstellt wurden, und sie entfernen. -
Rufen Sie für jede CRD in der folgenden Liste die angepassten Ressourcen (CRs) für alle Namensbereiche ab.
kubectl get catalogsources.operators.coreos.com -A kubectl get clusterserviceversions.operators.coreos.com -A kubectl get installplans.operators.coreos.com -A kubectl get operatorgroups.operators.coreos.com -A kubectl get operators.operators.coreos.com -A kubectl get subscriptions.operators.coreos.com -A -
Wenn Sie CRs finden, bestimmen Sie, ob Sie diese Ressourcen noch benötigen.
- Möglicherweise werden weiterhin die Operatorgruppen
olm-operatorsundibm-operatorsangezeigt, die von OLMbereitgestellt wurden. Diese Operatorgruppen waren Teil der Installation von OLM. Da Sie in den vorherigen Schritten keinecluseterserviceversions-Instanzen haben, verwenden Sie diese Operatorgruppen nicht mehr. - Wenn Sie in der Vergangenheit die Version 1.4- 1.9 des Add-ons Istio installiert hatten, sehen Sie möglicherweise noch die Ressource
istiooperators.operators.coreos.comim Namensraumibm-operators. Wenn Sie Istio mindestens auf die Version 1.10 aktualisiert haben, benötigen Sie diese Ressource nicht mehr. - Wenn Sie andere CRs finden, besteht die Möglichkeit, dass Sie sie nicht verwenden, da Sie in den vorherigen Schritten keine
clusterserviceversions-Instanzen hatten. Überprüfen Sie jedoch jede CR mit Ihrem Clusteradministrator von Fall zu Fall, um zu ermitteln, ob sie noch verwendet werden.
Die folgenden Schritte gehen davon aus, dass Sie die Überprüfung abgeschlossen haben und führen Sie durch das Löschen von OLM.
- Möglicherweise werden weiterhin die Operatorgruppen
-
Wenn Sie festgestellt haben, dass OLM nicht vom Add-on Istio oder anderen Operatoren verwendet wird, führen Sie die folgenden Befehle separat aus, um die Ressourcen von OLM zu löschen.
kubectl delete clusterrole aggregate-olm-edit kubectl delete clusterrole aggregate-olm-view kubectl delete deploy -n ibm-system catalog-operator kubectl delete deploy -n ibm-system olm-operator kubectl delete clusterrole system:controller:operator-lifecycle-manager kubectl delete serviceaccount -n ibm-system olm-operator-serviceaccount kubectl delete clusterrolebinding olm-operator-binding-ibm-system kubectl delete operatorgroup -n ibm-operators ibm-operators kubectl delete operatorgroup -n ibm-system olm-operators kubectl delete service -n ibm-system catalog-operator-metrics kubectl delete service -n ibm-system olm-operator-metrics -
Löschen Sie alle nicht verwendeten CRs und anschließend die von OLMinstallierten angepassten Ressourcendefinitionen (Custom Resource Definitions, CRD).
kubectl delete catalogsources.operators.coreos.com NAME -n NAMESPACEkubectl delete crd catalogsources.operators.coreos.com -
Wiederholen Sie die vorherigen Schritte für jede der folgenden CRDs.
catalogsources.operators.coreos.comclusterserviceversions.operators.coreos.cominstallplans.operators.coreos.comoperatorgroups.operators.coreos.comoperators.operators.coreos.comsubscriptions.operators.coreos.com