서비스 엔드포인트 또는 VLAN 연결 변경

클러스터를 작성할 때 처음 네트워크를 설정하고 나면 클러스터 마스터가 액세스할 수 있는 서비스 엔드포인트를 변경하거나 작업자 노드의 VLAN 연결을 변경할 수 있습니다.

이 페이지의 내용은 클래식 클러스터에만 해당됩니다. VPC 클러스터에 대한 정보는 VPC 클러스터 네트워킹 을 참조하십시오.

프라이빗 클라우드 서비스 엔드포인트 설정

클러스터의 프라이빗 클라우드 서비스 엔드포인트를 사용으로 설정합니다.

프라이빗 클라우드 서비스 엔드포인트는 Kubernetes 마스터를 개인용으로 액세스할 수 있게 합니다. 작업자 노드와 권한이 부여된 클러스터 사용자는 사설 네트워크를 통해 Kubernetes 마스터와 통신할 수 있습니다. 프라이빗 클라우드 서비스 엔드포인트를 사용으로 설정할 수 있는지 판별하려면 작업자와 마스터 간 통신 및 사용자와 마스터 간 통신을 참조하십시오. 프라이빗 클라우드 서비스 엔드포인트를 사용으로 설정한 후에는 사용 안함으로 설정할 수 없습니다.

해당 계정에서 VRF 및 서비스 엔드포인트를 사용으로 설정하기 전에 프라이빗 클라우드 서비스 엔드포인트만 사용하는 클러스터를 작성했습니까? 계정을 업데이트하기 위한 지원 케이스가 처리될 때까지 클러스터를 사용할 수 있도록 퍼블릭 클라우드 서비스 엔드포인트를 설정해 보십시오.

  1. IBM Cloud infrastructure 계정에서 VRF를 사용으로 설정하십시오. VRF가 이미 사용으로 설정되었는지 확인하려면 ibmcloud account show 명령을 사용하십시오.

  2. 서비스 엔드포인트를 사용하려면 IBM Cloud 계정을 사용으로 설정하십시오.

  3. 프라이빗 클라우드 서비스 엔드포인트를 사용으로 설정하십시오.

    ibmcloud ks cluster master private-service-endpoint enable --cluster CLUSTER_NAME_OR_ID
    
  4. 프라이빗 클라우드 서비스 엔드포인트를 사용하려면 Kubernetes 마스터 API 서버를 새로 고치십시오. CLI의 프롬프트에 따라 수동으로 다음 명령을 실행할 수 있습니다. 마스터를 새로 고치는 데 몇 분이 걸릴 수 있습니다.

    ibmcloud ks cluster master refresh --cluster CLUSTER_NAME_OR_ID
    
  5. configmap을 작성하여 클러스터에서 한 번에 사용할 수 없는 최대 작업자 노드 수를 제어하십시오. 작업자 노드를 업데이트할 때 configmap을 사용하면 앱이 사용 가능한 작업자 노드에 순서대로 다시 스케줄되므로 앱의 작동중단시간을 방지할 수 있습니다.

  6. 클러스터에서 모든 작업자 노드를 업데이트하여 프라이빗 클라우드 서비스 엔드포인트 구성을 선택하십시오.

    업데이트 명령을 실행하면 작업자 노드가 다시 로드되어 서비스 엔드포인트 구성을 선택합니다. 작업자 업데이트를 사용할 수 없으면 작업자 노드를 수동으로 다시 로드해야 합니다. 다시 로드하는 경우, 한 번에 사용할 수 없는 최대 작업자 노드 수를 제어하려면 순서를 유출, 드레인 및 관리해야 합니다.

    ibmcloud ks worker update --cluster CLUSTER_NAME_OR_ID --worker WORKER1,WORKER2
    
  7. 클러스터가 방화벽으로 보호되는 환경에 있는 경우:

  8. 선택사항: 프라이빗 클라우드 서비스 엔드포인트만 사용하려면 다음 작업을 수행하십시오.

    1. 퍼블릭 클라우드 서비스 엔드포인트를 사용 안함으로 설정하십시오.
    2. 프라이빗 클라우드 서비스 엔드포인트에서 마스터에 대한 액세스 권한을 설정하십시오.

퍼블릭 클라우드 서비스 엔드포인트 설정

클러스터에 대한 퍼블릭 클라우드 서비스 엔드포인트를 사용 또는 사용 안함으로 설정할 수 있습니다.

퍼블릭 클라우드 서비스 엔드포인트는 Kubernetes 마스터에 공용으로 액세스할 수 있게 합니다. 작업자 노드와 권한이 부여된 클러스터 사용자는 공용 네트워크를 통해 Kubernetes 마스터와 안전하게 통신할 수 있습니다. 자세한 정보는 작업자와 마스터 간 및 사용자와 마스터 간 통신을 참조하십시오.

퍼블릭 클라우드 서비스 엔드포인트를 사용으로 설정하는 단계

이전에 공용 엔드포인트를 사용 안함으로 설정한 경우 다시 사용으로 설정할 수 있습니다.

  1. 퍼블릭 클라우드 서비스 엔드포인트를 사용으로 설정하십시오.
    ibmcloud ks cluster master public-service-endpoint enable --cluster CLUSTER_NAME_OR_ID
    
  2. 퍼블릭 클라우드 서비스 엔드포인트를 사용하려면 Kubernetes 마스터 API 서버를 새로 고치십시오. CLI의 프롬프트에 따라 수동으로 다음 명령을 실행할 수 있습니다. 마스터를 새로 고치는 데 몇 분이 걸릴 수 있습니다.
    ibmcloud ks cluster master refresh --cluster CLUSTER_NAME_OR_ID
    
  3. configmap을 작성하여 클러스터에서 한 번에 사용할 수 없는 최대 작업자 노드 수를 제어하십시오. 작업자 노드를 업데이트할 때 configmap을 사용하면 앱이 사용 가능한 작업자 노드에 순서대로 다시 스케줄되므로 앱의 작동중단시간을 방지할 수 있습니다.
  4. 클러스터에서 모든 작업자 노드를 업데이트하여 퍼블릭 클라우드 서비스 엔드포인트 구성을 제거하십시오.
    ibmcloud ks worker update --cluster CLUSTER_NAME_OR_ID --worker WORKER1,WORKER2
    
    업데이트 명령을 실행하면 작업자 노드가 다시 로드되어 서비스 엔드포인트 구성을 선택합니다. 작업자 노드에 대한 업데이트가 없는 경우, ibmcloud ks worker reload [ 명령어를](/docs/containers?topic=containers-kubernetes-service-cli#worker-reload-cli) 사용하여 작업자 노드를 수동으로 다시 불러와야 합니다. 다시 로드하는 경우, 한 번에 사용할 수 없는 최대 작업자 노드 수를 제어하려면 순서를 유출, 드레인 및 관리해야 합니다.

퍼블릭 클라우드 서비스 엔드포인트를 사용 안함으로 설정하는 단계

퍼블릭 클라우드 서비스 엔드포인트를 사용 안함으로 설정하려면 먼저 작업자 노드가 Kubernetes 마스터와 통신할 수 있도록 프라이빗 클라우드 서비스 엔드포인트를 사용으로 설정해야 합니다.

  1. 프라이빗 클라우드 서비스 엔드포인트를 사용으로 설정하십시오.

  2. 퍼블릭 클라우드 서비스 엔드포인트를 사용 안함으로 설정하십시오.

    ibmcloud ks cluster master public-service-endpoint disable --cluster CLUSTER_NAME_OR_ID
    
  3. 퍼블릭 클라우드 서비스 엔드포인트를 제거하기 위해 CLI 프롬프트의 지시에 따르거나 다음 명령을 수동으로 실행하여 Kubernetes 마스터 API 서버를 새로 고치십시오. 마스터를 새로 고치는 데 몇 분이 걸릴 수 있습니다.

    ibmcloud ks cluster master refresh --cluster CLUSTER_NAME_OR_ID
    
  4. configmap을 작성하여 클러스터에서 한 번에 사용할 수 없는 최대 작업자 노드 수를 제어하십시오. 작업자 노드를 업데이트할 때 configmap을 사용하면 앱이 사용 가능한 작업자 노드에 순서대로 다시 스케줄되므로 앱의 작동중단시간을 방지할 수 있습니다.

  5. 클러스터에서 모든 작업자 노드를 업데이트하여 퍼블릭 클라우드 서비스 엔드포인트 구성을 제거하십시오.

    ibmcloud ks worker update --cluster CLUSTER_NAME_OR_ID --worker WORKER1,WORKER2
    

    업데이트 명령을 실행하면 작업자 노드가 다시 로드되어 서비스 엔드포인트 구성을 선택합니다. 작업자 노드에 대한 업데이트가 없는 경우, ibmcloud ks worker reload [ 명령어를](/docs/containers?topic=containers-kubernetes-service-cli#worker-reload-cli) 사용하여 작업자 노드를 수동으로 다시 불러와야 합니다. 다시 로드하는 경우, 한 번에 사용할 수 없는 최대 작업자 노드 수를 제어하려면 순서를 유출, 드레인 및 관리해야 합니다.

퍼블릭 클라우드 서비스 엔드포인트에서 프라이빗 클라우드 서비스 엔드포인트로 전환

프라이빗 클라우드 서비스 엔드포인트를 사용으로 설정하여 작업자 노드가 공용 네트워크 대신 사설 네트워크와 통신하도록 설정할 수 있습니다.

공용 및 사설 VLAN에 연결된 모든 클러스터는 기본적으로 퍼블릭 클라우드 서비스 엔드포인트를 사용합니다. 작업자 노드와 권한이 부여된 클러스터 사용자는 공용 네트워크를 통해 Kubernetes 마스터와 안전하게 통신할 수 있습니다. 작업자 노드가 공용 네트워크 대신 사설 네트워크를 통해 Kubernetes 마스터와 통신하도록 설정하기 위해 프라이빗 클라우드 서비스 엔드포인트를 사용으로 설정할 수 있습니다. 그런 다음 선택적으로 퍼블릭 클라우드 서비스 엔드포인트를 사용 안함으로 설정할 수 있습니다.

  • 프라이빗 클라우드 서비스 엔드포인트를 사용으로 설정하고 퍼블릭 클라우드 서비스 엔드포인트도 사용으로 설정된 상태로 유지하는 경우 작업자는 항상 사설 네트워크를 통해 마스터와 통신하지만 사용자는 공용 또는 사설 네트워크 중 하나를 통해 마스터와 통신할 수 있습니다.
  • 프라이빗 클라우드 서비스 엔드포인트를 사용으로 설정하고 퍼블릭 클라우드 엔드포인트를 사용 안함으로 설정하는 경우 작업자 및 사용자는 사설 네트워크를 통해 마스터와 통신해야 합니다.

프라이빗 클라우드 서비스 엔드포인트를 활성화한 후에는 비활성화할 수 없습니다.

  1. IBM Cloud infrastructure 계정에서 VRF를 사용으로 설정하십시오. VRF가 이미 사용으로 설정되었는지 확인하려면 ibmcloud account show 명령을 사용하십시오.

  2. 서비스 엔드포인트를 사용하려면 IBM Cloud 계정을 사용으로 설정하십시오.

  3. 프라이빗 클라우드 서비스 엔드포인트를 사용으로 설정하십시오.

    ibmcloud ks cluster master private-service-endpoint enable --cluster CLUSTER_NAME_OR_ID
    
  4. 프라이빗 클라우드 서비스 엔드포인트를 사용하기 위해 CLI 프롬프트의 지시에 따르거나 다음 명령을 수동으로 실행하여 Kubernetes 마스터 API 서버를 새로 고치십시오. 마스터를 새로 고치는 데 몇 분이 걸릴 수 있습니다.

    ibmcloud ks cluster master refresh --cluster CLUSTER_NAME_OR_ID
    
  5. configmap을 작성하여 클러스터에서 한 번에 사용할 수 없는 최대 작업자 노드 수를 제어하십시오. 작업자 노드를 업데이트할 때 configmap을 사용하면 앱이 사용 가능한 작업자 노드에 순서대로 다시 스케줄되므로 앱의 작동중단시간을 방지할 수 있습니다.

  6. 클러스터에서 모든 작업자 노드를 업데이트하여 프라이빗 클라우드 서비스 엔드포인트 구성을 선택하십시오.

    업데이트 명령을 실행하면 작업자 노드가 다시 로드되어 서비스 엔드포인트 구성을 선택합니다. 작업자 업데이트를 사용할 수 없으면 작업자 노드를 수동으로 다시 로드해야 합니다. 다시 로드하는 경우, 한 번에 사용할 수 없는 최대 작업자 노드 수를 제어하려면 순서를 유출, 드레인 및 관리해야 합니다.

    ibmcloud ks worker update --cluster CLUSTER_NAME_OR_ID --worker WORKER1,WORKER2
    
  7. 선택사항: 프라이빗 클라우드 서비스 엔드포인트만 사용하려면 다음 작업을 수행하십시오.

    1. 퍼블릭 클라우드 서비스 엔드포인트를 사용 안함으로 설정하십시오.
        ibmcloud ks cluster master public-service-endpoint disable --cluster CLUSTER_NAME_OR_ID
        ```
    2. [프라이빗 클라우드 서비스 엔드포인트에서 마스터에 대한 액세스 권한을 설정](/docs/containers?topic=containers-access-private-classic)하십시오.
    
    
    
    

작업자 노드 VLAN 연결 변경

클러스터를 작성할 때 작업자 노드를 사설 및 공용 VLAN에 연결할지 또는 사설 VLAN에만 연결할지 선택합니다. 작업자 노드는 풀에서 향후의 작업자 노드를 프로비저닝하는 데 사용할 VLAN을 포함하는 네트워킹 메타데이터를 저장하는 작업자 풀의 파트입니다. 다음과 같은 경우에 클러스터의 VLAN 연결 설정을 나중에 변경할 수 있습니다.

  • 구역의 작업자 풀 VLAN이 용량이 부족하여 클러스터 작업자 노드가 사용할 새 VLAN을 프로비저닝해야 합니다.
  • 공용 및 사설 VLAN 둘 다에 있는 작업자 노드가 포함된 클러스터가 있지만 사설 전용 클러스터로 변경하려고 합니다.
  • 사설 전용 클러스터가 있지만 공용 VLAN에 있는 에지 노드의 작업자 풀과 같은 일부 작업자 노드에서 인터넷에 앱을 노출시키려고 합니다.

대신 마스터-작업자 통신을 위해 서비스 엔드포인트를 변경하시겠습니까? 공용 및 개인 서비스 엔드포인트를 설정하기 위한 주제를 확인하십시오.

VLAN에서 모든 작업자를 제거하면 VLAN의 구역에서 Ingress ALB의 IP 주소가 제거됩니다.

계정에 로그인하십시오. If applicable, target the appropriate resource group. 클러스터에 대한 컨텍스트를 설정하십시오.

작업자 풀이 작업자 노드를 프로비저닝하는 데 사용하는 VLAN을 변경하려면 다음을 수행하십시오.

  1. 클러스터에 있는 작업자 풀의 이름을 나열하십시오.

    ibmcloud ks worker-pool ls --cluster CLUSTER_NAME_OR_ID
    
  2. 작업자 풀 중 하나에 대한 구역을 판별하십시오. 출력에서 구역 필드를 찾으십시오.

    ibmcloud ks worker-pool get --cluster CLUSTER_NAME_OR_ID --worker-pool POOL_NAME
    
  3. 이전 단계에서 찾은 각 구역에 대해 서로 호환되는 사용 가능한 공용 및 사설 VLAN을 가져오십시오.

    1. 출력에서 유형 아래에 나열된 사용 가능한 공용 및 사설 VLAN을 확인하십시오.
        ibmcloud ks vlan ls --zone ZONE
        ```
    2. 구역의 공용 및 사설 VLAN이 호환 가능한지 확인하십시오. 호환 가능하려면 **라우터**의 팟(Pod) ID가 동일해야 합니다. 이 예제 출력에서 **Router** 팟(Pod) ID가 일치합니다(`01a` 및 `01a`). 하나의 팟(Pod) ID가 `01a`이고 다른 팟(Pod) ID가 `02a`인 경우에는 작업자 풀에 대해 이러한 공용 및 사설 VLAN ID를 설정할 수 없습니다.
    ```sh {: screen}
        ID        Name   Number   Type      Router         Supports Virtual Workers
        229xxxx          1234     private   bcr01a.dal12   true
        229xxxx          5678     public    fcr01a.dal12   true
        ```
    3. 구역에 대한 새 공용 또는 사설 VLAN을 주문해야 하는 경우 [IBM Cloud 콘솔](/docs/vlans?topic=vlans-ordering-premium-vlans#ordering-premium-vlans)에서 주문하거나 다음 명령을 사용할 수 있습니다. 이전 단계에서와 마찬가지로 **라우터** 팟(Pod) ID와 일치하며 VLAN이 호환 가능해야 합니다. 한 쌍의 새 공용 및 사설 VLAN을 작성하는 경우, 서로 호환 가능해야 합니다.
    ```sh {: pre}
        ibmcloud sl vlan create -t [public|private] -d <zone> -r <compatible_router>
        ```
    4. 호환 가능한 VLAN의 ID를 기록해 두십시오.
    
    
  4. 각 구역에 대한 새 VLAN 네트워크 메타데이터를 사용하여 작업자 풀을 설정하십시오. 새 작업자 풀을 작성하거나 기존 작업자 풀을 수정할 수 있습니다.

    • 워커 풀 생성: 새 워커 풀을 생성하여 워커 노드를 추가하는 방법을 참조하세요.

    • 기존 작업자 풀 수정: 작업자 풀의 네트워크 메타데이터를 설정하여 각 구역에 대한 VLAN을 사용하십시오. 풀에서 이미 작성된 작업자 노드는 계속해서 이전 VLAN을 사용하지만, 풀의 새 작업자 노드는 설정한 새 VLAN 메타데이터를 사용합니다.

    • 사설 전용에서 사설 및 공용 모두로 변경하는 경우와 같이 공용 및 사설 VLAN 모두를 추가하는 예제는 다음과 같습니다.

        ibmcloud ks zone network-set --zone ZONE --cluster CLUSTER_NAME_OR_ID --worker-pool POOL_NAME --private-vlan PRIVATE_VLAN_ID --public-vlan PUBLIC_VLAN_ID
        ```
    - [서비스 엔드포인트를 사용하는 VRF가 사용으로 설정된 계정](/docs/account?topic=account-vrf-service-endpoint)이 있을 때 공용 및 사설 VLAN에서 사설 전용으로 변경하는 경우와 같이 사설 VLAN만 추가하는 예제는 다음과 같습니다.
    
    ```sh {: pre}
        ibmcloud ks zone network-set --zone ZONE --cluster CLUSTER_NAME_OR_ID --worker-pool POOL_NAME --private-vlan PRIVATE_VLAN_ID --private-only
        ```
    
  5. 풀의 크기를 다시 조정하여 작업자 풀에 작업자 노드를 추가하십시오.

    ibmcloud ks worker-pool resize --cluster CLUSTER_NAME_OR_ID --worker-pool POOL_NAME --size-per-zone NUMBER_OF_WORKERS_PER_ZONE
    

    이전 네트워크 메타데이터를 사용하는 작업자 노드를 제거하려면 구역 당 작업자 수를 변경하여 구역 당 작업자 수를 이전의 두 배로 늘리십시오. 이 단계의 후반부에서 이전 작업자 노드를 유출, 드레인 및 제거할 수 있습니다.

  6. 출력에서 새 작업자 노드가 적절한 공인 IP 및 사설 IP 주소로 작성되었는지 확인하십시오. 예를 들어, 작업자 풀을 공용 및 사설 VLAN에서 사설 전용으로 변경하면 새 작업자 노드에는 사설 IP만 있습니다. 작업자 풀을 사설 전용에서 공용 및 사설 VLAN 모두로 변경하면 새 작업자 노드에는 공용 및 사설 IP 모두 있습니다.

    ibmcloud ks worker ls --cluster CLUSTER_NAME_OR_ID --worker-pool POOL_NAME
    
  7. 선택사항: 작업자 풀에서 이전 네트워크 메타데이터를 사용하는 작업자 노드를 제거하십시오.

    1. 이전 단계의 출력에서 작업자 풀로부터 작업자 노드의 ID를 기록해 두십시오.
    2. 작업자 노드를 제거하십시오.
        ibmcloud ks worker rm --cluster CLUSTER_NAME_OR_ID --worker WORKER_NAME_OR_ID
        ```
    3. 작업자 노드가 제거되었는지 확인하십시오.
    ```sh {: pre}
        ibmcloud ks worker ls --cluster CLUSTER_NAME_OR_ID --worker-pool POOL_NAME
        ```
    4. 작업자 풀을 리밸런싱하십시오.
    ```sh {: pre}
        ibmcloud ks worker-pool rebalance --cluster CLUSTER_NAME_OR_ID --worker-pool POOL_NAME
        ```
    
    
    
  8. 선택 사항: 클러스터에 속한 각 워커 풀에 대해 2~7단계를 반복합니다. 이러한 단계를 완료하면 클러스터의 모든 작업자 노드가 새 VLAN으로 설정됩니다.

  9. IP 주소가 이전 VLAN의 서브넷에서 가져온 것이므로 클러스터의 기본 ALB는 계속해서 이전 VLAN에 바인드됩니다. ALB는 VLAN을 통해 이동할 수 없으므로, 대신 새 VLAN에서 ALB를 작성하고 이전 VLAN에서 ALB를 사용 안함으로 설정할 수 있습니다.

  10. 선택사항: 더 이상 이전 VLAN의 서브넷이 필요하지 않은 경우, 서브넷을 제거할 수 있습니다.