3.3. 컨트롤 플레인만 업데이트 수행
기본 Kubernetes 설계로 인해 마이너 버전 간의 모든 OpenShift Container Platform 업데이트를 직렬화해야 합니다. OpenShift Container Platform <4.y>에서 <4.y+1>로 업데이트한 다음 <4.y+2>로 업데이트해야 합니다. OpenShift Container Platform <4.y>에서 <4.y+2>로 직접 업데이트할 수 없습니다. 그러나 번호가 매겨진 두 개의 마이너 버전 간에 업데이트하려는 관리자는 컨트롤 플레인 호스트가 아닌 호스트를 한 번만 재부팅할 수 있습니다.
이 업데이트는 이전에 EUS-to-EUS 업데이트로 알려졌으며 이제 컨트롤 플레인 전용 업데이트라고 합니다. 이러한 업데이트는 OpenShift Container Platform의 짝수의 마이너 버전에서 만 사용할 수 있습니다.
컨트롤 플레인만 업데이트할 때 고려해야 할 몇 가지 경고 사항이 있습니다.
-
컨트롤 플레인 업데이트는 관련된 모든 버전 간의 업데이트가
stable
채널에서 제공되는 경우에만 제공됩니다. - 홀수의 마이너 버전으로 업데이트하거나 업데이트한 후 다음 짝수 버전으로 업데이트한 후 문제가 발생하면 이러한 문제를 해결하려면 비컨트롤 플레인 호스트가 계속 진행하기 전에 홀수된 버전에 대한 업데이트를 완료해야 할 수 있습니다.
- 유지 관리에 걸리는 시간을 수용하도록 작업자 또는 사용자 지정 풀 노드를 업데이트하여 부분 업데이트를 수행할 수 있습니다.
- 머신 구성 풀이 일시 중지되지 않고 업데이트가 완료될 때까지 OpenShift Container Platform의 <4.y+1> 및 <4.y+2>의 일부 기능 및 버그 수정을 사용할 수 없습니다.
-
모든 클러스터는 풀이 일시 중지되지 않은 기존 업데이트에 EUS 채널을 사용하여 업데이트할 수 있지만, 컨트롤 플레인이 아닌
MachineConfigPools
오브젝트가 있는 클러스터만 컨트롤 플레인이 일시 중지된 업데이트만 수행할 수 있습니다.
3.3.1. 컨트롤 플레인만 업데이트 수행
다음 절차에서는 모든마스터
머신 구성 풀을 일시 중지하고 OpenShift Container Platform <4.y>에서 <4.y+1>에서 <4.y+2>로 업데이트를 수행한 다음 머신 구성 풀을 일시 중지 해제합니다. 이 절차를 수행하면 총 업데이트 기간과 작업자 노드가 재시작되는 횟수가 줄어듭니다.
사전 요구 사항
- OpenShift Container Platform <4.y+1> 및 <4.y+2>의 릴리스 노트를 검토하십시오.
- 계층화된 제품 및 OLM(Operator Lifecycle Manager) Operator의 릴리스 노트 및 제품 라이프 사이클을 검토하십시오. 일부 제품 및 OLM Operator는 컨트롤 플레인만 업데이트되기 전이나 중에 업데이트가 필요할 수 있습니다.
- OpenShift Container Platform <4.y+1>에서 <4.y+2>로 업데이트하기 전에 필요한 더 이상 사용되지 않는 API 제거와 같은 버전별 사전 요구 사항에 익숙해야 합니다.
클러스터에서 in-tree vSphere 볼륨을 사용하는 경우 vSphere를 7.0u3L+ 또는 8.0u2+ 버전으로 업데이트합니다.
중요OpenShift Container Platform 업데이트를 시작하기 전에 vSphere를 7.0u3L+ 또는 8.0u2+로 업데이트하지 않으면 업데이트 후 클러스터에서 알려진 문제가 발생할 수 있습니다. 자세한 내용은 OpenShift 4.12에서 4.13 또는 4.13에서 4.14 vSphere CSI Storage 마이그레이션에 대한 알려진 문제를 참조하십시오.
3.3.1.1. 컨트롤 플레인은 웹 콘솔을 사용하는 경우에만 업데이트
사전 요구 사항
- 머신 구성 풀이 일시 중지되지 않았는지 확인합니다.
-
admin
권한이 있는 사용자로 웹 콘솔에 액세스합니다.
프로세스
- 웹 콘솔의 관리자 화면을 사용하여 OLM(Operator Lifecycle Manager) Operator를 원하는 업데이트된 버전과 호환되는 버전으로 업데이트합니다. "설치된 Operator 업그레이드"에서 이 작업을 수행하는 방법에 대한 자세한 내용은 "추가 리소스"를 참조하십시오.
모든 머신 구성 풀에
Up to date
상태가 표시되고 머신 구성 풀에UPDATING
상태가 표시되지 않는지 확인합니다.모든 머신 구성 풀의 상태를 보려면 Compute
MachineConfigPools 를 클릭하고 Update status 열의 내용을 검토합니다. 참고머신 구성 풀에
Updating
상태가 있는 경우 이 상태가Up to date
로 변경될 때까지 기다립니다. 이 프로세스에는 몇 분이 걸릴 수 있습니다.채널을
eus-<4.y+2>로 설정합니다
.채널을 설정하려면 관리
클러스터 설정 채널을 클릭합니다. 현재 하이퍼링크된 채널을 클릭하여 채널을 편집할 수 있습니다. - 마스터 풀을 제외한 모든 작업자 머신 풀을 일시 중지합니다. 컴퓨팅 페이지의 MachineConfigPools 탭에서 이 작업을 수행할 수 있습니다. 일시 중지하려는 머신 구성 풀 옆에 있는 수직을 선택하고 업데이트 일시 중지를 클릭합니다.
- 버전 <4.y+1>로 업데이트하고 저장 단계로 완료합니다. "웹 콘솔을 사용하여 클러스터 업그레이드"에서 이러한 작업을 수행하는 방법에 대한 자세한 내용은 "추가 리소스"를 참조하십시오.
- 클러스터의 마지막 완료된 버전을 확인하여 <4.y+1> 업데이트가 완료되었는지 확인합니다. 세부 정보 탭의 클러스터 설정 페이지에서 이 정보를 확인할 수 있습니다.
- 필요한 경우 웹 콘솔의 관리자 화면을 사용하여 OLM Operator를 업데이트합니다. 이러한 작업을 수행하는 방법에 대한 자세한 내용은 "설치된 Operator 업그레이드"를 참조하십시오. "추가 리소스"를 참조하십시오.
- 버전 <4.y+2>로 업데이트하고 저장 단계로 완료합니다. "웹 콘솔을 사용하여 클러스터 업그레이드"에서 이러한 작업을 수행하는 방법에 대한 자세한 내용은 "추가 리소스"를 참조하십시오.
- 클러스터의 마지막 완료된 버전을 확인하여 <4.y+2> 업데이트가 완료되었는지 확인합니다. 세부 정보 탭의 클러스터 설정 페이지에서 이 정보를 확인할 수 있습니다.
이전에 일시 중지된 모든 머신 구성 풀을 일시 중지 해제합니다. 컴퓨팅 페이지의 MachineConfigPools 탭에서 이 작업을 수행할 수 있습니다. 일시 중지 해제하려는 머신 구성 풀 옆에 있는 수직을 선택하고 업데이트 일시 중지 해제를 클릭합니다.
중요풀이 일시 중지되면 클러스터는 향후 마이너 버전으로 업그레이드할 수 없으며 일부 유지 관리 작업이 금지됩니다. 이로 인해 클러스터가 향후 저하될 위험이 있습니다.
이전에 일시 중지된 풀이 업데이트되고 클러스터가 <4.y+2> 버전으로 업데이트를 완료했는지 확인합니다.
Update status 의 Up to date 값이 있는지 확인하여 Compute 페이지 아래의 MachineConfigPools 탭에서 풀이 업데이트되었는지 확인할 수 있습니다.
중요RHEL(Red Hat Enterprise Linux) 컴퓨팅 머신이 포함된 클러스터를 업데이트하면 업데이트 프로세스 중에 해당 머신을 일시적으로 사용할 수 없게 됩니다. 클러스터가
NotReady
상태가 되면 각 RHEL 시스템에 대해 업그레이드 플레이 북을 실행하여 업데이트를 완료해야 합니다. 자세한 내용은 추가 리소스 섹션의 "RHEL 컴퓨팅 시스템을 포함하는 클러스터 업그레이드"를 참조하십시오.클러스터의 마지막 완료 버전을 확인하여 클러스터가 업데이트를 완료했는지 확인할 수 있습니다. 세부 정보 탭의 클러스터 설정 페이지에서 이 정보를 확인할 수 있습니다.
3.3.1.2. 컨트롤 플레인은 CLI를 사용하여 업데이트
사전 요구 사항
- 머신 구성 풀이 일시 중지되지 않았는지 확인합니다.
-
각 업데이트 전에 OpenShift CLI(
oc
)를 대상 버전으로 업데이트합니다.
이 사전 요구 사항을 건너뛰는 것이 좋습니다. OpenShift CLI(oc
)가 업데이트 전에 대상 버전으로 업데이트되지 않으면 예기치 않은 문제가 발생할 수 있습니다.
프로세스
- 웹 콘솔의 관리자 화면을 사용하여 OLM(Operator Lifecycle Manager) Operator를 원하는 업데이트된 버전과 호환되는 버전으로 업데이트합니다. "설치된 Operator 업그레이드"에서 이 작업을 수행하는 방법에 대한 자세한 내용은 "추가 리소스"를 참조하십시오.
모든 머신 구성 풀에
UPDATED
상태가 표시되고 머신 구성 풀에UPDATING
상태가 표시되지 않는지 확인합니다. 모든 머신 구성 풀의 상태를 보려면 다음 명령을 실행합니다.$ oc get mcp
출력 예
NAME CONFIG UPDATED UPDATING master rendered-master-ecbb9582781c1091e1c9f19d50cf836c True False worker rendered-worker-00a3f0c68ae94e747193156b491553d5 True False
현재 버전은 <4.y>이며 업데이트하려는 버전은 <4.y+2>입니다. 다음 명령을 실행하여
eus-<4.y+2
> 채널로 변경합니다.$ oc adm upgrade channel eus-<4.y+2>
참고eus-<4.y+2
>가 사용 가능한 채널 중 하나가 아님을 나타내는 오류 메시지가 표시되면 Red Hat이 여전히 EUS 버전 업데이트를 롤아웃하고 있음을 나타냅니다. 이 롤아웃 프로세스는 일반적으로 GA 날짜에 45-90일이 걸립니다.다음 명령을 실행하여 마스터 풀을 제외한 모든 작업자 머신 풀을 일시 중지합니다.
$ oc patch mcp/worker --type merge --patch '{"spec":{"paused":true}}'
참고마스터 풀을 일시 중지할 수 없습니다.
다음 명령을 실행하여 최신 버전으로 업데이트합니다.
$ oc adm upgrade --to-latest
출력 예
Updating to latest version <4.y+1.z>
클러스터 버전을 검토하여 다음 명령을 실행하여 업데이트가 완료되었는지 확인합니다.
$ oc adm upgrade
출력 예
Cluster version is <4.y+1.z> ...
다음 명령을 실행하여 버전 <4.y+2>로 업데이트합니다.
$ oc adm upgrade --to-latest
클러스터 버전을 검색하여 다음 명령을 실행하여 <4.y+2> 업데이트가 완료되었는지 확인합니다.
$ oc adm upgrade
출력 예
Cluster version is <4.y+2.z> ...
작업자 노드를 <4.y+2>로 업데이트하려면 다음 명령을 실행하여 이전에 일시 중지된 모든 머신 구성 풀을 일시 중지 해제합니다.
$ oc patch mcp/worker --type merge --patch '{"spec":{"paused":false}}'
중요풀이 일시 중지되지 않는 경우 클러스터는 향후 마이너 버전으로 업데이트할 수 없으며 일부 유지 관리 작업이 금지됩니다. 이로 인해 클러스터가 향후 저하될 위험이 있습니다.
다음 명령을 실행하여 이전에 일시 중지된 풀이 업데이트되고 버전 <4.y+2>에 대한 업데이트가 완료되었는지 확인합니다.
$ oc get mcp
중요RHEL(Red Hat Enterprise Linux) 컴퓨팅 머신이 포함된 클러스터를 업데이트하면 업데이트 프로세스 중에 해당 머신을 일시적으로 사용할 수 없게 됩니다. 클러스터가
NotReady
상태가 되면 각 RHEL 시스템에 대해 업그레이드 플레이 북을 실행하여 업데이트를 완료해야 합니다. 자세한 내용은 추가 리소스 섹션의 "RHEL 컴퓨팅 시스템을 포함하는 클러스터 업그레이드"를 참조하십시오.출력 예
NAME CONFIG UPDATED UPDATING master rendered-master-52da4d2760807cb2b96a3402179a9a4c True False worker rendered-worker-4756f60eccae96fb9dcb4c392c69d497 True False
3.3.1.3. Control Plane은 Operator Lifecycle Manager를 통해 설치된 계층화된 제품 및 Operator에만 업데이트
웹 콘솔 및 CLI에 언급된 컨트롤 플레인 업데이트 단계 외에도 다음과 같은 클러스터에 대한 컨트롤 플레인 업데이트를 수행할 때 고려해야 할 추가 단계가 있습니다.
- 계층화된 제품
- OLM(Operator Lifecycle Manager)을 통해 설치된 Operator
계층화된 제품이란 무엇입니까?
계층화된 제품은 함께 사용하기 위한 여러 기본 제품으로 구성된 제품을 나타내며 개별 서브스크립션으로 분리할 수 없습니다. 계층화된 OpenShift Container Platform 제품의 예는 OpenShift에서 계층화된 오퍼링을 참조하십시오.
컨트롤 플레인을 수행하는 경우 계층화된 제품 클러스터 및 OLM을 통해 설치된 Operator의 클러스터만 업데이트하므로 다음을 완료해야 합니다.
- OLM(Operator Lifecycle Manager)을 통해 이전에 설치된 모든 Operator를 대상 릴리스와 호환되는 버전으로 업데이트했습니다. Operator를 업데이트하면 클러스터 업데이트 중에 기본 OperatorHub 카탈로그가 현재 마이너 버전에서 다음 버전으로 전환될 때 유효한 업데이트 경로가 있습니다. 호환성을 확인하는 방법과 필요한 경우 설치된 Operator를 업데이트하는 방법에 대한 자세한 내용은 "추가 리소스" 섹션에서 "설치된 Operator 업그레이드"를 참조하십시오.
- 현재 버전과 의도된 Operator 버전 간의 클러스터 버전 호환성을 확인합니다. Red Hat OpenShift Container Platform Operator 업데이트 정보 검사기를 사용하여 OLM Operator 가 호환되는 버전을 확인할 수 있습니다.
예를 들어, 'OpenShift Data Foundation'의 경우 컨트롤 플레인만 <4.y>에서 <4.y+2>로 업데이트하는 단계는 다음과 같습니다. CLI 또는 웹 콘솔을 통해 수행할 수 있습니다. 원하는 인터페이스를 통해 클러스터를 업데이트하는 방법에 대한 자세한 내용은 Control Plane only update using the web console and "Control Plane only update using the CLI" in "추가 리소스"를 참조하십시오.
워크플로우 예
- 작업자 머신 풀을 일시 중지합니다.
-
OpenShift <4.y>
OpenShift <4.y+1>를 업데이트합니다. -
ODF <4.y>
ODF <4.y+1>를 업데이트합니다. -
OpenShift <4.y+1>
OpenShift <4.y+2>를 업데이트합니다. - ODF <4.y+2>로 업데이트합니다.
- 작업자 머신 풀 일시 중지를 해제합니다.
ODF <4.y+2>로의 업데이트는 작업자 머신 풀이 일시 중지 해제되기 전이나 후에 발생할 수 있습니다.