이 페이지에서는 VMware용 GKE 관리자 클러스터를 삭제하는 방법을 설명합니다.
시작하기 전에
관리자 클러스터를 삭제하기 전에 다음 단계를 완료하세요.
- 사용자 클러스터를 삭제합니다. 사용자 클러스터 삭제를 참조하세요.
- PodDisrashionBudget(PDB)을 사용하는 모든 워크로드를 관리자 클러스터에서 삭제합니다.
- PersistentVolume과 같은 모든 외부 객체를 관리자 클러스터에서 삭제합니다.
삭제하려는 관리자 클러스터의 kubeconfig를 가리키는
KUBECONFIG
환경 변수를 설정합니다.export KUBECONFIG=[ADMIN_CLUSTER_KUBECONFIG]
여기서 [ADMIN_CLUSTER_KUBECONFIG]는 관리자 클러스터의 kubeconfig 파일 경로입니다.
관리자 클러스터 등록 취소
관리자 클러스터가 Google Cloud Fleet에 등록되면 지금 등록 취소합니다.
로깅 및 모니터링 삭제
StatefulSet에서 배포된 VMware용 GKE의 로깅 및 모니터링 포드는 노드가 제대로 드레이닝되지 않도록 하는 PDB를 사용합니다. 관리자 클러스터를 올바르게 삭제하려면 이 포드를 삭제해야 합니다.
로깅 및 모니터링 포드를 삭제하려면 다음 명령어를 실행합니다.
kubectl delete monitoring --all -n kube-system kubectl delete stackdriver --all -n kube-system
모니터링을 삭제하면 StatefulSet와 연결된 PersistentVolume(PV)이 삭제되지만 Stackdriver용 PersistentVolume은 별도로 삭제해야 합니다.
Stackdriver PV 삭제는 선택사항입니다. PV를 삭제하지 않기로 선택한 경우 사용자 클러스터 밖 외부 위치에 연결된 PV의 위치와 이름을 기록합니다.
PV 삭제는 영구 볼륨 신청(PVC) 삭제를 통해 전파됩니다.
Stackdriver PVC를 찾으려면 다음 명령어를 실행합니다.
kubectl get pvc -n kube-system
PVC를 삭제하려면 다음 명령어를 실행합니다.
kubectl delete pvc -n kube-system [PVC_NAME]
로깅 및 모니터링 삭제 확인
로깅과 모니터링이 삭제되었는지 확인하려면 다음 명령어를 실행합니다.
kubectl get pvc -n kube-system kubectl get statefulsets -n kube-system
관리자 클러스터의 F5 파티션 정리
관리자 클러스터에서 gke-system
네임스페이스를 삭제하면 F5 파티션이 올바르게 정리되므로 다른 관리자 클러스터에서 파티션을 재사용할 수 있습니다.
gke-system
네임스페이스를 삭제하려면 다음 명령어를 실행합니다.
kubectl delete ns gke-system
그런 다음 LoadBalancer 유형의 나머지 서비스를 삭제합니다. 모든 서비스를 나열하려면 다음 명령어를 실행합니다.
kubectl get services --all-namespaces
LoadBalancer 유형의 서비스마다 다음 명령어를 실행하여 삭제합니다.
kubectl delete service [SERVICE_NAME] -n [SERVICE_NAMESPACE]
그런 다음 F5 BIG-IP 콘솔에서 다음을 수행합니다.
- 콘솔의 오른쪽 상단 구석에서 정리할 파티션으로 전환합니다.
- 로컬 트래픽 > 가상 서버 > 가상 서버 목록을 선택합니다.
- 가상 서버 메뉴에서 모든 가상 IP를 삭제합니다.
- 풀을 선택한 다음 모든 풀을 삭제합니다.
- 노드를 선택한 후 모든 노드를 삭제합니다.
F5 파티션이 깨끗한지 확인
CLI
다음 명령어를 실행하여 VIP가 다운되었는지 확인합니다.
ping -c 1 -W 1 [F5_LOAD_BALANCER_IP]; echo $?
VIP가 다운되면 1
이 반환됩니다.
F5 UI
파티션이 F5 사용자 인터페이스에서 삭제되었는지 확인하려면 다음 단계를 수행합니다.
- 오른쪽 상단 구석에서 파티션 드롭다운 메뉴를 클릭합니다. 관리자 클러스터의 파티션을 선택합니다.
- 왼쪽 기본 메뉴에서 로컬 트래픽 > 네트워크 맵을 선택합니다. 로컬 트래픽 네트워크 맵 아래에는 아무것도 표시되지 않습니다.
- 로컬 트래픽 > 가상 서버에서 노드를 선택한 다음 노드 목록을 선택합니다. 여기에도 아무것도 표시되지 않습니다.
남아 있는 항목이 있으면 UI에서 수동으로 삭제합니다.
관리 노드 머신 종료
먼저 이 명령어를 실행하여 머신 이름을 가져온 후에 종료합니다.
kubectl get machines -o wide
이 출력에 머신 이름이 나열됩니다. 이제 vSphere UI에서 이를 확인할 수 있습니다.
관리자 제어 영역 노드 머신을 삭제하려면 vSphere 리소스 풀에 남아 있는 각각의 관리자 VM을 종료해야 합니다.
vSphere UI
다음 단계를 수행합니다.
- vSphere 메뉴의 vSphere 리소스 풀에서 VM을 선택합니다.
- VM 메뉴 상단에 있는 작업을 클릭합니다.
- 전원 > 전원 끄기를 선택합니다. VM이 종료되는 데 몇 분 정도 걸릴 수 있습니다.
관리 노드 머신 삭제
VM이 종료되면 VM을 삭제할 수 있습니다.
vSphere UI
다음 단계를 수행합니다.
- vSphere 메뉴의 vSphere 리소스 풀에서 VM을 선택합니다.
- VM 메뉴 상단에 있는 작업을 클릭합니다.
- 디스크에서 삭제를 클릭합니다.
데이터 디스크 삭제
VM을 삭제한 후에 데이터 디스크를 삭제할 수 있습니다.
vSphere UI
다음 단계를 수행합니다.
- vSphere 메뉴에서 관리자 클러스터 구성 파일의
vCenter.dataDisk
필드에 지정된 대로 데이터 스토어에서 데이터 디스크를 선택합니다. - Datastore 메뉴 중간에 있는 삭제를 클릭합니다.
checkpoint.yaml
파일 삭제
DATA_DISK_NAME‑checkpoint.yaml 파일은 데이터 디스크와 동일한 폴더에 있습니다. 여기서 DATA_DISK_NAME은 데이터 디스크의 이름입니다. 이 파일을 삭제합니다.
완료 후
관리자 클러스터 삭제가 완료되면 해당 클러스터의 kubeconfig를 삭제합니다.