Satellite 위치 제어 플레인 호스트 업데이트

컨트롤 플레인 호스트를 분리하고, 인프라 제공업체에서 OS를 다시 로드한 다음, 다시 연결하여 ‘ Satellite ’ 위치의 컨트롤 플레인에 재할당함으로써 업데이트하십시오.

제어 플레인 호스트를 업데이트하기 전의 고려사항

Satellite 위치 제어 플레인 호스트를 업데이트하기 전에 다음 고려사항을 검토하십시오.

버전 업데이트가 있는지 어떻게 알 수 있나요?
Red Hat OpenShift on IBM Cloud 팀에서 작업자 노드의 새 버전을 패키지할 때 호스트의 버전 업데이트를 사용할 수 있습니다. 일반적으로 작업자 노드 버전 업데이트는 2주마다 릴리스됩니다.
월간 또는 격월 단위와 같이 필요한 보안 업데이트 주기에 맞춰 버전 업데이트가 있는지 확인하십시오. 사용 가능한 버전 업데이트를 검토하려면 Red Hat OpenShift on IBM Cloud에 대한 버전 변경 로그를 참조하십시오.
또한 명령줄 인터페이스(CLI)를 사용하여 업데이트가 필요한 제어 플레인 호스트를 빠르게 파악할 수도 있습니다. ibmcloud sat location ls, ibmcloud sat location get, ibmcloud sat hosts 또는 ibmcloud sat host get 을 실행할 때, ‘Status’ 또는 ‘State’ 열에서 호스트가 오래된 것을 나타내는 기호를 확인하십시오. 자세한 내용은 ‘업데이트가 필요한 제어 플레인 호스트 식별’을 참조하십시오.
호스트를 업데이트하면 Satellite 위치의 제어 평면에서 실행되는 클러스터 마스터에 영향을 미치나요?
예. 클러스터 마스터는 Satellite 위치 제어 플레인에서 실행되므로, 호스트를 업데이트하기 전에는 충분한 여분의 호스트가 있는지 확인하십시오. 여분의 호스트를 연결하려면 용량을 Satellite 위치 제어 플레인에 연결을 참조하십시오.
Satellite 가 활성화된 IBM Cloud 서비스의 호스트는 Satellite 위치 제어 플레인과 동일한 버전을 실행해야 합니까?
아니요, ‘ Satellite ’ 위치의 제어 플레인에 할당된 호스트는, 해당 위치에서 실행되는 ‘ Satellite ’ 기능이 활성화된 ‘ IBM Cloud ’ 서비스에 할당된 호스트와 동일한 버전을 실행할 필요가 없습니다. 그러나 위치의 모든 호스트는 지원되는 버전을 실행해야 합니다.
호스트가 실행할 수 있는 지원되는 Red Hat OpenShift 버전을 검토하려면 Red Hat OpenShift on IBM Cloud 문서를 참조하거나 명령행에서 ibmcloud ks versions를 실행하십시오.
호스트를 업데이트할 때, Satellite 위치 제어 플레인 하위 도메인에 여전히 접속할 수 있나요?
위치 서브도메인이 자동으로 작성된 경우 하위 도메인에 대해 등록된 호스트 IP 주소가 자동으로 관리됩니다(예: 업데이트 중).
Satellite 위치 제어 플레인을 작성할 때 ibmcloud sat location dns register 명령을 사용하여 위치 하위 도메인에 대한 호스트 IP 주소를 수동으로 등록한 경우, 시작하기 전에 세 개의 호스트를 제어 플레인에 연결하고 하위 도메인에 대해 해당 호스트 IP를 수동으로 등록해야 합니다. 이제 이러한 새 호스트가 위치에 대한 요청을 처리합니다. 그 후에는 이전에 하위 도메인에 사용되었던 호스트를 업데이트할 수 있습니다.
컨트롤 플레인 버전은 어떻게 확인하나요?
ibmcloud sat location get --location <locationID> --json 을 실행하고 masterKubeVersion 필드를 검토합니다.
컨트롤 플레인 노드를 교체할 때 어떤 버전이 적용되나요?
새 노드 마이너 버전은 컨트롤 플레인의 마이너 버전과 일치합니다. 패치 버전은 최신 취약점 수정이 포함된 최신 작업자 패치 버전입니다.
컨트롤 플레인 버전이 클러스터 버전과 일치해야 하나요?
아니오. 제어 플레인에서 사용되는 Satellite 위치 버전이 클러스터 호스트에서 사용되는 버전과 항상 일치하는 것은 아닙니다. 컨트롤 플레인은 사용자가 업데이트하는 동안 사용 가능한 최신 컨트롤 플레인 버전은 IBM 에서 확인할 수 있습니다. 클러스터 호스트는 컨트롤 플레인보다 최신 버전을 사용할 수 있습니다.
컨트롤 플레인을 업데이트할 때 다운타임을 방지하려면 어떻게 해야 하나요?
업데이트 프로세스를 따르면 모든 컨트롤 플레인 구성 요소를 노드에서 실행할 수 있고 중단이 발생하지 않도록 할 수 있습니다. 한 번에 하나의 워커만 업데이트하고 다음 노드를 시작하기 전에 노드가 완전히 작동할 수 있도록 충분한 시간을 두어야 합니다.
컨트롤 플레인 호스트를 얼마나 자주 업데이트해야 하나요?
새로운 워커 노드 수정 팩이 제공되면 제어 플레인 호스트를 업데이트하여 최신 취약점 수정 사항을 모두 적용하는 것이 좋습니다.

업데이트가 필요한 제어 플레인 호스트 식별

CLI와 콘솔은 구버전을 실행 중인 제어 플레인 호스트를 신속하게 식별할 수 있도록 시각적 표시 기능을 제공하므로, 문제가 심각해지기 전에 업데이트를 우선적으로 처리할 수 있습니다.

CLI 업그레이드 지표

특정 ibmcloud sat 명령을 실행하면, ‘ 상태 ’ 또는 ‘ ’ 열에 기호가 표시되어 하나 이상의 제어 플레인 호스트가 구버전을 실행 중임을 나타냅니다.

다음 명령어는 업그레이드 표시기를 표시합니다:

  • ibmcloud sat location ls — 지역별 지표
  • ibmcloud sat location get --location <name> — 위치 세부 정보 표시기
  • ibmcloud sat hosts --location <name> — 호스트 수준 지표
  • ibmcloud sat host get --location <name> --host <name> — 호스트 상세 정보 표시기

다음 표는 각 기호의 의미를 설명합니다.

제어 플레인 호스트용 CLI 업그레이드 표시기 기호
기호 의미
* 하나 이상의 제어 플레인 호스트가 사용 가능한 최신 버전보다 최소 한 패치 버전 뒤처져 있습니다. 호스트 파일을 업데이트하여 최신 보안 및 안정성 수정 사항을 적용하십시오.
하나 이상의 제어 플레인 호스트가 주요 버전 또는 부 버전 기준으로 최소 한 버전 뒤처져 있습니다. 지원을 계속 받으려면 가능한 한 빨리 호스트를 업데이트하십시오.

두 기호 중 하나를 발견하면, 가능한 한 빨리 제어 플레인 호스트를 업데이트하십시오.

콘솔 업그레이드 표시기

Satellite 콘솔에서는 제어 플레인 호스트의 업그레이드 상태를 두 곳에서 확인할 수 있습니다.

위치 테이블: 새로운 ‘제어 플레인 상태’ 열에는 ‘ hostUpdateSeverity ’ 애플리케이션 프로그래밍 인터페이스(API) 필드를 기반으로 한 색상 코드 상태 아이콘이 표시됩니다.

  • 녹색 아이콘 — 모든 제어 플레인 호스트가 최신 상태입니다.
  • 노란색 아이콘 — 하나 이상의 제어 플레인 호스트가 최소 한 패치 버전 뒤처져 있습니다(* 에 해당).
  • 빨간색 아이콘 — 하나 이상의 제어 플레인 호스트가 주요 버전 또는 부 버전 기준으로 최소 한 버전 이상 뒤처져 있습니다( 에 해당).

호스트 테이블: 다음과 같이 업데이트된 상태 레이블은 조치가 필요한 제어 플레인 호스트에 적용됩니다.

제어 플레인 호스트에 대한 호스트 테이블 상태 레이블 업데이트
상태 라벨 의미
조치 필요 진행자가 여러분의 주의를 요청합니다. 이 상태는 기존의 ‘경고 ’ 라벨을 대체합니다. 필요한 조치에 대한 안내는 호스트 세부 정보와 툴팁을 확인하세요.
대체 필요 호스트가 상당히 오래된 버전이므로 교체해야 합니다. 상태가 주황색 주의 아이콘과 함께 표시됩니다. 콘솔에 표시된 툴팁 링크를 클릭하면 호스트 업데이트 절차가 열립니다.

콘솔에서 ‘정상’이 아닌 모든 호스트 상태에는 호스트 업데이트 문서로 바로 연결되는 툴팁이 표시됩니다.

제어 플레인 호스트 업데이트

버전 업데이트를 적용하려면 호스트를 분리하고, 다시 로드한 다음 재연결한 후, 제어 플레인이나 다른 위치 리소스에 다시 할당하십시오.

제어 플레인 호스트를 업데이트할 때 여러 호스트를 동시에 지정하거나 제거하지 마십시오. 이렇게 하면 제어 플레인이 중단될 수 있습니다. 다른 호스트를 지정하거나 제거하기 전에 호스트 지정 또는 제거가 완료될 때까지 기다려야 합니다.

  1. 선택사항: 기존 호스트가 업데이트되는 동안 컴퓨팅 용량을 처리할 추가 호스트를 Satellite 위치 제어 플레인에 연결하고 지정하십시오.
  2. Satellite 위치에서 업데이트할 호스트를 제거하십시오.
  3. 인프라 제공자의 가이드라인에 따라 호스트의 운영 체제를 다시 로드하십시오.
  4. Satellite 위치에 다시 호스트를 연결하십시오.
  5. Satellite 위치 제어 플레인에 다시 호스트를 지정하십시오.

부트스트랩 프로세스의 일부로서, 호스트에서 최신 이미지 및 클러스터 마스터와 일치하는 Red Hat OpenShift 버전이 업데이트되며 호스트에 대한 SSH 액세스가 제거됩니다.

Kubernetes API 서버 업데이트

Kubernetes API를 업데이트해도 컨트롤 플레인 호스트는 업데이트되지 않습니다.

Kubernetes API 서버를 업데이트하려면 cluster master update 명령을 실행하십시오.

호스트 키 재설정

제어 플레인이 Satellite 위치에 있는 모든 호스트와 통신하는 데 사용하는 키를 재설정합니다.

위치를 생성하면, Satellite API 서버가 호스트를 해당 위치에 연결하고, 호스트를 제어 플레인이나 ‘ Satellite ’ 기능이 활성화된 IBM Cloud 서비스에 할당하는 데 사용하는 API 키가 생성됩니다. 생성된 API키를 민감한 정보로 처리하고 보호해야 합니다. 이 키는 365일마다 만료됩니다. 키가 만료되면 지정되지 않은 호스트가 unresponsive 상태 가 됩니다. 추가 호스트를 연결하려면 위치에서 새 호스트 연결 스크립트를 다운로드 하고 이를 사용하여 호스트를 연결해야 합니다. 기존의 지정된 호스트는 영향을 받지 않습니다.

키가 만료되기 전에 기존 호스트 키를 재설정할 수 있습니다. Satellite 위치에 대한 호스트 키를 재설정하려면 --reset-key 옵션과 함께 ibmcloud sat host attach 명령을 실행하십시오.

ibmcloud sat host attach --location LOCATION_NAME --reset-key

Satellite 위치에서 Terraform을 사용 중인데, 호스트 키가 만료되었거나 수동으로 재설정하여 초기화된 경우, 할당된 호스트를 포함하여 모든 호스트를 다시 지정하라는 메시지가 표시됩니다. Terraform 스크립트를 업데이트하여 이 문제를 방지할 수 있습니다. 자세한 정보는 내 호스트 첨부 스크립트가 Terraform에서 상태 변경을 트리거하는 이유는 무엇입니까? 를 참조하십시오.

컨트롤 플레인을 새로운 RHEL( Red Hat Enterprise Linux ) 버전으로 마이그레이션하기

이전 버전의 RHEL에서 컨트롤 플레인 호스트를 교체하려면 먼저 사용하려는 최신 버전의 RHEL에 호스트를 추가해야 합니다. 새 호스트를 위치에 연결하고 컨트롤 플레인에 할당하면 같은 영역에 있는 기존 호스트를 컨트롤 플레인에서 제거할 수 있습니다.

RHEL의 최신 버전으로 마이그레이션하기 전에, Red Hat CoreOS (RHCOS)가 이제 CoreOS 가 활성화된 지역에서 지원되는 OS가 되었음을 유의하시기 바랍니다. RHCOS는 Red Hat OpenShift 생태계와 긴밀하게 통합된 최소한의 기능을 갖춘 보안 OS로, 주요 버전의 인플레이스 업그레이드가 가능합니다. 해당 위치에서 RHCOS 호스트를 사용하려면 먼저 Red Hat CoreOS 기능이 활성화된 위치를 생성해야 합니다. RHCOS가 사용으로 설정된 위치가 이미 있는 경우에는 대신 RHCOS 호스트를 추가하는 것을 고려하십시오. Red Hat CoreOS 기능이 활성화된 Satellite 위치를 생성하려면 “위치 이해하기”를 참조하십시오.

  1. 다음 명령을 실행하여 대체할 호스트와 해당 호스트가 있는 구역을 식별하십시오. 출력 파일에서 "os" 레이블 또는 os 레이블이 없는 호스트를 찾으십시오.

    ibmcloud sat hosts --location LOCATION_ID --output json
    

    다음 예제 출력은 "os": "RHEL7" 레이블을 표시합니다. 이 호스트는 us-south-1 구역에 있습니다.

    [
        {
            "id": " LOCATION_ID",
            "name": "LOCATION_NAME",
            "labels": {
                ...
                "os": "RHEL7"
                ...
            "state": "assigned",
            "assignment": {
                "zone": "us-south-1",
            },
        },
    ...
    ]
    
  2. 해당 위치에 대한 호스트 연결 스크립트를 다운로드하십시오.

    ibmcloud sat host attach --location LOCATION_ID
    
  3. 식별된 영역의 Satellite 위치에 대한 새 RHEL 호스트를 프로비저닝하고 해당 호스트에서 호스트 연결 스크립트를 실행합니다. 이 프로세스는 인프라에 따라 다릅니다. 자세한 정보는 사용자 위치에 호스트 연결 을 참조하십시오.

  4. 호스트가 위치에 연결되면 host assign 명령을 사용하여 위치 제어 평면에 호스트를 할당할 수 있습니다.

    ibmcloud sat host assign --host HOST_NAME --location LOCATION_ID --cluster infrastructure --zone ZONE
    
  5. 새 호스트를 컨트롤 플레인에 할당하고 나면 새 호스트가 추가된 동일한 영역에서 이전 호스트를 제거할 수 있습니다.

    ibmcloud sat host rm --location LOCATION_ID --host HOST_NAME
    

기존 컨트롤 플레인 호스트가 모두 새 호스트로 교체되고 위치에서 제거될 때까지 이 단계를 반복합니다.