This site will be decommissioned on December 31st 2024. After that date content will be available at techdocs.broadcom.com.

독립형 관리 클러스터 업그레이드

독립형 관리 클러스터를 사용하여 Tanzu Kubernetes Grid를 업그레이드하려면 먼저 독립형 관리 클러스터를 업그레이드해야 합니다. 워크로드 클러스터를 관리하는 관리 클러스터를 업그레이드할 때까지 워크로드 클러스터를 업그레이드할 수 없습니다.

vSphere with Tanzu Supervisor와 함께 TKG를 실행하는 경우 이 절차를 따르지 않습니다. 대신 vSphere의 일부로 Supervisor를 업그레이드하고 해당 TKr을 업그레이드하여 Supervisor의 Kubernetes 버전을 업데이트합니다.

중요

Tanzu Kubernetes Grid v2.4.x는 AWS 및 Azure에서 기존 독립형 TKG 관리 클러스터 업그레이드를 지원하는 TKG의 마지막 버전입니다. Tanzu Kubernetes Grid v2.5 릴리스에서는 AWS 및 Azure에서 독립형 TKG 관리 클러스터를 업그레이드하는 기능이 제거됩니다.

지금부터는 VMware Tanzu Mission Control을 사용하여 네이티브 AWS EKS 및 Azure AKS 클러스터를 생성하는 것이 좋습니다. 그러나 AWS 및 Azure의 기존 독립형 TKG 관리 클러스터 업그레이드는 TKG v2.4.x까지 모든 TKG 릴리스에 대해 완전히 지원됩니다.

자세한 내용은 VMware Tanzu Kubernetes Grid v2.4 Release Notes에서 AWS 및 Azure에서 TKG 관리 및 워크로드 클러스터의 사용 중단을 참조하십시오.

관리 클러스터를 업그레이드하면 실행되는 자동 관리 패키지가 자동으로 업그레이드됩니다.

참고

Tanzu CLI를 설치한 후 독립형 관리 클러스터가 업그레이드되기 전에 모든 컨텍스트별 CLI 명령 그룹(tanzu cluster, tanzu kubernetes-release)을 사용할 수 없으며 Tanzu CLI --help 출력에 포함되지 않습니다.

관리 클러스터와 워크로드 클러스터는 클라이언트 인증서를 사용하여 클라이언트를 인증합니다. 이러한 인증서는 1년 동안 유효합니다. 갱신하려면 클러스터를 1년에 한 번 이상 업그레이드하거나 클러스터 인증서 갱신(독립형 MC) 또는 VMware 기술 자료 문서 Tanzu Kubernetes Grid 클러스터에서 인증서를 교체하는 방법에 설명된 대로 순환합니다.

사전 요구 사항

  • 업그레이드에 대한 알려진 문제를 살펴봤습니다. 알려진 문제를 참조하십시오.
  • 관리 클러스터를 업그레이드하기 전에 있는 Tanzu Kubernetes Grid 업그레이드 단계를 수행했습니다.
  • 인터넷 제한: 인터넷이 제한된 환경에서 이전 버전의 Tanzu Kubernetes Grid 배포한 경우 인터넷 제한 환경 준비 단계를 수행하여 새 구성 요소 이미지 버전으로 필요한 스크립트를 다시 생성하고 실행했습니다.
  • 사용자 지정클러스터: 사용자 지정 ClusterClass 정의를 사용하는 워크로드 클러스터가 있는 경우 사용자 지정 클러스터 업그레이드 단계를 수행했습니다.
  • LDAP: 이전 버전의 관리 클러스터가 LDAP ID 제공자와 통합된 경우 아래 (LDAP만 해당) LDAP 설정 업데이트 단계를 수행했습니다.

(LDAP만 해당) LDAP 설정 업데이트

Tanzu Kubernetes Grid v2.3부터는 LDAP ID 제공자를 구성할 때 LDAP_BIND_DNLDAP_BIND_PASSWORD 변수를 설정해야 합니다. LDAP ID 제공자를 사용하도록 구성된 관리 클러스터를 v2.3을 Tanzu Kubernetes Grid 업그레이드하기 전에 아직 이러한 변수를 설정하지 않은 경우 이러한 변수를 설정합니다. LDAP_BIND_DNLDAP_BIND_PASSWORD를 설정하지 않고 관리 클러스터를 업그레이드하면 Pinniped App 배포가 실패하고 App 사용자 지정 리소스가 오류를 반환합니다. 이러한 구성 변수에 대한 자세한 내용은 구성 파일 변수 참조의 ID 제공자 - LDAP를 참조하십시오.

LDAP_BIND_DNLDAP_BIND_PASSWORD를 업데이트하려면 관리 클러스터의 버전에 해당하는 management-cluster CLI 플러그인 버전을 사용해야 합니다. 관리 클러스터를 업그레이드하기 전에 다음 단계를 수행합니다.

  1. 관리 클러스터용 구성 파일에 LDAP_BIND_DNLDAP_BIND_PASSWORD를 추가합니다.

  2. 시스템에 올바른 버전의 management-cluster 플러그인이 설치되어 있는지 확인합니다. Tanzu Kubernetes Grid v2.2.0의 경우 올바른 버전은 v0.29.0입니다.

    tanzu plugin list
    

    올바른 버전의 management-cluster 플러그인이 설치되어 있지 않으면 다음을 수행합니다.

    1. 사용 가능한 모든 버전 목록에서 관리 클러스터의 버전에 해당하는 management-cluster 플러그인의 버전을 찾습니다.

      tanzu plugin search -n management-cluster --show-details
      
    2. 플러그인을 설치합니다.

      tanzu plugin install management-cluster --version PLUGIN-VERSION
      

      여기서 PLUGIN-VERSION은 이전 단계에서 찾은 버전입니다.

  3. 다음을 실행하여 Pinniped 패키지의 새 암호를 생성합니다.

    FILTER_BY_ADDON_TYPE=authentication/pinniped tanzu management-cluster create --dry-run -f YOUR-MANAGEMENT-CLUSTER-CONFIG-FILE.yaml > PINNIPED-PACKAGE-SECRET.yaml
    

    여기서 YOUR-MANAGEMENT-CLUSTER-CONFIG-FILE.yaml은 이전 단계에서 업데이트한 구성 파일이며 PINNIPED-PACKAGE-SECRET.yaml은 Pinniped 패키지의 새 암호입니다.

  4. 결과 암호에 업데이트된 설정이 포함되어 있는지 확인하고 kubectl 컨텍스트를 관리 클러스터에 설정한 후 암호를 적용합니다.

    kubectl apply -f PINNIPED-PACKAGE-SECRET.yaml
    

절차

  1. tanzu context use 명령을 실행하여 업그레이드에 사용할 수 있는 관리 클러스터의 대화형 목록을 확인합니다.

    tanzu context use
    
  2. 업그레이드할 관리 클러스터를 선택합니다. 자세한 내용은 관리 클러스터 목록 및 컨텍스트 변경을 참조하십시오.

  3. 클러스터의 관리자 자격 증명을 가져옵니다. Tanzu CLI 별칭 mcmanagement-cluster의 약식입니다.

    tanzu mc kubeconfig get --admin
    
  4. kubectl을 관리 클러스터에 연결합니다.

    kubectl config use-context CLUSTER-NAME-admin@CLUSTER-NAME.
    
  5. 관리 클러스터가 Azure에서 실행 중인 경우 클러스터를 업그레이드하기 전에 AZURE_CLIENT_SECRET 환경 변수를 설정합니다.

    export AZURE_CLIENT_SECRET=YOUR-AZURE-CLIENT-SECRET
    
  6. tanzu mc upgrade 명령을 실행하고 y를 입력하여 확인합니다.

    참고

    이 명령을 실행한 후에는 Pinniped 포드가 다시 시작될 때까지 관리자가 아닌 사용자는 연결된 워크로드 클러스터에 로그인할 수 없습니다.

    tanzu mc upgrade
    

    IaaS 계정의 여러 기본 VM 이미지가 업그레이드하려는 동일한 버전의 Kubernetes를 가지고 있는 경우, 업그레이드할 OS 선택에 설명된 대로 --os-name 및 기타 옵션을 포함하여 대상 OS를 지정할 수 있습니다.

    tanzu mc upgrade --os-name ubuntu
    

    vSphere에서 --vsphere-vm-template-name 옵션을 사용하여 업그레이드할 OVA 템플릿 선택에 설명된 대로 클러스터 노드에 대해 대상 OVA 템플릿을 지정할 수 있습니다.

    tanzu mc upgrade --vsphere-vm-template-name "/dc0/vm/tanzu/ubuntu-2004-kube-v1.29.9-vmware.1"
    

    클러스터를 업그레이드할 때 확인 단계를 건너뛰려면 --yes 옵션을 지정합니다.

    tanzu mc upgrade --yes
    

    업그레이드 프로세스는 먼저 관리 클러스터에서 실행 중인 vSphere, AWS(Amazon Web Services) 또는 Azure의 클러스터 API 제공자를 업그레이드합니다. 그런 다음 관리 클러스터의 모든 제어부 및 Worker 노드에서 Kubernetes 버전을 업그레이드합니다.

    중요

    관리 클러스터가 업그레이드되는 동안 tanzu cluster 또는 tanzu mc 명령을 실행하거나 관리하는 워크로드 클러스터(예: 다른 부트스트랩 시스템 또는 셸 창)를 실행하지 마십시오.

    업그레이드가 완료되기 전에 시간이 초과되면 tanzu mc upgrade를 다시 실행하고 기본값인 30분보다 큰 --timeout 옵션을 지정합니다.

    tanzu mc upgrade --timeout 45m0s
    
    참고

    v2.3 CLI를 설치했지만 관리 클러스터가 업그레이드되기 전에 모든 컨텍스트별 CLI 명령 그룹(tanzu cluster, tanzu kubernetes-release)과 management-clustertanzu mc upgrade를 제외한 모든 tanzu mc create 플러그인 명령을 사용할 수 없으며 Tanzu CLI --help 출력에 포함되지 않습니다.

  7. 업그레이드가 완료되면 --include-management-cluster -A 옵션을 사용하여 tanzu cluster list 명령을 다시 실행하여 관리 클러스터가 업그레이드되었는지 확인합니다.

    tanzu cluster list --include-management-cluster -A
    

    이제 관리 클러스터에서 새 버전의 Kubernetes가 실행 중이지만 워크로드 클러스터가 여전히 이전 버전의 Kubernetes를 실행하고 있는 것을 볼 수 있습니다.

     NAME                 NAMESPACE   STATUS    CONTROLPLANE  WORKERS  KUBERNETES         ROLES       PLA   TKR
     k8s-1-24-14-cluster  default     running   1/1           1/1      v1.24.14+vmware.1  <none>      dev   v1.24.14---vmware.1-tkg.1
     k8s-1-25-10-cluster  default     running   1/1           1/1      v1.25.10+vmware.1  <none>      dev   v1.25.10---vmware.1-tkg.1
     mgmt-cluster         tkg-system  running   1/1           1/1      v1.26.8+vmware.1   management  dev   v1.26.8---vmware.2-tkg.1
    
  8. 관리자 kubeconfig를 다시 생성합니다.

    tanzu management-cluster kubeconfig get --admin
    

    다음은 이 명령의 샘플 출력입니다.

    Credentials of cluster 'mgmt' have been saved
    You can now access the cluster by running 'kubectl config use-context mgmt-admin@mgmt'
    
    중요

    업그레이드 후 kubeconfig를 갱신하지 않으면 클러스터가 만료되면 액세스할 수 없습니다.

후속 작업

이제 다음을 수행할 수 있습니다.

check-circle-line exclamation-circle-line close-line
Scroll to top icon