kubectl용 vSphere 플러그인을 사용하여 TKG 클러스터에 연결하고 vCenter Single Sign-On 자격 증명을 사용하여 인증합니다.

Tanzu Kubernetes 클러스터에 로그인한 후 kubectl용 vSphere 플러그인은 클러스터에 대한 컨텍스트를 생성합니다. Kubernetes에서 구성 컨텍스트에는 클러스터, 네임스페이스 및 사용자가 포함됩니다. .kube/config 파일에서 클러스터 컨텍스트를 볼 수 있습니다. 이 파일은 일반적으로 kubeconfig 파일이라고 합니다.
참고: 기존 kubeconfig 파일이 있는 경우 각 클러스터 컨텍스트와 함께 추가됩니다. kubectl용 vSphere 플러그인kubectl 자체에서 사용하는 KUBECONFIG 환경 변수를 고려합니다. 필요하지 않더라도 kubectl vsphere login ...을 실행하기 전에 이 변수를 설정하면 정보가 현재의 kubeconfig 파일에 추가되지 않고 새 파일에 기록되므로 유용할 수 있습니다.

사전 요구 사항

vSphere 관리자로부터 다음 정보를 얻습니다.

프로시저

  1. 로그인을 위한 명령 구문 및 옵션을 보려면 다음 명령을 실행합니다.
    kubectl vsphere login --help
  2. Tanzu Kubernetes 클러스터에 연결하려면 다음 명령을 실행합니다.
    kubectl vsphere login --server=SUPERVISOR-CLUSTER-CONTROL-PLANE-IP-OR-FQDN 
    --tanzu-kubernetes-cluster-name TKG-CLUSTER-NAME 
    --tanzu-kubernetes-cluster-namespace VSPHERE-NAMESPACE 
    --vsphere-username VCENTER-SSO-USER-NAME
    예:
    kubectl vsphere login --server=10.92.42.137 
    --tanzu-kubernetes-cluster-name tkg-cluster-01 
    --tanzu-kubernetes-cluster-namespace tkg-cluster-ns 
    --vsphere-username [email protected]
    또는 감독자가 FQDN(정규화된 도메인 이름)으로 사용하도록 설정된 경우:
    kubectl vsphere login --server=wonderland.acme.com 
    --tanzu-kubernetes-cluster-name tkg-cluster-01 
    --tanzu-kubernetes-cluster-namespace tkg-cluster-ns 
    --vsphere-username [email protected]
    이 작업은 Kubernetes API에 인증하기 위한 JWT(JSON Web Token)가 들어 있는 구성 파일을 생성합니다.
  3. 인증하려면 vCenter Single Sign-On 암호를 입력합니다.
    작업이 성공하면 Logged in successfully 메시지가 표시되고 클러스터에 기반하여 kubectl 명령을 실행할 수 있습니다. 명령이 Error from server (Forbidden)를 반환하는 경우 일반적으로 이 오류는 사용자에게 필요한 사용 권한이 없음을 의미합니다.
  4. 사용 가능한 컨텍스트의 목록을 가져오려면 다음 명령을 실행합니다.
    kubectl config get-contexts
    이 명령은 액세스 권한이 있는 구성 컨텍스트를 나열합니다. tkg-cluster-01와 같은 대상 클러스터의 구성 컨텍스트를 볼 수 있습니다.
  5. 대상 클러스터의 컨텍스트를 사용하려면 다음 명령을 실행합니다.
    kubectl config use-context CLUSTER-NAME
  6. 클러스터 노드를 나열하려면 다음 명령을 실행합니다.
    kubectl get nodes
    이 클러스터의 제어부 및 작업자 노드가 표시됩니다.
  7. 클러스터 포드를 모두 나열하려면 다음 명령을 실행합니다.
    kubectl get pods -A
    사용자에게 액세스 권한이 있는 모든 Kubernetes 네임스페이스에 걸쳐 이 클러스터의 모든 포드가 표시됩니다. 워크로드를 배포하지 않은 경우 기본 네임스페이스에 포드가 표시되지 않습니다.