1.2. Kubernetes NMState Operator 설치 제거
Kubernetes NMState Operator 및 관련 리소스가 더 이상 필요하지 않은 경우 제거합니다.
OLM(Operator Lifecycle Manager)을 사용하여 Kubernetes NMState Operator를 제거할 수 있지만 설계 OLM에서는 연결된 CRD(사용자 정의 리소스 정의), CR(사용자 정의 리소스) 또는 API 서비스를 삭제하지 않습니다.
OLM에서 사용하는 Subcription 리소스에서 Kubernetes NMState Operator를 제거하기 전에 삭제할 Kubernetes NMState Operator 리소스를 확인합니다. 이렇게 하면 실행 중인 클러스터에 영향을 주지 않고 리소스를 삭제할 수 있습니다.
Kubernetes NMState Operator를 다시 설치해야 하는 경우 CLI를 사용하여 Kubernetes NMState Operator 설치 또는 "웹 콘솔을 사용하여 Kubernetes NMState Operator 설치"를 참조하십시오.
사전 요구 사항
-
OpenShift CLI(
oc)가 설치되어 있습니다. -
jqCLI 툴을 설치했습니다. -
cluster-admin권한이 있는 사용자로 로그인합니다.
프로세스
다음 명령을 실행하여
Subcription리소스에서 Kubernetes NMState Operator를 구독 해제합니다.$ oc delete --namespace openshift-nmstate subscription kubernetes-nmstate-operatorKubernetes NMState Operator와 연결하는 CSV(
ClusterServiceVersion) 리소스를 찾습니다.$ oc get --namespace openshift-nmstate clusterserviceversionCSV 리소스를 나열하는 출력 예
NAME DISPLAY VERSION REPLACES PHASE kubernetes-nmstate-operator.v4.18.0 Kubernetes NMState Operator 4.18.0 SucceededCSV 리소스를 삭제합니다. 파일을 삭제한 후 OLM은 Operator에 대해 생성한
RBAC와 같은 특정 리소스를 삭제합니다.$ oc delete --namespace openshift-nmstate clusterserviceversion kubernetes-nmstate-operator.v4.18.0다음 명령을 실행하여
nmstateCR 및 관련배포리소스를 삭제합니다.$ oc -n openshift-nmstate delete nmstate nmstate$ oc delete --all deployments --namespace=openshift-nmstatenmstateCR을 삭제한 후console.operator.openshift.io/clusterCR에서nmstate-console-plugin콘솔 플러그인 이름을 제거합니다.다음 명령을 실행하여 활성화 플러그인 목록에 존재하는
nmstate-console-plugin항목의 위치를 저장합니다. 다음 명령은jqCLI 툴을 사용하여INDEX라는 환경 변수에 항목의 인덱스를 저장합니다.INDEX=$(oc get console.operator.openshift.io cluster -o json | jq -r '.spec.plugins | to_entries[] | select(.value == "nmstate-console-plugin") | .key')다음 patch 명령을 실행하여
console.operator.openshift.io/clusterCR에서nmstate-console-plugin항목을 제거합니다.$ oc patch console.operator.openshift.io cluster --type=json -p "[{\"op\": \"remove\", \"path\": \"/spec/plugins/$INDEX\"}]"-
INDEX는 보조 변수입니다. 이 변수에 대해 다른 이름을 지정할 수 있습니다.
-
선택 사항: CRD를 삭제한 후 복원할 수 있도록 CR 인스턴스를 유지하려면 다음 명령을 입력합니다.
$ oc get -A nncp -o yaml > cluster-nncp.yaml중요NNCPs와 같은 보존된 CR을 재사용하려면 Kubernetes NMState Operator를 제거하고 Kubernetes NMState Operator를 다시 설치한 다음 다음 명령을 실행하여 CR을 복원해야 합니다.
$ oc apply -f cluster-nncp.yaml다음 명령을 실행하여
nmstates.nmstate.io와 같은 모든 CRD를 삭제합니다.$ oc delete crd nmstates.nmstate.io$ oc delete crd nodenetworkconfigurationenactments.nmstate.io$ oc delete crd nodenetworkstates.nmstate.io$ oc delete crd nodenetworkconfigurationpolicies.nmstate.io네임스페이스를 삭제합니다.
$ oc delete namespace openshift-nmstate