호스트 레이블 자동 지정을 사용하여 호스트 지정

호스트는 사용 가능한 컴퓨팅 용량에 맞춰 호스트 레이블을 기반으로 클러스터 또는 ‘ Satellite ’ 기능이 활성화된 IBM Cloud 서비스 내의 워커 풀에 자동으로 할당됩니다. 자동 할당 기능을 켜거나 끌 수 있습니다.

Satellite 위치 제어 플레인에는 호스트 자동 지정을 사용할 수 없습니다.

호스트 레이블

Satellite 클러스터에서 호스트 자동 할당은 워커 풀 레이블을 사용 가능한 호스트의 호스트 및 존 레이블과 매칭합니다.

자동 지정에 사용되는 호스트 레이블에 대한 다음 정보를 염두에 두십시오.

기본 호스트 레이블
호스트를 Satellite 위치에 연결하면 호스트에 cpu, os 및 memory(바이트 단위)에 대한 레이블이 자동으로 지정됩니다. 이러한 레이블은 제거할 수 없습니다. 추가 호스트 레이블을 포함시키거나, 나중에 호스트 메타데이터를 업데이트하는 것은 가능합니다. 호스트가 os 레이블을 포함하지 않는 경우, 이는 자동으로 RHEL7(으)로 간주됩니다.
호스트에는 작업자 풀보다 더 많은 레이블이 있을 수 있음
예를 들어, cpu, memory, env 라는 호스트 레이블을 가진 호스트는 cpu 라는 호스트 레이블만 있는 워커 풀에 자동으로 할당될 수 있습니다. 호스트 자동 지정은 cpu 레이블을 대응시킵니다. 반대의 경우는 적용되지 않습니다. 즉, 워커 풀의 레이블 수가 호스트의 레이블 수보다 많을 경우, 해당 호스트는 해당 워커 풀에 자동으로 할당될 수 없습니다.
일치는 정확해야 함
호스트 레이블은 서로 정확히 동일(=)해야 합니다. 호스트 레이블이 숫자인 경우에도 미만(<), 초과(>) 또는 기타 연산자가 일치에 사용되지 않습니다.

호스트 자동 지정 시나리오 예

default에 us-east-1a 작업자 풀이 있는 Satellite 클러스터가 있고 다음과 같은 호스트 레이블이 있다고 가정합니다.

  • cpu=4
  • env=prod
  • os=RHEL7

사용자의 Satellite 위치에는 호스트 레이블이 다음과 같은 사용 가능한(지정되지 않은) 호스트가 있습니다.

  • 호스트 A: cpu=4, memory=32, env=prod, zone=us-east-1b os=rhel
  • 호스트 B: cpu=4, memory=32, zone=us-east-1a os=RHEL7
  • 호스트 C: cpu=4, memory=64, env=prod os=RHEL7
  • 진행자 D: cpu=4, memory=64, env=prod os=RHCOS ( Red Hat CoreOS )

3개의 추가 작업자 노드를 요청하기 위해 default 작업자 풀의 크기를 조정하는 경우에는 호스트 C만 자동 지정될 수 있으며 호스트 A 또는 B는 지정될 수 없습니다.

  • 호스트 A는 중앙 처리 장치(CPU) 및 env=prod 라벨 요청을 처리하지만, us-east-1b 에서만 할당될 수 있습니다. default 작업자 풀은 us-east-1a에만 있으므로 호스트 A는 지정되지 않습니다.
  • 호스트 B는 CPU 및 구역 요청을 충족합니다. 그러나 이 호스트에는 env=prod 레이블이 없으므로 지정되지 않습니다.
  • 호스트 C는 cpu=4 및 env=prod 호스트 레이블과 일치하며, 구역 제한사항이 없으므로 자동으로 지정됩니다. 작업자 풀은 memory=64 레이블을 요청하지 않으므로 memory 호스트 레이블은 고려되지 않습니다.
  • 호스트 D는 CPU, 구역 및 env=prod 레이블 요청을 충족하지만 os 요청 RHEL7을(를) 충족시키지 않으므로 지정되지 않습니다.

호스트는 클러스터에 있는 기본 작업자 풀의 각 구역에서 작업자 노드로 지정되어야 합니다. 기본 작업자 풀이 여러 구역에 걸쳐 있는 경우, 각 구역에 지정할 수 있는 일치하는 레이블이 있는 호스트가 있는지 확인하십시오.

호스트 자동 지정

IBM Cloud Satellite cpu 과 같은 호스트 레이블을 사용하여 컴퓨팅 용량을 요청하는 클러스터 내의 워커 풀에 호스트를 자동으로 할당합니다.

시작하기 전에 Satellite 클러스터를 작성해야 합니다. CLI 에서 클러스터를 작성하는 경우 자동으로 지정할 호스트 수와 함께 --workers 옵션을 지정해야 합니다. 그런 다음, 호스트를 Satellite 위치에 연결하지만 호스트를 자원에 지정하지 않도록 하십시오.

  1. 작업자 풀이 컴퓨팅 용량을 요청하는 데 사용하는 호스트 레이블을 검토하십시오. 여러 옵션이 있습니다.

    • 자동 지정에 사용할 호스트 레이블을 사용하여 Satellite 클러스터에 작업자 풀을 작성합니다.
    • 기존 작업자 풀의 호스트 레이블을 검토합니다. 작업자 풀에 있는 호스트 레이블은 업데이트할 수 없다는 점을 유의하십시오. ibmcloud oc worker-pool get -c <cluster> --worker-pool <worker_pool> 명령을 실행하여 호스트 레이블을 검토할 수 있습니다.
    • Satellite 사용 IBM Cloud 서비스 클러스터가 Satellite 사용 IBM Cloud 서비스 인스턴스 콘솔에서 리소스를 요청하는 데 사용하는 호스트 레이블을 검토하십시오.
  2. 사용 가능한 호스트에 있는 호스트 레이블을 검토하십시오. 호스트는 Satellite 위치에 연결될 때 cpu 및 memory 레이블이 자동으로 지정된다는 점을 참고하십시오.

    1. Satellite 위치 이름을 가져오십시오.
        ibmcloud sat location ls
        ```
    2. 사용자의 위치에 있는 사용 가능한(지정되지 않은) 호스트를 나열하고 레이블을 확인할 호스트의 ID를 기록하십시오.
    ```sh {: pre}
        ibmcloud sat host ls --location LOCATION_NAME_OR_ID | grep unassigned
        ```
    3. 확인할 각 호스트에 대해 호스트 세부사항을 가져오고 출력에 있는 **레이블**을 기록하십시오.
    ```sh {: pre}
        ibmcloud sat host get --location LOCATION_NAME_OR_ID --host HOST_NAME_OR_ID
        ```
        출력 예
        ```sh {: screen}
        ...
        Labels      
        app      webserver   
        cpu      4   
        memory   3874564
        os       RHCOS
        ...
        ```
    
  3. 호스트를 자동 지정에 사용할 수 있도록 하려는 작업자 풀의 모든 레이블과 일치하도록 사용 가능한 호스트의 레이블을 업데이트하십시오. 선택적으로 구역을 지정하여 해당 호스트가 그 구역에만 자동 지정되도록 할 수 있습니다.

    호스트의 cpu, os 및 memory 레이블은 자동으로 적용되며 편집할 수 없습니다.

    ibmcloud sat host update --location <location_name_or_ID> --host <host_name_or_ID> -hl <key=value> [-hl <key=value>] [--zone <zone1>]
    

호스트 자동 지정 사용 안함

다음 조치는 작업자 풀에 대한 호스트 자동 지정을 사용 안함으로 설정합니다. 나중에 호스트 자동 지정을 다시 사용으로 설정할 수 있습니다.

호스트 자동 지정을 다시 사용으로 설정

호스트 자동 지정을 사용 안함으로 설정한 경우 자동 지정을 다시 사용으로 설정할 수 있습니다.

  1. 작업자 풀의 호스트 레이블과 일치하는 레이블이 지정된 사용 가능한 호스트가 있는지 확인하십시오.
  2. 작업자 풀의 크기를 조정하여 구역별로 요청된 크기를 설정하고, 작업자 풀을 재밸런싱하고, 자동 지정을 다시 사용으로 설정하십시오.

Satellite 클러스터의 경우, 워커 풀에 워커 노드를 수동으로 할당한 상태라면 ibmcloud oc worker-pool rebalance 명령어를 사용하지 마십시오. 수동으로 할당된 워커 노드가 포함된 풀의 균형을 재조정하면 예상된 수보다 더 많은 워커 노드가 제거됩니다.