4.4. 클러스터 업데이트 시간 추정
유사한 클러스터의 이전 업데이트 기간은 향후 클러스터 업데이트에 가장 적합한 추정치를 제공합니다. 그러나 기록 데이터를 사용할 수 없는 경우 다음 규칙을 사용하여 클러스터 업데이트 시간을 추정할 수 있습니다.
Cluster update time = CVO target update payload deployment time + (# node update iterations x MCO node update time)
노드 업데이트 반복은 병렬로 업데이트된 하나 이상의 노드로 구성됩니다. 컨트롤 플레인 노드는 항상 컴퓨팅 노드와 병렬로 업데이트됩니다. 또한 maxUnavailable
값을 기반으로 하나 이상의 컴퓨팅 노드를 병렬로 업데이트할 수 있습니다.
maxUnavailable
의 기본 설정은 OpenShift Container Platform의 모든 머신 구성 풀에 대해 1
입니다. 이 값을 변경하지 않고 한 번에 하나의 컨트롤 플레인 노드를 업데이트하는 것이 좋습니다. 컨트롤 플레인 풀의 경우 이 값을 3
으로 변경하지 마십시오.
예를 들어 업데이트 시간을 추정하려면 컨트롤 플레인 노드가 3개이고 컴퓨팅 노드가 6개인 OpenShift Container Platform 클러스터를 고려해 보십시오. 각 호스트는 재부팅하는 데 약 5분 정도 걸립니다.
특정 노드를 재부팅하는 데 걸리는 시간은 크게 다릅니다. 클라우드 인스턴스에서 재부팅 작업은 약 1~2분 정도 걸릴 수 있지만, 물리적 베어 메탈 호스트에서 재부팅하는 데 15분 이상 걸릴 수 있습니다.
scenario-1
컨트롤 플레인 및 컴퓨팅 노드 MCP(Machine Config Pool)에서 maxUnavailable
을 1
로 설정하면 반복할 때마다 6개의 컴퓨팅 노드가 하나씩 업데이트됩니다.
Cluster update time = 60 + (6 x 5) = 90 minutes
scenario-2
컴퓨팅 노드 MCP에 대해 maxUnavailable
을 2
로 설정하면 각 반복에서 두 개의 컴퓨팅 노드가 병렬로 업데이트됩니다. 따라서 모든 노드를 업데이트하려면 총 3회 반복이 필요합니다.
Cluster update time = 60 + (3 x 5) = 75 minutes
maxUnavailable
의 기본 설정은 OpenShift Container Platform의 모든 MCP에 대해 1
입니다. 컨트롤 플레인 MCP에서 maxUnavailable
을 변경하지 않는 것이 좋습니다.