이 문서에서는 조직에 효과적인 라벨 전략을 설계하는 방법을 설명합니다. 라벨을 만들기 전에, 다음과 같이 라벨을 사용하여 Google Cloud 리소스를 구성할 때 활용할 수 있는 몇 가지 일반적인 원칙을 참고하세요.
라벨의 일반 원칙
라벨 상시 사용
라벨은 필수는 아니지만 Google Cloud 리소스를 구성하고 관리하는 데 유용합니다. 라벨은 비용을 추적하고 리소스를 식별하는 데 사용할 수 있습니다. 리소스에 라벨을 사용할 때는 엄격한 라벨 지정 가이드라인을 따라야 합니다. 조직의 주요 이해관계자와 함께 공식적인 라벨 지정 정책을 만드는 것이 좋습니다. 예시 표에서는 조직 전체의 라벨 지정 정책을 보여줍니다.
일관성을 위해 프로그래매틱 방식으로 라벨 적용
가능하면 프로그래매틱 방식으로 라벨을 적용합니다. 스크립트 및 Terraform과 같은 도구를 사용하면 라벨 생성 프로세스를 자동화하고 라벨 지정 정책을 적용할 수 있습니다. 이러한 도구를 사용하면 라벨이 모든 리소스에 일관되게 적용됩니다. 라벨 지정에 대소문자를 구분하는 형식을 사용하고 모든 리소스에 일관되게 적용합니다.
라벨 표준화
모든 리소스에 일관되고 라벨의 표준 집합을 사용합니다. 이렇게 하면 리소스를 더 쉽게 검색, 필터링, 관리할 수 있습니다. 라벨 전략을 간소화하려면 라벨을 10개 넘게 사용하지 마세요. 비용 보고 방법에 따라 라벨을 정렬합니다. 조직에 가장 적합한 라벨 키 및 값 표준 집합을 사용하는 것이 좋습니다. 라벨에 환경, 데이터 분류, 비용 센터, 팀, 구성요소, 애플리케이션, 규정 준수와 같은 비즈니스 사용 사례를 포함할 수 있습니다.
라벨링 정책을 표준화하고 준수하는 것은 중앙 관리형 라벨에 매우 중요합니다. 제품팀과 부서는 리소스에 커스텀 라벨을 추가하여 팀별 정보를 공유할 수도 있습니다. 자세한 내용은 비표준 라벨 적용을 참조하세요.
다음은 각 키의 표준 값 집합을 정의하는 방법의 예시입니다.
- 환경:
prod/dev/staging
- 데이터 분류:
public/internal-only/confidential/restricted/na
- 비용 센터:
c23543
- 팀:
shopping-cart
- 구성요소:
frontend/cache/backend/database
- 애플리케이션:
shopping-cart-payments
- 규정 준수:
pci-hippa
기밀 정보 회피
개인 식별 정보(PII) 보호는 보안에 매우 중요합니다. 라벨에 PII 또는 기타 기밀 정보를 저장하면 안 됩니다.
비표준 라벨 적용
라벨 정책을 준수하는 것도 중요하지만 라벨을 사용하여 제품팀 또는 부서와 관련된 정보를 공유할 수도 있습니다. 이러한 시나리오에서는 개별 팀의 리소스 소유자에게 각 리소스에 대한 비표준 라벨 적용 옵션을 제공하면 리소스에 대해 더 많은 컨텍스트를 제공할 수 있습니다. 이렇게 하면 이러한 제품팀 또는 부서와 관련된 정보를 더 쉽게 검색, 필터링, 공유할 수 있습니다. 예를 들어 단일 리소스에는 environment:prod
, data-classification:restricted
, cost-center:c23543
, team:shopping-cart
, app:shopping-cart-payments
, component:database
, compliance: pci
와 같은 표준 라벨 집합이 있을 수 있습니다. 리소스 소유자는 version:5.0.1
및 replica:primary
와 같은 비표준 라벨을 추가하여 데이터베이스 클러스터의 버전과 노드 복제 상태를 표시할 수 있습니다.
변경에 따르는 영향 고려
비즈니스 요구사항이 진화하는 시점에 라벨링 전략이 바뀔 가능성이 높습니다. 이러한 변경에 따르는 영향을 알고 있어야 합니다. 예를 들어 새로운 비용 센터, 마이크로서비스 또는 새 도구를 추가하면 라벨 지정 전략에 영향을 줄 수 있습니다.
라벨 이름 지정 체계 및 패턴
모든 조직에는 고유한 리소스 구성 방법이 있습니다. 라벨을 사용하여 계층 구조의 리소스를 여러 방법으로 분류할 수 있으므로 사용자는 필요한 리소스를 필터링할 수 있습니다. 라벨 이름 지정 방식을 정의할 때는 다음을 고려하세요.
- 리소스와 연결된 환경, 비용 센터, 팀, 구성요소, 애플리케이션, 규정 준수, 소유권
- 시스템에 저장된 모든 데이터의 데이터 분류. 이는 스테이트풀(Stateful) 시스템에만 적용 가능합니다.
- Compute Engine, Cloud Storage 버킷 또는 프로젝트와 같은 특정 리소스 수준에서 적용해야 하는 라벨
- 필요에 따라 선택적 라벨을 사용하여 리소스에 대한 자세한 정보를 제공할 수 있는 유연성
라벨 정의 예시
라벨을 정의하기 위해서는 유의해야 할 몇 가지 속성이 있습니다.
필드 | 설명 |
---|---|
라벨 키 | 라벨 키는 라벨의 고유 식별자입니다. 최소 1자, 최대 63자 길이의 문자열이어야 합니다. 키는 비워 둘 수 없습니다. environment , data-classification , cost-center , team , component , application , compliance 등의 비즈니스 사용 사례를 지원하는 조직에 가장 적합한 표준 라벨 키 집합을 사용할 수 있습니다. |
라벨 값 | 라벨 값은 키와 연결된 데이터입니다. 문자열, 숫자 또는 불리언 값일 수 있습니다. 각 라벨 키에 대한 값 집합을 정의하는 것이 좋습니다. 이러면 팀이 각 키에 적절한 값을 선택하고 할당하는 데 도움이 될 수 있습니다. 예를 들어 environment 키는 prod , staging , dev , tools 등의 값을 가질 수 있습니다. |
이해관계자 | 리소스를 필터링하거나 보고서를 만들기 위해 라벨 키가 필요한 부서를 식별합니다. 예를 들어 조직의 재무 부서는 prod 환경을 실행하는 데 드는 비용을 알고 싶어 합니다. 이들은 키-값 쌍 environment:prod 라벨을 사용합니다. |
대상 리소스 | 라벨별로 키-값 쌍 라벨을 적용해야 하는 대상 Google Cloud 리소스를 정의하는 것이 좋습니다. 예를 들어 라벨 키 environment 는 조직의 프로덕션 환경에 있는 각 Google Cloud 리소스에 있어야 합니다. |
예외 | 모든 리소스에 대해 필수 라벨 키와 선택 적용할 키를 정의하는 것이 좋습니다. 예시 표에는 environment:tools 와 같은 선택적인 key:value 쌍 라벨이 있습니다. altostrat-environment 라벨의 값이 tools 로 설정되면 altostrat-team 라벨 키를 선택적으로 고려할 수 있습니다. |
다음 라벨 예시에서 altostrat는 엔터프라이즈 이름에 해당합니다.
라벨 키 | 라벨 값 | 이해관계자 | 대상 리소스 | 예외 |
---|---|---|---|---|
altostrat-environment | prod, sb1, staging, dev, tools | 재무 | Google Cloud 리소스 | 아니요 |
altostrat-data-classification | public, internal-only, confidential, restricted, na | 보안 | Compute Engine의 버킷, 데이터베이스, 영구 디스크 | 아니요 |
altostrat-cost-center | fin-us, mkt-eu, it-jp | 재무 | Google Cloud 리소스 | sandbox-folder |
altostrat-team | shopping-cart | 팀장 | Google Cloud 리소스 | 비프로덕션 환경, 중요하지 않은 구성요소 |
altostrat-component | frontend, cache, application, database | 재무 | Google Cloud 리소스 | 선택사항 |
altostrat-app | shopping-cart-payment | 재무 | Google Cloud 리소스 | 아니요. 애플리케이션과 1:1로 매핑이 되지 않는 멀티 테넌트 리소스에는 예외가 있습니다. |
altostrat-compliance | pci, hipaa | 보안 | Google Cloud 리소스 | 선택사항 |