클러스터 노드를 호스팅하는 데 사용되는 가상 시스템 클래스를 변경하여 Tanzu Kubernetes 클러스터를 업데이트할 수 있습니다.
사전 요구 사항
이 작업은 kubectl edit tanzukubernetescluster/CLUSTER-NAME
명령을 사용하여 클러스터 매니페스트를 업데이트합니다. kubectl edit 명령은 KUBE_EDITOR 또는 EDITOR 환경 변수로 정의된 텍스트 편집기에서 클러스터 매니페스트를 엽니다. 파일을 저장하면 클러스터가 변경 사항으로 업데이트됩니다. kubectl용 기본 텍스트 편집기 지정의 내용을 참조하십시오.
프로시저
- 감독자 클러스터로 인증합니다. vCenter Single Sign-On 사용자로 감독자 클러스터에 연결의 내용을 참조하십시오.
kubectl vsphere login --server=IP-ADDRESS --vsphere-username USERNAME
- 대상 Tanzu Kubernetes 클러스터가 프로비저닝된 vSphere 네임스페이스로 컨텍스트를 전환합니다.
kubectl config use-context SUPERVISOR-NAMESPACE
- 대상 Tanzu Kubernetes 클러스터를 설명하고 VM 클래스를 확인합니다.
kubectl describe tanzukubernetescluster CLUSTER-NAME
예를 들어 이 클러스터는 best-effort-medium VM 클래스를 사용합니다.
Spec:
...
Topology:
Control Plane:
Class: best-effort-medium
...
Workers:
Class: best-effort-medium
...
- 네임스페이스에서 사용 가능한 VM 클래스를 나열하고 설명합니다.
kubectl get virtualmachineclassbindings
참고:
kubectl get virtualmachineclasses
명령은
감독자 클러스터에 있는 모든 VM 클래스를 나열합니다. VM 클래스를
vSphere 네임스페이스와 연결해야 하기 때문에 대상 네임스페이스에 바인딩된 VM 클래스만 사용할 수 있습니다.
- 다음 명령을 실행하여 클러스터 매니페스트를 편집합니다.
kubectl edit tanzukubernetescluster/CLUSTER-NAME
- 검색 중에 잠재적인 버전 불일치를 방지하기 위해
version
문자열을 변경하고 fullVersion
을 설정 해제하거나 null로 표시하여 매니페스트를 편집합니다.
예를 들어 제어부 및 작업자 노드에 대해
best-effort-medium
VM 클래스를 사용하여 클러스터 매니페스트를 변경합니다.
spec:
topology:
controlPlane:
class: best-effort-medium
...
workers:
class: best-effort-medium
...
제어부 및 작업자 노드에 대해
guaranteed-large
VM 클래스를 사용하려면 다음을 수행합니다.
spec:
topology:
controlPlane:
class: guaranteed-large
...
workers:
class: guaranteed-large
...
- 변경 내용을 매니페스트 파일에 적용합니다.
파일을 저장하면 kubectl이 변경 내용을 클러스터에 적용합니다. 백그라운드에서
Tanzu Kubernetes Grid 서비스는 새 노드 VM을 프로비저닝하고 이전 노드를 스핀 다운합니다.
- kubectl이 매니페스트 편집이 기록되었다고 보고하는지 확인합니다.
kubectl edit tanzukubernetescluster/tkgs-cluster-1
tanzukubernetescluster.run.tanzu.vmware.com/tkgs-cluster-1 edited
참고: 오류가 발생하거나 kubectl이 클러스터 매니페스트가 편집되었다고 보고하지 않는 경우에는 KUBE_EDITOR 환경 변수를 사용하여 기본 텍스트 편집기를 올바르게 구성했는지 확인합니다.
kubectl용 기본 텍스트 편집기 지정의 내용을 참조하십시오.
- 클러스터가 업데이트되고 있는지 확인합니다.
kubectl get tanzukubernetescluster
NAME CONTROL PLANE WORKER DISTRIBUTION AGE PHASE
tkgs-cluster-1 3 3 v1.18.5+vmware.1-tkg.1.c40d30d 21h updating
- 클러스터가 업데이트되었는지 확인합니다.
kubectl get tanzukubernetescluster
NAME CONTROL PLANE WORKER DISTRIBUTION AGE PHASE
tkgs-cluster-1 3 3 v1.18.5+vmware.1-tkg.1.c40d30d 22h running