Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1
이 페이지에서는 Cloud Composer 환경을 만들 때 발생할 수 있는 문제에 대한 문제 해결 정보를 제공합니다.
환경 업데이트 및 업그레이드와 관련된 문제 해결 정보는 환경 업데이트 및 업그레이드 문제 해결을 참조하세요.
Cloud Composer 환경이 생성될 때 대부분의 문제는 다음과 같은 이유로 발생합니다.
- 서비스 계정 권한 문제 
- 잘못된 방화벽, DNS 또는 라우팅 정보 
- 네트워크 관련 문제. 예를 들어 VPC 구성이 잘못되었거나, IP 주소가 충돌하거나, 네트워크 IP 범위가 너무 좁습니다. 
- 할당량 관련 문제 
- 호환되지 않는 조직 정책 
환경 생성 권한 부족
계정에 권한이 부족하여 Cloud Composer가 환경을 만들 수 없으면 다음 오류 메시지가 출력됩니다.
ERROR: (gcloud.composer.environments.create) PERMISSION_DENIED: The caller
does not have permission
또는
ERROR: (gcloud.composer.environments.create) PERMISSION_DENIED: User not
authorized to act as service account <service-account-name>.
The user must be granted iam.serviceAccounts.actAs permission, included in
Owner, Editor, Service Account User role. See https://cloud.google.com/iam/docs
/understanding-service-accounts for additional details.
해결책: 액세스 제어에 설명된 대로 사용자 계정과 사용자 환경의 서비스 계정 모두에 역할을 할당합니다.
- Cloud Composer 2의 경우 Cloud Composer 서비스 에이전트 서비스 계정( - service-PROJECT_NUMBER@cloudcomposer-accounts.iam.gserviceaccount.com)에 Cloud Composer v2 API 서비스 에이전트 확장 역할이 할당되었는지 확인합니다.
- Google API 서비스 에이전트( - PROJECT_NUMBER@cloudservices.gserviceaccount.com)에 편집자 역할이 할당되었는지 확인합니다.
- 공유 VPC 구성의 경우 공유 VPC 안내 구성을 참조하세요. 
환경의 서비스 계정에 권한이 충분하지 않음
Cloud Composer 환경을 만들 때 환경의 GKE 클러스터 노드를 실행하는 서비스 계정을 지정합니다. 이 서비스 계정에 요청된 작업에 대해 충분한 권한이 없으면 Cloud Composer가 다음 오류를 출력합니다.
Errors in: [Web server]; Error messages:
  Creation of airflow web server version failed. This may be an intermittent
  issue of the App Engine service. You may retry the operation later.
{"ResourceType":"appengine.v1.version","ResourceErrorCode":"504","ResourceError
Message":"Your deployment has failed to become healthy in the allotted time
and therefore was rolled back. If you believe this was an error, try adjusting
the 'app_start_timeout_sec' setting in the 'readiness_check' section."}
해결책: 액세스 제어에 설명된 대로 사용자 계정과 사용자 환경의 서비스 계정 모두에 역할을 할당합니다.
서비스 계정에 IAM 역할 누락에 대한 경고
환경 생성에 실패하면 Cloud Composer는 오류가 발생한 후 경고 메시지(The issue may be caused by missing IAM roles in the following Service Accounts
...)를 생성합니다.
이 경고 메시지는 가능한 오류 원인을 강조표시합니다. Cloud Composer는 프로젝트의 서비스 계정에 필요한 역할을 확인하고 이러한 역할이 없으면 이 경고 메시지를 생성합니다.
해결 방법: 경고 메시지에 언급된 서비스 계정에 필요한 역할이 있는지 확인합니다. Cloud Composer의 역할과 권한에 대한 자세한 내용은 액세스 제어를 참조하세요.
경우에 따라 이 경고를 무시할 수 있습니다. Cloud Composer는 역할에 할당된 개별 권한을 확인하지 않습니다. 예를 들어 커스텀 IAM 역할을 사용하는 경우 경고 메시지에 언급된 서비스 계정에 이미 모든 필수 권한이 있을 수 있습니다. 이 경우에는 이 경고를 무시해도 됩니다.
호환되지 않는 조직 정책
Cloud Composer 환경을 성공적으로 만들 수 있도록 다음 정책을 올바르게 구성해야 합니다.
| 조직 정책 | Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1 | 
|---|---|---|---|
| compute.disableSerialPortLogging | 모든 값이 허용됨 | 사용 중지해야 함 | 1.13.0 이전 버전에서 사용 중지됨, 그 외의 경우 모든 값 | 
| compute.requireOsLogin | 모든 값이 허용됨 | 모든 값이 허용됨 | 사용 중지해야 함 | 
| compute.vmCanIpForward | 모든 값이 허용됨 | 모든 값이 허용됨 | VPC 기반 모드(별칭 IP 사용)가 구성되지 않은 경우 허용되어야 함(Cloud Composer 소유 GKE 클러스터에 필요) | 
| compute.vmExternalIpAccess | 모든 값이 허용됨 | 공개 IP 환경에서 허용되어야 함 | 공개 IP 환경에서 허용되어야 함 | 
| compute.restrictVpcPeering | 적용할 수 있음 | 적용할 수 없음 | 적용할 수 없음 | 
| compute.disablePrivateServiceConnectCreationForConsumers | 모든 값이 허용됨 | 비공개 및 공개 IP 환경에는 SERVICE_PRODUCERS를 허용 안 할 수 없음. 기존 환경에는 영향을 미치지 않으며, 이 정책이 사용 설정되면 작동할 수 있음. | 비공개 IP 환경에 대해 SERVICE_PRODUCERS를 허용 안 할 수 없음. 기존 환경에는 영향을 미치지 않으며, 이 정책이 사용 설정되면 작동할 수 있음. | 
| compute.restrictPrivateServiceConnectProducer | 활성화된 경우 google.com조직을 허용 목록 추가 | 활성화된 경우 google.com조직을 허용 목록 추가 | 모든 값이 허용됨 | 
호환되지 않는 주 구성원 액세스 경계 정책
조직에 구성된 주 구성원 액세스 경계 정책은 환경의 일부 작업을 차단하거나 새 환경 생성을 방지하는 방식으로 구성될 수 있습니다.
이 경우 오류 메시지에 다음 줄이 표시될 수 있습니다.
Operations on resource are denied due to an IAM Principal Access Boundary Policy.
환경의 구성요소는 테넌트 및 고객 프로젝트에 있습니다. 테넌트 프로젝트는 Google에서 관리하며 환경이 있는 조직에 속하지 않습니다. 환경의 서비스 계정에는 테넌트 프로젝트에서 작업을 실행할 수 있는 권한이 있어야 합니다.
해결책:
- 정책의 바인딩에 조건 표현식을 추가하여 환경의 서비스 계정을 정책에서 제외합니다. 정책이 적용되지 않도록 주 구성원을 제외하는 방법의 예는 Identity and Access Management 문서의 주 구성원 액세스 경계 정책의 조건부 정책 바인딩을 참고하세요.
조직 또는 프로젝트 내에서 사용되는 서비스 제한
조직 또는 프로젝트 관리자는 gcp.restrictServiceUsage 조직 정책 제약조건을 사용하여 프로젝트에서 사용할 수 있는 Google 서비스를 제한할 수 있습니다.
이 조직 정책을 사용하는 경우 Cloud Composer에 필요한 모든 서비스를 허용하는 것이 중요합니다.