Anthos On-Prem API에서 관리할 클러스터 구성

Anthos On-Prem API는 표준 도구(Google Cloud 콘솔, Google Cloud CLI 또는 Terraform)를 사용하여 온프레미스 클러스터의 수명 주기를 관리할 수 있게 해주는 Google Cloud 호스팅 API입니다. 이러한 도구 중 하나를 사용하여 클러스터를 만드는 경우 API는 클러스터를 만들 때 지정한 Google Cloud 리전에 클러스터 상태에 대한 메타데이터를 저장합니다. 이 메타데이터를 사용하면 표준 도구를 사용하여 클러스터의 수명 주기를 관리할 수 있습니다. 이러한 도구를 사용하여 클러스터 세부정보를 보거나 bmctl로 생성된 클러스터의 수명 주기를 관리하려면 Anthos On-Prem API에 클러스터를 등록해야 합니다.

용어

클러스터를 등록하면 콘솔, gcloud CLI 또는 Terraform을 사용하여 클러스터 수명 주기를 관리할 수 있습니다.

클러스터 등록은 클러스터를 Fleet에 등록하는 별도의 프로세스입니다. Fleet은 함께 관리할 수 있는 Kubernetes 클러스터의 논리적 그룹입니다. 모든 베어메탈용 Anthos 클러스터는 클러스터 생성 시 Fleet에 등록됩니다. bmctl을 사용하여 클러스터를 만들면 클러스터가 클러스터 구성 파일의 gkeConnect.projectID 필드에 지정한 Google Cloud 프로젝트에 등록됩니다. 이 프로젝트를 Fleet 호스트 프로젝트라고 합니다. 사용 사례, 권장사항, 예시 등 Fleet에 대한 자세한 내용은 Fleet 관리 문서를 참조하세요.

등록된 클러스터 보기

모든 fleet 클러스터는 콘솔의 Anthos 클러스터GKE 클러스터 페이지에 표시됩니다. 두 가지 모두 전체 fleet에 대한 개요를 제공하며, 베어메탈용 Anthos 클러스터의 경우 Anthos On-Prem API에서 관리되는 클러스터를 확인할 수 있습니다.

Fleet 클러스터를 보려면 다음을 수행하세요.

  1. 콘솔에서 Anthos 클러스터 페이지로 이동합니다.
    Anthos 클러스터 페이지로 이동
  2. Google Cloud 프로젝트를 선택합니다.
    • Anthos(베어메탈)유형 열에 표시되면 클러스터가 Anthos On-Prem API에서 관리됩니다.
    • 유형 열에 외부가 표시되는 경우 클러스터는 Anthos On-Prem API에서 관리되지 않습니다.
Anthos 클러스터 목록

요구사항

  • 사용자 및 관리자 클러스터만 Anthos On-Prem API에 등록할 수 있습니다. 하이브리드 및 독립형 클러스터 등록은 지원되지 않습니다.
  • 버전 1.13 이상이 필요합니다.
  • 조직에서 Google API 및 기타 주소의 트래픽이 프록시 서버를 통과하도록 허용하는 허용 목록이 설정된 경우 허용 목록에 다음을 추가합니다.

    • gkeonprem.googleapis.com
    • gkeonprem.mtls.googleapis.com

    이는 Anthos On-Prem API에 대한 서비스 이름입니다.

  • 프로젝트 소유자가 아닌 경우 프로젝트에 대한 Identity and Access Management(IAM) 역할 roles/gkeonprem.admin을 부여받아야 합니다. 이 역할에 포함된 권한에 대한 자세한 내용은 IAM 문서의 GKE On-Prem 역할을 참조하세요.

사용자 클러스터 등록

Anthos On-Prem API에서 관리할 클러스터를 등록하려면 다음 안내를 따르세요.

  1. gcloud CLI 베타 구성요소를 포함하여 최신 버전의 gcloud CLI가 있는지 확인합니다.

    1. 베타 구성요소가 아직 없으면 다음 명령어를 실행하여 설치합니다.

      gcloud components install beta
      
    2. 필요한 경우 gcloud CLI 구성요소를 업데이트합니다.

        gcloud components update
      
  2. Fleet 호스트 프로젝트에서 Anthos On-Prem API를 사용 설정합니다.

    gcloud services enable \
        --project FLEET_HOST_PROJECT_ID \
        gkeonprem.googleapis.com
    

    FLEET_HOST_PROJECT_IDFleet 호스트 프로젝트의 프로젝트 ID로 바꿉니다. 이 프로젝트 ID는 클러스터 구성 파일gkeconnect 섹션에서 구성한 프로젝트 ID입니다.

  3. Anthos On-Prem API를 사용하여 클러스터를 등록합니다.

    사용자 클러스터

    필요에 따라 화면을 스크롤해서 --admin-cluster-membership 플래그의 ADMIN_CLUSTER_NAME 자리표시자를 채워야 합니다.

    gcloud beta container bare-metal clusters enroll USER_CLUSTER_NAME  \
      --project=FLEET_HOST_PROJECT_ID \
      --admin-cluster-membership=projects/FLEET_HOST_PROJECT_ID/locations/global/memberships/ADMIN_CLUSTER_NAME \
      --location=LOCATION
    

    다음을 바꿉니다.

    • USER_CLUSTER_NAME: 등록하려는 사용자 클러스터의 이름입니다.

    • FLEET_HOST_PROJECT_ID: Fleet 호스트 프로젝트의 프로젝트 ID입니다.

    • ADMIN_CLUSTER_NAME: 사용자 클러스터를 관리하는 관리자 클러스터입니다. 관리자 클러스터 이름은 Google Cloud에서 클러스터를 고유하게 식별하는 완전히 지정된 클러스터 이름의 마지막 세그먼트입니다.

    • LOCATION: Anthos On-Prem API가 실행되는 Google Cloud 리전입니다. us-west1 또는 다른 지원되는 리전을 지정합니다. 클러스터를 등록한 후에는 리전을 변경할 수 없습니다. Anthos On-Prem API가 실행되는 리전을 설정하는 것 외에도 다음 항목이 저장되는 리전입니다.

      • Anthos On-Prem API가 클러스터 수명 주기를 관리하는 데 필요한 사용자 클러스터 메타데이터
      • 시스템 구성요소의 Cloud Logging 및 Cloud Monitoring 데이터
      • Cloud 감사 로그에서 만든 관리자 감사 로그

    관리자 클러스터

    gcloud beta container bare-metal admin-clusters enroll ADMIN_CLUSTER_NAME \
      --project=FLEET_HOST_PROJECT_ID \
      --admin-cluster-membership=projects/FLEET_HOST_PROJECT_ID/locations/global/memberships/ADMIN_CLUSTER_NAME \
      --location=LOCATION
    

    다음을 바꿉니다.

    • ADMIN_CLUSTER_NAME: 등록하려는 관리자 클러스터의 이름입니다.

    • FLEET_HOST_PROJECT_ID: Fleet 호스트 프로젝트의 프로젝트 ID입니다.

      ADMIN_CLUSTER_NAMEFLEET_HOST_PROJECT_ID--admin-cluster-membership 플래그에 대해 완전히 지정된 클러스터 이름을 형성하는 데 사용됩니다.

    • LOCATION: Anthos On-Prem API가 실행되는 Google Cloud 리전입니다. us-west1 또는 다른 지원되는 리전을 지정합니다. 클러스터를 등록한 후에는 리전을 변경할 수 없습니다. Anthos On-Prem API가 실행되는 리전을 설정하는 것 외에도 다음 항목이 저장되는 리전입니다.

      • Anthos On-Prem API가 클러스터 수명 주기를 관리하는 데 필요한 클러스터 메타데이터
      • 시스템 구성요소의 Cloud Logging 및 Cloud Monitoring 데이터
      • Cloud 감사 로그에서 만든 관리자 감사 로그
  4. 클러스터가 등록되면 다음 명령어를 사용하여 클러스터에 대한 정보를 가져올 수 있습니다.

    사용자 클러스터

    • 사용자 클러스터를 설명하려면 다음 안내를 따르세요.
    gcloud beta container bare-metal clusters describe USER_CLUSTER_NAME \
       --project=FLEET_HOST_PROJECT_ID \
       --location=LOCATION
    
    • 사용자 클러스터를 나열하려면 다음 안내를 따르세요.
    gcloud beta container bare-metal clusters list \
       --project=FLEET_HOST_PROJECT_ID \
       --location=LOCATION
    

    관리자 클러스터

    • 관리자 클러스터를 설명하려면 다음 안내를 따르세요.
    gcloud beta container bare-metal admin-clusters describe ADMIN_CLUSTER_NAME \
       --project=FLEET_HOST_PROJECT_ID \
       --location=LOCATION
    
    • 관리자 클러스터를 나열하려면 다음 안내를 따르세요.
    gcloud beta container bare-metal admin-clusters list \
       --project=FLEET_HOST_PROJECT_ID \
       --location=LOCATION
    

클러스터에 연결

클러스터를 Anthos On-Prem API에 등록한 후에는 Google Cloud 콘솔에서 클러스터를 관리할 수 있도록 인증 방법을 선택하고 구성해야 합니다. 선택한 인증 메서드는 명령줄에서 클러스터에 대한 액세스도 제어합니다. 자세한 내용은 다음을 참조하세요.