할당량 프로젝트 개요

이 문서에서는 할당량 프로젝트와 할당량 프로젝트 결정 방법을 설명합니다. 할당량 프로젝트가 올바르게 설정되어 있는지 확인하여 오류와 Cloud API에 대한 요청 실패를 방지하세요.

Trusted Cloud by S3NS API에 대한 모든 요청은 할당량을 기준으로 계산되고 할당량은 프로젝트별로 적용되므로 할당량 프로젝트를 지정해야 합니다. 자세한 내용은 할당량 프로젝트 설정 방법을 참고하세요.

gcloud CLI 사용자 참고사항: 할당량 프로젝트결제 프로젝트라고도 합니다. 이는 gcloud CLI 구성에서 billing_project 플래그billing/quota_project 속성보다 우선하기 때문입니다.

할당량 프로젝트 결정 방법

할당량 프로젝트가 결정되는 방법은 사용하는 API 메서드 유형(리소스 기반 API 또는 클라이언트 기반 API)에 따라 다릅니다. 드물지만 서비스에 두 가지 유형의 API 메서드가 모두 있을 수 있습니다.

리소스 기반 API

리소스 기반 Cloud API의 경우 API 호출에 할당량을 제공하는 프로젝트는 액세스되는 리소스를 포함하는 프로젝트이기도 합니다. 예를 들어 Compute Engine 인스턴스를 만들 때 이 새 인스턴스의 프로젝트를 지정해야 합니다. 그러면 프로젝트에 새로 생성된 인스턴스가 포함됩니다. 나중에 Compute Engine 인스턴스에서 작업을 수행하면 인스턴스가 포함된 프로젝트가 요청의 할당량을 제공합니다. 이는 Google Cloud CLI, REST API 또는 클라이언트 라이브러리 사용 여부에 관계없이 적용됩니다.

리소스 기반 API에 대한 요청에 사용되는 할당량 프로젝트는 변경할 수 없습니다. 요청은 항상 요청이 작동하는 리소스가 포함된 프로젝트를 사용합니다.

클라이언트 기반 API

API가 리소스 기반 API가 아니면 클라이언트 기반 API입니다. 예를 들어 Cloud Translation API는 일반적으로 사용되는 클라이언트 기반 API입니다.

클라이언트 기반 API에 대한 요청을 수행할 때 할당량 프로젝트를 식별할 수 없으면 요청이 실패할 수 있습니다. 할당량 프로젝트는 여러 방법으로 설정할 수 있으며 다음 옵션을 확인하여 인증됩니다. 다음과 같은 우선순위 순서로 표시됩니다.

  • 요청에 지정됨: 요청에 지정된 할당량 프로젝트입니다. (클라이언트 라이브러리를 사용하는 경우 요청에서 환경 변수를 사용할 수도 있습니다.)

  • API 키: API 키를 사용하여 요청의 사용자 인증 정보를 제공하는 경우 API 키와 연결된 프로젝트가 할당량 프로젝트로 사용됩니다.

  • Google Cloud CLI 사용자 인증 정보: gcloud CLI를 사용하여 액세스 토큰을 가져오고 사용자 인증 정보로 gcloud CLI에 인증한 경우 gcloud CLI 공유 프로젝트가 할당량 프로젝트로 사용되는 경우도 있습니다. 다만, 모든 클라이언트 기반 API가 공유 프로젝트를 사용하는 것은 아닙니다.

  • 서비스 계정: 가장에 의한 경우를 포함하여 API 호출의 주 구성원이 서비스 계정인 경우 해당 서비스 계정과 연결된 프로젝트가 할당량 프로젝트로 사용됩니다.

  • 직원 ID 제휴: API의 주 구성원이 직원 ID 제휴 사용자인 경우 직원 풀 사용자 프로젝트가 할당량 프로젝트로 사용됩니다.

앞의 검사 중 어느 것도 할당량 프로젝트를 생성하지 않으면 요청이 실패합니다.

클라이언트 기반 API용 gcloud CLI 공유 프로젝트 정보

할당량 프로젝트를 설정하지 않고 gcloud CLI를 사용하여 클라이언트 기반 API에 요청을 전송하는 경우 gcloud CLI 공유 프로젝트로 대체되거나 요청이 실패할 수 있습니다. gcloud CLI 공유 프로젝트는 모든 프로젝트의 모든 gcloud CLI 요청에서 사용되므로, 다른 여러 gcloud CLI 요청도 이 프로젝트를 할당량 프로젝트로 사용하는 경우 공유 프로젝트의 할당량이 일시적으로 고갈될 수 있습니다. 이 경우 할당량 초과 오류 메시지가 표시되고 요청이 실패합니다.

클라이언트 기반 API의 현재 할당량 프로젝트 식별

할당량 프로젝트를 식별하는 방법은 프로젝트가 구성된 방식에 따라 다릅니다.

  • 리소스 기반 API를 사용하도록 API 메서드가 구성된 경우 클라이언트 프로젝트는 리소스 프로젝트를 할당량 프로젝트로 사용합니다.

  • 사용자 프로젝트 재정의가 적용된 경우 gcloud [command] --log-http 명령어를 사용하여 로그를 출력하고 x-goog-user-project 필드에 표시되는 할당량 프로젝트를 확인합니다.

  • API 키가 인증에 사용된 경우 gcloud [command] --log-http 명령어를 사용하여 로그를 출력하고 x-goog-api-key 필드에 표시되는 할당량 프로젝트를 확인합니다.

다른 구성의 경우 할당량 프로젝트가 HTTP 헤더에 표시되지 않습니다.

API가 리소스 기반인지 클라이언트 기반인지 확인

사용 중인 API 유형을 파악하기가 어려울 수 있습니다. 그러나 활성화 및 할당량은 동일한 방식으로 적용됩니다. 예를 들어, 프로젝트 A의 서비스 계정이 프로젝트 B의 읽기 메서드를 호출하고 두 프로젝트 모두에 API가 사용 설정되지 않은 경우 API not enabled 오류 메시지는 활성화가 확인된 프로젝트를 나타냅니다. 활성화를 확인한 프로젝트는 비율 할당량을 확인한 프로젝트와 동일합니다.

다음 단계