kubernetes-admin 사용자로 TKG 서비스 클러스터 제어부에 연결하여 관리 작업을 수행하고 클러스터 문제를 해결할 수 있습니다.

프로비저닝된 Tanzu Kubernetes 클러스터에 대한 유효한 kubeconfig 파일은 감독자에서 TKG-CLUSTER-NAME-kubeconfig이라는 이름의 암호 개체로 제공됩니다. 이 암호를 사용하여 kubernetes-admin 사용자로 클러스터 제어부에 연결할 수 있습니다.

프로시저

  1. 감독자에 연결합니다.
  2. 대상 TKG 클러스터가 프로비저닝된 vSphere 네임스페이스로 컨텍스트를 전환합니다.
    kubectl config use-context VSPHERE-NAMESPACE
  3. 네임스페이스에서 암호 개체를 봅니다.
    kubectl get secrets
    암호 이름은 TKG-CLUSTER-NAME-kubeconfig입니다.
    kubectl config use-context tkg-cluster-ns
    Switched to context "tkg-cluster-ns".
    ubuntu@ubuntu:~$ kubectl get secrets
    NAME                                 TYPE                                 DATA   AGE
    ...
    tkg-cluster-1-kubeconfig            Opaque                                1      23h
    ...
    
  4. 다음 명령을 실행하여 암호를 디코딩합니다.
    암호는 Base64로 인코딩됩니다. 디코딩하려면 Linux에서는 base64 --decode(또는 base64 -d)를 사용하고, MacOS에서는 base64 --Decode(또는 base64 -D)를 사용하고, Windows에서는 온라인 도구를 사용합니다.
    kubectl get secret TKG-CLUSTER-NAME-kubeconfig -o jsonpath='{.data.value}' | base64 -d > tkgs-cluster-kubeconfig-admin
    이 명령은 암호를 디코딩하고 tkgs-cluster-kubeconfig-admin라는 이름의 로컬 파일에 씁니다. cat 명령을 사용하여 파일 컨텐츠를 확인할 수 있습니다.
  5. 디코딩된 tkg-cluster-kubeconfig-admin 파일을 사용하여 TKG 클러스터에 Kubernetes 관리자로 연결합니다.
    이 작업을 수행하는 데에는 두 가지 옵션이 있습니다.
    옵션 설명
    --kubeconfig <path\to\kubeconfig> --kubeconfig 플래그와 로컬 kubeconfig 파일에 대한 경로를 사용합니다. 예를 들어 kubeconfig 파일이 위치한 디렉토리가 명령을 실행하는 디렉토리와 동일하다고 가정하면 다음과 같습니다. kubectl --kubeconfig tkg-cluster-kubeconfig-admin get nodes
    KUBECONFIG 디코딩된 kubeconfig 파일을 가리키도록 KUBECONFIG 환경 변수를 설정하고 kubectl을 실행합니다(예: kubectl get nodes).
    클러스터에 노드가 표시됩니다.
  6. vSphere 네임스페이스에 대한 편집 권한이 있는 DevOps 사용자가 Tanzu CLI를 사용하여 TKG 클러스터에 관리자로 로그인하려면 다음 명령을 실행합니다.
    tanzu cluster kubeconfig get CLUSTER-NAME --admin
    이 명령은 kubernetes-control-plane에 대한 인증서/개인 키가 포함된 kubeconfig를 생성합니다(모든 권한 부여를 우회함). 그런 다음 이 kubeconfig를 사용하여 클러스터에 로그인할 수 있습니다. 의 내용을 참조하십시오.