7.4. CLI를 사용하여 클러스터 업데이트
업데이트가있는 경우 OpenShift CLI (oc
)를 사용하여 클러스터를 업데이트할 수 있습니다.
사용 가능한 OpenShift Container Platform 권고 및 업데이트는 고객 포털의 에라타 섹션을 참조하십시오.
전제 조건
-
업데이트된 버전과 일치하는 OpenShift CLI (
oc
)를 설치합니다. -
cluster-admin
권한이 있는 사용자로 클러스터에 로그인합니다. -
jq
패키지를 설치합니다. -
모든
MachineHealthCheck
리소스를 일시 중지합니다.
프로세스
클러스터를 사용할 수 있는지 확인합니다.
$ oc get clusterversion
출력 예
NAME VERSION AVAILABLE PROGRESSING SINCE STATUS version 4.8.13 True False 158m Cluster version is 4.8.13
현재 업데이트 채널 정보를 확인하고 채널이
stable-4.9
로 설정되어 있는지 확인합니다.$ oc get clusterversion -o json|jq ".items[0].spec"
출력 예
{ "channel": "stable-4.9", "clusterID": "990f7ab8-109b-4c95-8480-2bd1deec55ff" }
중요프로덕션 클러스터의 경우
stable-*
,eus-*
또는fast-*
채널에 가입해야 합니다.사용 가능한 업데이트를 확인하고 적용하려는 업데이트의 버전 번호를 기록해 둡니다.
$ oc adm upgrade
출력 예
Cluster version is 4.8.13 Updates: VERSION IMAGE 4.9.0 quay.io/openshift-release-dev/ocp-release@sha256:9c5f0df8b192a0d7b46cd5f6a4da2289c155fd5302dec7954f8f06c878160b8b
업데이트를 적용합니다.
클러스터 버전 Operator의 상태를 확인합니다.
$ oc get clusterversion -o json|jq ".items[0].spec"
출력 예
{ "channel": "stable-4.9", "clusterID": "990f7ab8-109b-4c95-8480-2bd1deec55ff", "desiredUpdate": { "force": false, "image": "quay.io/openshift-release-dev/ocp-release@sha256:9c5f0df8b192a0d7b46cd5f6a4da2289c155fd5302dec7954f8f06c878160b8b", "version": "4.9.0" 1 } }
- 1
desiredUpdate
부분의version
번호가 지정한 값과 일치하는 경우 업데이트가 진행 중입니다.
클러스터 버전 상태 기록에서 업데이트 상태를 모니터링합니다. 모든 개체가 업데이트를 완료하는 데 시간이 걸릴 수 있습니다.
$ oc get clusterversion -o json|jq ".items[0].status.history"
출력 예
[ { "completionTime": null, "image": "quay.io/openshift-release-dev/ocp-release@sha256:b8fa13e09d869089fc5957c32b02b7d3792a0b6f36693432acc0409615ab23b7", "startedTime": "2021-01-28T20:30:50Z", "state": "Partial", "verified": true, "version": "4.9.0" }, { "completionTime": "2021-01-28T20:30:50Z", "image": "quay.io/openshift-release-dev/ocp-release@sha256:b8fa13e09d869089fc5957c32b02b7d3792a0b6f36693432acc0409615ab23b7", "startedTime": "2021-01-28T17:38:10Z", "state": "Completed", "verified": false, "version": "4.8.13" } ]
기록에는 클러스터에 적용된 최신 버전 목록이 포함되어 있습니다. 이 값은 CVO가 업데이트를 적용할 때 업데이트됩니다. 목록은 날짜순으로 정렬되며 최신 업데이트가 목록의 맨 처음에 표시됩니다. 롤아웃이 완료되면 기록의 업데이트 상태는
Completed
로 표시되고 업데이트가 실패하거나 완료되지 않은 경우Partial
로표시됩니다.업데이트가 완료되면 클러스터 버전이 새 버전으로 업데이트되었는지 확인합니다.
$ oc get clusterversion
출력 예
NAME VERSION AVAILABLE PROGRESSING SINCE STATUS version 4.9.0 True False 2m Cluster version is 4.9.0
참고oc get clusterversion
명령에서PROGRESSING
상태가True
인 동안 다음 오류를 표시하는 경우 오류를 무시할 수 있습니다.NAME VERSION AVAILABLE PROGRESSING SINCE STATUS version 4.10.26 True True 24m Unable to apply 4.11.0-rc.7: an unknown error has occurred: MultipleErrors
클러스터를 버전 4.y+1과 같이 다음 마이너 버전으로 업그레이드하는 경우 새 기능에 의존하는 워크로드를 배포하기 전에 노드를 업데이트하는 것이 좋습니다.
$ oc get nodes
출력 예
NAME STATUS ROLES AGE VERSION ip-10-0-168-251.ec2.internal Ready master 82m v1.22.1 ip-10-0-170-223.ec2.internal Ready master 82m v1.22.1 ip-10-0-179-95.ec2.internal Ready worker 70m v1.22.1 ip-10-0-182-134.ec2.internal Ready worker 70m v1.22.1 ip-10-0-211-16.ec2.internal Ready master 82m v1.22.1 ip-10-0-250-100.ec2.internal Ready worker 69m v1.22.1