여러 Google Cloud 프로젝트 사용

이 문서에서는 Anthos clusters on VMware(GKE on-prem)의 여러 측면에서 별도의 Google Cloud 프로젝트를 사용하는 방법을 보여줍니다.

여기에는 전체 안내가 나와 있습니다. Google Cloud 프로젝트 사용에 대한 간략한 소개는 Google Cloud 프로젝트(빠른 시작)를 참조하세요.

시작하기 전에

Google Cloud CLI를 설치합니다.

클러스터 구성 파일

관리자 클러스터사용자 클러스터 구성 파일에는 Google Cloud 프로젝트 ID를 지정할 수 있는 필드가 여러 개 있습니다.

stackdriver:
  projectID: ""
...
gkeConnect:
  projectID: ""
...
usageMetering:
  bigQueryProjectID: ""
...
cloudAuditLogging:
  projectID: ""

Google Cloud Console에서 클러스터를 관리하기 위한 프로젝트 하나와 로그 및 측정항목을 보기 위한 프로젝트 하나 등이 있을 수 있습니다. 한 가지 예외는 감사 로깅 프로젝트가 연결 프로젝트와 동일해야 한다는 것입니다.

별도의 프로젝트 ID를 사용할 필요가 없습니다. 예를 들어 관리 및 로깅에 동일한 프로젝트를 사용할 수 있습니다. 원하는 경우 모든 것에 동일한 프로젝트를 사용할 수 있습니다.

Google Cloud 프로젝트에서 서비스 사용 설정

각 Google Cloud 프로젝트에는 특정 서비스가 사용 설정되어 있어야 합니다. 예를 들어 연결 프로젝트에는 다음 서비스가 사용 설정되어 있어야 합니다.

cloudresourcemanager.googleapis.com
container.googleapis.com
gkeconnect.googleapis.com
gkehub.googleapis.com
serviceusage.googleapis.com
iam.googleapis.com

프로젝트에서 서비스를 사용 설정하려면 Google Cloud 프로젝트에 대한 특정 권한이 있어야 합니다. 자세한 내용은 액세스 제어services.enable에 필요한 권한을 참조하세요.

필요한 권한이 있으면 서비스를 직접 사용 설정할 수 있습니다. 그렇지 않으면 조직의 다른 사용자가 서비스를 사용 설정해야 합니다.

연결 프로젝트

사용자 클러스터를 만들 때 VMware용 Anthos 클러스터는 Connect를 사용하여 원하는 Google Cloud 프로젝트에 클러스터를 등록합니다. 클러스터가 등록되면 Google Cloud Console에서 이 프로젝트의 클러스터를 보고 관리할 수 있습니다.

Connect는 연결 에이전트라고 하는 배포를 사용하여 사용자 클러스터와 Google Cloud 프로젝트 간의 연결을 설정합니다.

사용자 클러스터 구성 파일에서 gkecConnect.projectID를 클러스터를 보고 관리할 Google Cloud 프로젝트의 ID로 설정합니다.

연결 프로젝트에서 API 사용 설정

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

Linux 및 macOS

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

여기서 [PROJECT_ID]는 연결 프로젝트의 ID입니다.

Windows

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

여기서 [PROJECT_ID]는 연결 프로젝트의 ID입니다.

연결 프로젝트의 서비스 계정에 역할 부여

연결-등록 서비스 계정 및 연결-에이전트 서비스 계정에는 연결 프로젝트에 대한 특정 역할이 부여되어야 합니다.

자세한 내용은 연결-등록 서비스 계정연결-에이전트 서비스 계정을 참조하세요.

로깅 모니터링 프로젝트

사용자 클러스터에서 로깅 및 측정항목 에이전트는 데이터를 수집하여 Cloud Logging 및 Cloud Monitoring에 제공합니다. 클러스터에서 로그와 측정항목을 보려면 연결된 Google Cloud 프로젝트를 지정해야 합니다.

사용자 클러스터 구성 파일에서 stackdriver.projectID를 로깅 및 모니터링과 연결할 Google Cloud 프로젝트의 ID로 설정합니다. 이 프로젝트는 클러스터의 로그 및 측정항목을 확인할 프로젝트입니다.

로깅 모니터링 프로젝트에서 API 사용 설정

로깅 모니터링 프로젝트에서 필요한 API를 사용 설정하려면 다음 안내를 따르세요.

Linux 및 macOS

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

여기서 [PROJECT_ID]는 로깅 모니터링 프로젝트의 ID입니다.

Windows

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

여기서 [PROJECT_ID]는 로깅 모니터링 프로젝트의 ID입니다.

로깅 모니터링 프로젝트의 서비스 계정에 역할 부여

로깅 모니터링 서비스 계정에는 로깅 모니터링 프로젝트에 대한 특정 역할이 부여되어야 합니다.

자세한 내용은 로깅 모니터링 서비스 계정을 참조하세요.

감사 로깅 프로젝트

클러스터에 Cloud 감사 로그를 사용 설정하면 클러스터의 Kubernetes API 서버로부터 감사 로그 항목이 Google Cloud로 전송됩니다.

뷰 감사 로그가 있는 프로젝트를 감사 로깅 프로젝트라고 합니다. 감사 로깅 프로젝트가 연결 프로젝트와 동일해야 합니다.

클러스터 구성 파일에서 cloudAuditLogging.projectID를 연결 프로젝트의 ID로 설정합니다.

감사 로깅 프로젝트에서 API 사용 설정

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

Linux 및 macOS

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

여기서 [PROJECT_ID]는 감사 로깅 프로젝트의 ID입니다.

Windows

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

여기서 [PROJECT_ID]는 감사 로깅 프로젝트의 ID입니다.

감사 로깅 프로젝트의 서비스 계정에 역할 부여

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

자세한 내용은 감사 로깅 서비스 계정을 참조하세요.

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

클러스터를 만들기 전에 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입니다.

사용량 측정 프로젝트

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

사용자 클러스터 구성 파일에서 usageMetering.bigQueryProjectID를 사용 데이터를 저장할 Google Cloud 프로젝트의 ID로 설정합니다.

사용량 측정 프로젝트에서 API 사용 설정

사용량 측정 프로젝트에서 필수 API를 사용 설정하려면 다음 단계를 따르세요.

Linux 및 macOS

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

여기서 [PROJECT_ID]는 사용량 측정 프로젝트의 ID입니다.

Windows

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

여기서 [PROJECT_ID]는 사용량 측정 프로젝트의 ID입니다.

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

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

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

다음 단계

서비스 계정 및 키 만들기