개요

이 문서에서는 라벨과 기능에 대한 간략한 개요를 제공합니다.

라벨이란 무엇인가요?

라벨은 Google Cloud 리소스에 할당할 수 있는 키-값 쌍입니다. 이러한 리소스를 구성하고 필요한 세부사항으로 규모에 맞게 비용을 관리하는 데 도움이 됩니다. 각 리소스에 라벨을 연결한 후 이 라벨을 기준으로 리소스를 필터링할 수 있습니다. 라벨에 대한 정보는 청구 요금을 라벨별로 분류할 수 있는 결제 시스템으로 전달됩니다. 기본 제공되는 결제 보고서를 통해 리소스 라벨별로 비용을 필터링하고 그룹화할 수 있습니다. 라벨을 사용하여 결제 데이터 내보내기를 쿼리할 수도 있습니다.

라벨 요구사항

리소스에 적용된 라벨은 다음 요구사항을 충족해야 합니다.

  • 각 리소스에 라벨을 최대 64개까지 사용할 수 있습니다.
  • 각 라벨은 키-값 쌍이어야 합니다.
  • 키는 비워 둘 수 없으며 최소 길이는 1자(영문 기준)이고 최대 길이는 63자(영문 기준)입니다. 값은 비워 둘 수 있으며 최대 길이는 63자(영문 기준)입니다.
  • 키와 값에는 소문자, 숫자, 밑줄, 대시만 사용할 수 있습니다. 모든 문자는 UTF-8 인코딩을 사용해야 하며 국제 문자가 허용됩니다. 키는 소문자나 국제 문자로 시작해야 합니다.
  • 라벨의 키 부분은 단일 리소스에서 고유해야 합니다. 그러나 여러 리소스에 같은 키를 사용할 수 있습니다.

이러한 한도는 각 라벨의 키와 값 및 라벨이 있는 개별 Google Cloud 리소스에 적용됩니다. 한 프로젝트의 모든 리소스에 적용할 수 있는 라벨 수에는 제한이 없습니다.

라벨의 일반적인 사용 사례

다음은 라벨의 몇 가지 일반적인 사용 사례입니다.

  • 팀 또는 비용 센터 라벨: 팀 또는 비용 센터를 기준으로 라벨을 추가하여 서로 다른 팀(예: team:researchteam:analytics)에서 소유하는 리소스를 구분할 수 있습니다. 비용 계산이나 예산 책정에 이 유형의 라벨을 사용할 수 있습니다.

  • 구성요소 라벨: component:redis, component:frontend, component:ingest, component:dashboard를 예시로 들 수 있습니다.

  • 환경 또는 단계 라벨: environment:productionenvironment:test를 예로 들 수 있습니다.

  • 상태 라벨: state:active , state:readytodelete, state:archive를 예로 들 수 있습니다.

  • 소유권 라벨: 작업을 담당하는 팀을 식별하는 데 사용됩니다(예: team:shopping-cart).

  • 네트워크 라벨: 가상 머신에 라벨을 연결할 수 있습니다. 이전에 정의한 네트워크 태그는 값이 없는 라벨로 표시됩니다.

모든 API 호출의 타임스탬프 또는 개별 값과 같은 다수의 고유 라벨을 만들지 않는 것이 좋습니다. 이 접근 방식의 문제는 값이 자주 변경되거나 카탈로그를 복잡하게 하는 키로 인해 리소스를 효과적으로 필터링하고 보고하기 어렵다는 것입니다.

라벨 및 태그

라벨은 리소스에 대해 쿼리 가능한 주석으로 사용될 수 있지만 정책에 조건을 설정하는 데는 사용할 수 없습니다. 태그를 사용하면 정책을 세밀하게 제어하여 리소스에 특정 태그가 있는지 여부에 따라 정책을 조건부로 허용하거나 거부할 수 있습니다. 자세한 내용은 태그 개요를 참조하세요.

권한

프로젝트의 라벨을 추가, 수정, 확인해야 하는 경우 다음 권한이 필요합니다.

  • projects.patch() 메서드를 호출하여 라벨을 추가하거나 수정할 수 있습니다. 그러려면 resourcemanager.projects.update 권한이 필요합니다.
  • projects.get() 메서드를 호출하여 프로젝트의 라벨을 볼 수 있습니다. 그러려면 resourcemanager.projects.get 권한이 필요합니다.

라벨을 사용한 비용 이해

리소스에 라벨을 연결한 후 이 라벨을 기준으로 리소스를 필터링할 수 있습니다. 라벨에 대한 정보는 청구 요금을 라벨별로 분류할 수 있는 결제 시스템으로 전달됩니다.

라벨을 사용하여 비용을 파악하는 몇 가지 방법은 다음과 같습니다.

  • VM 또는 Cloud Storage 버킷에 costcenter=cost_center_name, service=service_name, environment=environment_name과 같은 라벨을 추가할 수 있습니다. 이를 통해 리소스의 배포 위치 및 목적과 청구해야 할 비용 센터를 파악할 수 있습니다.
  • BigQuery로 결제 데이터 내보내기를 사용 설정할 수 있습니다. 라벨은 해당 Google Cloud 리소스 및 해당 사용량과 함께 BigQuery로 내보내집니다. 이렇게 하면 애플리케이션의 장바구니 서비스 실행 비용 또는 개발자 테스트 시스템 비용과 같은 요소를 모니터링할 수 있습니다.
  • BigQuery와 라벨을 함께 사용하면 모든 테스트 시스템 리소스의 비용과 프로덕션 리소스의 비용 또는 특정 서비스 비용을 비교 파악할 수 있습니다.

이 예시에서 프로젝트의 playlist 서비스 비용은 BigQuery에 사용량과 라벨을 내보내는 방식으로 결정됩니다. 이렇게 하려면 먼저 BigQuery로 결제 내보내기를 사용 설정합니다. labels-demo-prj는 리소스 사용량의 소스이고 labels_demo_bqexport는 사용량 데이터가 저장되는 대상 데이터 세트입니다. 사용량과 라벨을 BigQuery로 내보낸 후 playlist 서비스 비용을 확인할 수 있습니다.

다음은 Compute Engine 사용량 및 BigQuery 관련 비용에 대한 세부정보입니다.