사용자 클러스터 삭제

사용자 클러스터를 삭제하려면 사용자 클러스터 관리자 역할(user-cluster-admin 역할)이 있어야 합니다.

사용자 클러스터를 삭제하려면 다음 단계를 완료하세요.

콘솔

  1. 탐색 메뉴에서 클러스터를 선택합니다.

  2. 클러스터 목록에서 삭제할 클러스터를 클릭합니다.

  3. 삭제 클러스터 삭제를 클릭합니다.

  4. 메시지가 표시되면 제공된 확인 문구를 입력하고 삭제를 클릭하여 클러스터를 삭제합니다.

kubectl

  1. 사용자 클러스터의 GDCH Cluster 커스텀 리소스의 조정 작업을 일시중지합니다.

    kubectl annotate clusters.cluster.gdc.goog/USER_CLUSTER_NAME -n platform \
        cluster.gdc.goog/paused=true --kubeconfig=ADMIN_CLUSTER_KUBECONFIG
    
  2. 사용자 클러스터의 GDCH Cluster 커스텀 리소스 삭제를 트리거합니다.

    kubectl delete clusters.cluster.gdc.goog/USER_CLUSTER_NAME -n platform \
        --kubeconfig=ADMIN_CLUSTER_KUBECONFIG --wait=false
    
  3. 사용자 클러스터에서 모든 NodePoolClaim 커스텀 리소스의 삭제를 시작합니다.

    kubectl delete --all nodepoolclaims -n NAMESPACE \
        --kubeconfig=ADMIN_CLUSTER_KUBECONFIG --wait=false
    

    이 명령어는 사용자 클러스터의 모든 노드 풀 클레임의 백그라운드 삭제를 시작합니다.

  4. 사용자 클러스터의 Cluster 커스텀 리소스를 삭제합니다.

    kubectl delete clusters USER_CLUSTER_NAME \
        -n NAMESPACE --kubeconfig=ADMIN_CLUSTER_KUBECONFIG
    

    이 명령어는 삭제할 사용자 클러스터의 노드 풀 수에 따라 몇 분 정도 걸릴 수 있습니다.

  5. 네임스페이스 커스텀 리소스를 삭제합니다.

    kubectl --kubeconfig=ADMIN_CLUSTER_KUBECONFIG delete namespace NAMESPACE
    
  6. istio-system 네임스페이스에서 Istio 보안 비밀을 삭제합니다.

    kubectl delete secrets istio-remote-secret-USER_CLUSTER_NAME -n istio-system \
        --kubeconfig=ADMIN_CLUSTER_KUBECONFIG
    

    경우에 따라 Istio 보안 비밀의 이름이 다를 수 있습니다. Istio 보안 비밀을 나열하고 이름을 확인하려면 다음 명령어를 실행하세요.

    kubectl get secrets -n istio-system \
        --kubeconfig=ADMIN_CLUSTER_KUBECONFIG
    
  7. 타겟 사용자 클러스터와 이름은 같지만 네임스페이스가 다른 주소 풀 클레임을 삭제합니다.

    for j in $(kubectl get addresspoolclaims -A -o custom-columns=:.metadata.namespace --kubeconfig=ADMIN_CLUSTER_KUBECONFIG);
    do
    kubectl delete addresspoolclaims USER_CLUSTER_NAME -n $j --kubeconfig=ADMIN_CLUSTER_KUBECONFIG;
    done
    

    이 명령어를 실행하면 다음과 같은 오류가 표시됩니다.

    Error from server (NotFound): addresspoolclaims.system.private.gdc.goog "USER_CLUSTER_NAME" not found
    

    이 오류는 무시하세요. 이 명령어는 모든 네임스페이스에서 지정된 클러스터 이름이 있는 모든 주소 풀 클레임을 찾으려고 시도합니다. 일부 네임스페이스에는 이름이 있는 주소 풀 클레임이 포함되어 있지 않아 오류가 발생합니다.

  8. 사용자 클러스터의 네임스페이스를 삭제했는지 확인합니다.

    kubectl get namespaces NAMESPACE \
        --kubeconfig=ADMIN_CLUSTER_KUBECONFIG
    

    네임스페이스가 삭제되면 네임스페이스를 찾을 수 없음을 나타내는 오류가 출력에 표시됩니다. 예를 들면 다음과 같습니다.

    Error from server (NotFound): namespaces NAMESPACE not found
    
  9. 사용자 클러스터의 GDCH Cluster 커스텀 리소스의 조정 일시중지를 해제합니다.

    kubectl annotate clusters.cluster.gdc.goog/USER_CLUSTER_NAME -n platform \
        cluster.gdc.goog/paused- --kubeconfig=ADMIN_CLUSTER_KUBECONFIG
    

API

  • 사용자 클러스터를 삭제하려면 GDC 인스턴스에서 Cluster 커스텀 리소스를 삭제하세요.

    kubectl delete clusters.cluster.gdc.goog/USER_CLUSTER_NAME -n platform \
        --kubeconfig ADMIN_CLUSTER_KUBECONFIG
    

    다음을 바꿉니다.

    • USER_CLUSTER_NAME: 삭제할 사용자 클러스터의 이름입니다.
    • ADMIN_CLUSTER_KUBECONFIG: 관리자 클러스터의 kubeconfig 파일 경로입니다.