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채널에서 제공되는 경우에만 제공됩니다. - 홀수의 마이너 버전으로 업데이트하거나 업데이트한 후 다음 짝수 버전으로 업데이트한 후 문제가 발생하면 이러한 문제를 해결하려면 비컨트롤 플레인 호스트가 계속 진행하기 전에 홀수된 버전에 대한 업데이트를 완료해야 할 수 있습니다.
- 유지 관리에 걸리는 시간을 수용하도록 작업자 또는 사용자 지정 풀 노드를 업데이트하여 부분 업데이트를 수행할 수 있습니다.
- 중간 단계에서 일시 중지하여 여러 유지 관리 기간 동안 업데이트 프로세스를 완료할 수 있습니다. 그러나 60일 이내에 전체 업데이트를 완료할 계획입니다. 이는 일반 클러스터 자동화 프로세스가 완료되었는지 확인하는 데 중요합니다.
- 머신 구성 풀이 일시 중지되지 않고 업데이트가 완료될 때까지 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의 릴리스 노트 및 제품 라이프 사이클을 검토하십시오. 일부에는 컨트롤 플레인 업데이트 전이나 중에 업데이트가 필요할 수 있습니다.
- 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. 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(ODF)의 경우 컨트롤 플레인만 <4.y>에서 <4.y+2>로 업데이트하는 단계는 다음과 같습니다. CLI 또는 웹 콘솔을 통해 수행할 수 있습니다. 원하는 인터페이스를 통해 클러스터를 업데이트하는 방법에 대한 자세한 내용은 웹 콘솔을 사용하여 컨트롤 플레인만 업데이트하고 "추가 리소스"의 CLI를 사용하여 컨트롤 플레인 업데이트 수행을 참조하십시오.
워크플로우 예
- 작업자 머신 풀을 일시 중지합니다.
-
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>로의 업데이트는 작업자 머신 풀이 일시 중지 해제되기 전이나 후에 발생할 수 있습니다.