3.7. vSphere에서 실행 중인 노드에서 하드웨어 업데이트
vSphere에서 실행 중인 노드가 OpenShift Container Platform에서 지원하는 하드웨어 버전에서 실행되고 있는지 확인해야 합니다. 현재 클러스터의 vSphere 가상 머신에서 하드웨어 버전 15 이상이 지원됩니다.
가상 하드웨어를 즉시 업데이트하거나 vCenter에 업데이트를 예약할 수 있습니다.
- OpenShift Container Platform 버전 4.17에는 VMware 가상 하드웨어 버전 15 이상이 필요합니다.
- OpenShift 4.12를 OpenShift 4.13으로 업그레이드하기 전에 vSphere를 v7.0.2 이상으로 업데이트해야 합니다. 그렇지 않으면 OpenShift 4.12 클러스터는 업그레이드할 수 없습니다.
3.7.1. vSphere에서 가상 하드웨어 업데이트
VMware vSphere에서 VM(가상 머신)의 하드웨어를 업데이트하려면 가상 머신을 별도로 업데이트하여 클러스터의 다운타임 위험을 줄입니다.
OpenShift Container Platform 4.13부터 VMware 가상 하드웨어 버전 13은 더 이상 지원되지 않습니다. 지원 기능을 사용하려면 VMware 버전 15 이상으로 업데이트해야 합니다.
3.7.1.1. vSphere에서 컨트롤 플레인 노드의 가상 하드웨어 업데이트
다운타임 위험을 줄이려면 컨트롤 플레인 노드를 직렬로 업데이트하는 것이 좋습니다. 이렇게 하면 Kubernetes API를 계속 사용할 수 있으며 etcd는 쿼럼을 유지합니다.
사전 요구 사항
- OpenShift Container Platform 클러스터를 호스팅하는 vCenter 인스턴스에서 필요한 권한을 실행할 수 있는 클러스터 관리자 권한이 있습니다.
- vSphere ESXi 호스트는 7.0U2 이상 버전입니다.
프로세스
클러스터의 컨트롤 플레인 노드를 나열합니다.
$ oc get nodes -l node-role.kubernetes.io/master
출력 예
NAME STATUS ROLES AGE VERSION control-plane-node-0 Ready master 75m v1.30.3 control-plane-node-1 Ready master 75m v1.30.3 control-plane-node-2 Ready master 75m v1.30.3
컨트롤 플레인 노드의 이름을 확인합니다.
컨트롤 플레인 노드를 예약할 수 없음으로 표시합니다.
$ oc adm cordon <control_plane_node>
-
컨트롤 플레인 노드와 연결된 VM(가상 머신)을 종료합니다. VM을 마우스 오른쪽 버튼으로 클릭하고 Power
Shut Down Guest OS를 선택하여 vSphere 클라이언트에서 이 작업을 수행합니다. 안전하게 종료되지 않을 수 있으므로 Power Off (전원 끄기)를 사용하여 VM을 종료하지 마십시오. - vSphere 클라이언트에서 VM을 업데이트합니다. 자세한 내용은 VMware 문서에서 가상 머신의 호환성 업그레이드 를 참조하십시오.
- 컨트롤 플레인 노드와 연결된 VM의 전원을 켭니다. VM을 마우스 오른쪽 버튼으로 클릭하고 Power On을 선택하여 vSphere 클라이언트에서 이 작업을 수행합니다.
노드가
Ready
로 보고될 때까지 기다립니다.$ oc wait --for=condition=Ready node/<control_plane_node>
컨트롤 플레인 노드를 다시 예약 가능으로 표시합니다.
$ oc adm uncordon <control_plane_node>
- 클러스터의 각 컨트롤 플레인 노드에 대해 이 절차를 반복합니다.
3.7.1.2. vSphere에서 컴퓨팅 노드의 가상 하드웨어 업데이트
다운타임 위험을 줄이려면 컴퓨팅 노드를 직렬로 업데이트하는 것이 좋습니다.
NotReady
상태에 여러 노드가 있는 경우 워크로드가 병렬로 여러 컴퓨팅 노드를 업데이트할 수 있습니다. 관리자가 필요한 컴퓨팅 노드를 사용할 수 있는지 확인해야 합니다.
사전 요구 사항
- OpenShift Container Platform 클러스터를 호스팅하는 vCenter 인스턴스에서 필요한 권한을 실행할 수 있는 클러스터 관리자 권한이 있습니다.
- vSphere ESXi 호스트는 7.0U2 이상 버전입니다.
프로세스
클러스터의 컴퓨팅 노드를 나열합니다.
$ oc get nodes -l node-role.kubernetes.io/worker
출력 예
NAME STATUS ROLES AGE VERSION compute-node-0 Ready worker 30m v1.30.3 compute-node-1 Ready worker 30m v1.30.3 compute-node-2 Ready worker 30m v1.30.3
컴퓨팅 노드의 이름을 확인합니다.
컴퓨팅 노드를 예약 불가로 표시합니다.
$ oc adm cordon <compute_node>
컴퓨팅 노드에서 pod를 비웁니다. 이 작업을 수행하는 방법에는 여러 가지가 있습니다. 예를 들어 노드의 모든 Pod 또는 선택한 Pod를 비울 수 있습니다.
$ oc adm drain <compute_node> [--pod-selector=<pod_selector>]
노드에서 pod를 비우기 위한 다른 옵션은 "노드에서 pod를 비우는 방법 이해" 섹션을 참조하십시오.
-
컴퓨팅 노드와 연결된 VM(가상 머신)을 종료합니다. VM을 마우스 오른쪽 버튼으로 클릭하고 Power
Shut Down Guest OS를 선택하여 vSphere 클라이언트에서 이 작업을 수행합니다. 안전하게 종료되지 않을 수 있으므로 Power Off (전원 끄기)를 사용하여 VM을 종료하지 마십시오. - vSphere 클라이언트에서 VM을 업데이트합니다. 자세한 내용은 VMware 문서에서 가상 머신의 호환성 업그레이드 를 참조하십시오.
- 컴퓨팅 노드와 연결된 VM의 전원을 켭니다. VM을 마우스 오른쪽 버튼으로 클릭하고 Power On을 선택하여 vSphere 클라이언트에서 이 작업을 수행합니다.
노드가
Ready
로 보고될 때까지 기다립니다.$ oc wait --for=condition=Ready node/<compute_node>
컴퓨팅 노드를 다시 예약 가능으로 표시합니다.
$ oc adm uncordon <compute_node>
- 클러스터의 각 컴퓨팅 노드에 대해 이 절차를 반복합니다.
3.7.1.3. vSphere에서 템플릿의 가상 하드웨어 업데이트
사전 요구 사항
- OpenShift Container Platform 클러스터를 호스팅하는 vCenter 인스턴스에서 필요한 권한을 실행할 수 있는 클러스터 관리자 권한이 있습니다.
- vSphere ESXi 호스트는 7.0U2 이상 버전입니다.
프로세스
RHCOS 템플릿이 vSphere 템플릿으로 구성된 경우 다음 단계 전에 VMware 문서에서 템플릿을 가상 머신으로 변환합니다.
참고템플릿에서 변환되면 가상 머신의 전원을 켜지 마십시오.
- VMware vSphere 클라이언트에서 VM(가상 머신)을 업데이트합니다. 가상 머신 수동(VMware vSphere 문서)의 호환성 업그레이드에 설명된 단계를 완료합니다.
VM을 마우스 오른쪽 버튼으로 클릭한 다음 템플릿 → 템플릿으로 변환을 선택하여 vSphere 클라이언트의 VM을 템플릿으로 변환합니다.
중요VM을 템플릿으로 변환하는 단계는 향후 vSphere 설명서 버전에서 변경될 수 있습니다.
추가 리소스
3.7.2. vSphere에서 가상 하드웨어 업데이트 예약
가상 시스템의 전원을 켜거나 재부팅할 때 가상 하드웨어 업데이트를 수행할 수 있습니다. VMware 설명서의 가상 머신에 대한 호환성 업그레이드 예약에 따라 vCenter에서만 가상 하드웨어 업데이트를 예약할 수 있습니다.
OpenShift Container Platform 업데이트를 수행하기 전에 업데이트를 예약할 때 OpenShift Container Platform 업데이트 과정에서 노드가 재부팅될 때 가상 하드웨어 업데이트가 수행됩니다.