여러 Google Cloud 프로젝트 사용

이 문서에서는 하나 이상의 Google Cloud 프로젝트를 VMware용 Anthos 클러스터와 연결하는 방법을 설명합니다.

여기에는 전체 안내가 나와 있습니다. Google Cloud 프로젝트 사용에 대한 간략한 소개는 최소 인프라 설정을 참조하세요.

시작하기 전에

Google Cloud CLI를 설치합니다.

Fleet 호스트 프로젝트

모든 관리자 클러스터는 Fleet에 등록해야 합니다. 관리자 클러스터에서 관리하는 모든 사용자 클러스터는 관리자 클러스터와 동일한 Fleet에 등록해야 합니다.

관리자 또는 사용자 클러스터가 Fleet에 등록되면 Fleet 호스트 프로젝트와 연결됩니다. 관리자 클러스터와 이 클러스터가 관리하는 모든 사용자 클러스터에는 동일한 Fleet 호스트 프로젝트가 있습니다. Google Cloud 콘솔의 Fleet 호스트 프로젝트에서 관리자 및 사용자 클러스터를 보고 관리할 수 있습니다.

관리자 클러스터의 Fleet 호스트 프로젝트를 지정하려면 관리자 클러스터 구성 파일gkeConnect.projectID 필드에 프로젝트 ID를 입력합니다.

gkectl 명령줄 도구를 사용하여 사용자 클러스터를 만드는 경우 사용자 클러스터 구성 파일gkeConnect.projectID 필드에 프로젝트 ID를 입력합니다.

구성 파일에 stackdriver, cloudAuditLogging, gkeOnPremAPI 섹션을 포함하는 경우 새 클러스터의 다음 요구사항을 참조하세요.

  • gkeConnect.projectID의 ID는 stackdriver.projectIDcloudAuditLogging.projectID에 설정된 ID와 동일해야 합니다.

  • stackdriver.clusterLocationcloudAuditLogging.clusterLocation에 동일한 Google Cloud 리전을 설정해야 합니다. 또한 gkeOnPremAPI.enabledtrue인 경우 gkeOnPremAPI.location에 동일한 리전을 설정해야 합니다.

프로젝트 ID와 리전이 동일하지 않으면 클러스터 생성에 실패합니다.

Google Cloud 콘솔을 사용하여 사용자 클러스터를 만들면 현재 Google Cloud 프로젝트가 자동으로 Fleet 호스트 프로젝트가 됩니다.

Fleet 호스트 프로젝트에서 API 사용 설정

Linux 및 macOS

Fleet 호스트 프로젝트에서 필요한 API를 사용 설정하려면 다음 안내를 따르세요.

gcloud services enable --project FLEET_HOST_PROJECT_ID \
    anthos.googleapis.com \
    container.googleapis.com \
    gkehub.googleapis.com \
    gkeconnect.googleapis.com \
    connectgateway.googleapis.com \
    stackdriver.googleapis.com \
    monitoring.googleapis.com \
    logging.googleapis.com \
    opsconfigmonitoring.googleapis.com \
    serviceusage.googleapis.com \
    iam.googleapis.com \
    cloudresourcemanager.googleapis.com

Google Cloud 콘솔, Google Cloud CLI 또는 Terraform에서 사용자 클러스터의 수명 주기를 관리하려면 Fleet 호스트 프로젝트에서 다음 추가 API를 사용 설정하세요.

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

Windows

Fleet 호스트 프로젝트에서 필요한 API를 사용 설정하려면 다음 안내를 따르세요.

gcloud services enable --project FLEET_HOST_PROJECT_ID ^
    anthos.googleapis.com ^
    container.googleapis.com ^
    gkehub.googleapis.com ^
    gkeconnect.googleapis.com ^
    connectgateway.googleapis.com ^
    stackdriver.googleapis.com ^
    monitoring.googleapis.com ^
    logging.googleapis.com ^
    opsconfigmonitoring.googleapis.com ^
    serviceusage.googleapis.com ^
    iam.googleapis.com ^
    cloudresourcemanager.googleapis.com

Google Cloud 콘솔, Google Cloud CLI 또는 Terraform에서 사용자 클러스터의 수명 주기를 관리하려면 Fleet 호스트 프로젝트에서 다음 추가 API를 사용 설정하세요.

gcloud services enable --project FLEET_HOST_PROJECT_ID ^
    gkeonprem.googleapis.com ^
    anthosaudit.googleapis.com ^
    storage.googleapis.com

Fleet 호스트 프로젝트의 로그 및 측정항목 보기

Google Cloud 콘솔에서 클러스터 로그 및 측정항목을 보려면 관리사용자 클러스터 구성 파일의 stackdriver.projectID 필드에 Fleet 호스트 프로젝트의 ID를 입력합니다.

stackdriver 섹션은 기본적으로 필요합니다. 즉, stackdriver 섹션을 입력하지 않으면 gkectl create를 실행할 때 --skip-validation-stackdriver 플래그를 포함해야 합니다.

stackdriver.projectID 필드에 다른 프로젝트 ID를 입력할 수 없습니다. 값을 입력하는 경우 이 값이 Fleet 호스트 프로젝트의 ID여야 합니다.

Google Cloud 콘솔에서 클러스터 로그 및 측정항목을 보려면 Fleet 호스트 프로젝트에서 다음 API를 사용 설정합니다.

Linux 및 macOS

gcloud services enable --project FLEET_HOST_PROJECT_ID \
    stackdriver.googleapis.com \
    monitoring.googleapis.com \
    logging.googleapis.com \
    opsconfigmonitoring.googleapis.com \
    serviceusage.googleapis.com \
    iam.googleapis.com \
    cloudresourcemanager.googleapis.com

Windows

gcloud services enable --project FLEET_HOST_PROJECT_ID ^
    stackdriver.googleapis.com ^
    monitoring.googleapis.com ^
    logging.googleapis.com ^
    opsconfigmonitoring.googleapis.com ^
    serviceusage.googleapis.com ^
    iam.googleapis.com ^
    cloudresourcemanager.googleapis.com

Fleet 호스트 프로젝트의 감사 로그 보기

감사 로그를 보려면 Google Cloud 콘솔에서 관리자사용자 클러스터 구성 파일의 cloudAuditLogging.projectID 필드에 Fleet 호스트 프로젝트의 ID를 입력합니다.

cloudAuditLogging.projectID 필드에 다른 프로젝트 ID를 입력할 수 없습니다. 값을 입력하는 경우 이 값이 Fleet 호스트 프로젝트의 ID여야 합니다.

Google Cloud 콘솔에서 감사 로그를 보려면 Fleet 호스트 프로젝트에서 다음 API를 사용 설정합니다.

Linux 및 macOS

gcloud services enable --project FLEET_HOST_PROJECT_ID \
    anthosaudit.googleapis.com \
    serviceusage.googleapis.com \
    iam.googleapis.com \
    cloudresourcemanager.googleapis.com

Windows

gcloud services enable --project FLEET_HOST_PROJECT_ID ^
    anthosaudit.googleapis.com ^
    serviceusage.googleapis.com ^
    iam.googleapis.com ^
    cloudresourcemanager.googleapis.com

Fleet 호스트 프로젝트의 서비스 계정에 역할 부여

연결-등록 서비스 계정에는 Fleet 호스트 프로젝트에 대한 특정 역할이 부여되어야 합니다. 자세한 내용은 연결-등록 서비스 계정을 참조하세요.

로깅-모니터링 서비스 계정에는 Fleet 호스트 프로젝트에 대한 특정 역할이 부여되어야 합니다. 자세한 내용은 로깅 모니터링 서비스 계정을 참조하세요.

감사 로깅 서비스 계정에는 Fleet 호스트 프로젝트에 대한 특정 역할이 부여되어야 합니다. 자세한 내용은 감사 로깅 서비스 계정을 참조하세요.

사용량 측정 프로젝트

사용자 클러스터에 GKE 사용량 측정을 사용 설정하면 VMware용 Anthos 클러스터는 선택한 Google Cloud 프로젝트와 연결된 BigQuery 데이터 세트에 사용 데이터를 저장합니다. 이 Google Cloud 프로젝트를 사용량 측정 프로젝트라고 합니다.

사용량 측정 프로젝트는 Fleet 호스트 프로젝트와 동일하거나 다를 수 있습니다.

사용량 측정을 사용 설정하려면 사용자 클러스터 구성 파일에서 usageMetering.bigQueryProjectID를 사용량 측정 프로젝트의 ID로 설정합니다.

사용량 측정을 사용 설정하는 경우 사용량 측정 프로젝트에서 다음 API를 사용 설정합니다.

Linux 및 macOS

gcloud services enable --project USAGE_METERING_PROJECT_ID] \
    bigquery.googleapis.com \
    serviceusage.googleapis.com \
    iam.googleapis.com \
    cloudresourcemanager.googleapis.com

Windows

gcloud services enable --project USAGE_METERING_PROJECT_ID ^
    bigquery.googleapis.com ^
    serviceusage.googleapis.com ^
    iam.googleapis.com ^
    cloudresourcemanager.googleapis.com

사용량 측정 프로젝트의 서비스 계정에 역할 부여

사용량 측정 서비스 계정에는 사용량 측정 프로젝트에 대한 특정 역할이 부여되어야 합니다.

자세한 내용은 사용량 측정 서비스 계정을 참조하세요.

구성요소 액세스 서비스 계정의 상위 프로젝트

클러스터를 만들기 전에 VMware용 Anthos 클러스터가 Container Registry에서 구성요소를 다운로드하는 데 사용할 수 있는 서비스 계정이 있어야 합니다. 이 서비스 계정을 구성요소 액세스 서비스 계정이라고 합니다.

구성요소 액세스 서비스 계정을 만든 Google Cloud 프로젝트를 구성요소 액세스 서비스 계정의 상위라고 합니다. 이 프로젝트는 클러스터 구성 파일에 지정한 프로젝트 중 하나와 같거나 구성 파일에 지정한 모든 프로젝트와 다를 수 있습니다. 서비스 계정과 상위 프로젝트에 대한 자세한 내용은 서비스 계정 및 Google Cloud 프로젝트 이해를 참조하세요.

구성요소 액세스 서비스 계정의 상위 프로젝트에 필요한 API를 사용 설정하려면 다음 안내를 따르세요.

Linux 및 macOS

gcloud services enable --project [PROJECT_ID] \
    serviceusage.googleapis.com \
    iam.googleapis.com \
    cloudresourcemanager.googleapis.com

여기서 [PROJECT_ID]는 구성요소 액세스 서비스 계정의 상위 프로젝트 ID입니다.

Windows

gcloud services enable --project [PROJECT_ID] ^
    serviceusage.googleapis.com ^
    iam.googleapis.com ^
    cloudresourcemanager.googleapis.com

여기서 [PROJECT_ID]는 구성요소 액세스 서비스 계정의 상위 프로젝트 ID입니다.

다음 단계

서비스 계정 및 키 만들기