조직 구조

Last reviewed 2023-12-20 UTC

Google Cloud에서 리소스를 관리하기 위한 루트 노드는 조직입니다. Google Cloud 조직은 조직 정책 및 액세스 제어의 리소스 및 연결 지점의 소유권 구조를 제공하는 리소스 계층 구조를 제공합니다. 리소스 계층 구조는 폴더, 프로젝트, 리소스로 구성되고 조직 내에서 Google Cloud 서비스의 구조 및 사용을 정의합니다.

계층 구조 아래의 리소스는 IAM 허용 정책 및 조직 정책과 같은 정책을 상속합니다. 리소스에 직접 허용 정책을 적용하거나 리소스가 리소스 계층 구조의 상위 수준에서 허용 정책을 상속할 때까지 모든 액세스 권한이 기본적으로 거부됩니다.

다음 다이어그램은 청사진이 배포하는 폴더 및 프로젝트를 보여줍니다.

example.com 조직 구조.

다음 섹션에서는 다이어그램의 폴더 및 프로젝트에 대해 설명합니다.

폴더

청사진은 폴더를 사용해서 해당 환경을 기준으로 프로젝트를 그룹화합니다. 이러한 논리적 그룹화를 통해 폴더 수준에서 허용 정책 및 조직 정책과 같은 구성을 적용하고 폴더 내의 모든 리소스가 정책을 상속합니다. 다음 표에서는 청사진에 포함된 폴더에 대해 설명합니다.

폴더 설명
bootstrap 기본 구성요소를 배포하기 위해 사용되는 프로젝트를 포함합니다.
common 모든 환경에서 공유하는 리소스가 있는 프로젝트가 포함됩니다.
production 프로덕션 리소스가 포함된 프로젝트가 포함됩니다.
nonproduction 워크로드를 프로덕션으로 승격하기 전에 테스트할 수 있도록 프로덕션 환경의 복사본이 포함됩니다.
development 개발에 사용되는 클라우드 리소스가 포함됩니다.
networking 모든 환경에서 공유하는 네트워킹 리소스가 포함됩니다.

프로젝트

청사진은 프로젝트를 사용하여 기능 및 의도한 액세스 제어의 경계에 따라 개별 리소스를 그룹화합니다. 다음 표에서는 청사진에 포함된 프로젝트에 대해 설명합니다.

폴더 프로젝트 설명
bootstrap prj-b-cicd 조직의 기반 구성요소를 빌드하는 데 사용되는 배포 파이프라인을 포함합니다. 자세한 내용은 배포 방법론을 참조하세요.
prj-b-seed 파이프라인을 실행하는 데 필요한 인프라의 Terraform 상태 및 Terraform 서비스 계정을 포함합니다. 자세한 내용은 배포 방법론을 참조하세요.
common prj-c-secrets 조직 수준 보안 비밀을 포함합니다. 자세한 내용은 Secret Manager로 애플리케이션 사용자 인증 정보 저장을 참조하세요.
prj-c-logging 감사 로그의 집계된 로그 소스가 포함됩니다. 자세한 내용은 보안 및 감사를 위한 중앙 집중화된 로깅을 참조하세요.
prj-c-scc Security Command Center 알림 및 기타 커스텀 보안 모니터링을 구성하는 데 도움이 되는 리소스를 포함합니다. 자세한 내용은 Security Command Center의 위협 모니터링을 참조하세요.
prj-c-billing-logs 조직의 결제 내보내기가 포함된 BigQuery 데이터 세트를 포함합니다. 자세한 내용은 내부 비용 센터 간 비용 할당을 참조하세요.
prj-c-infra-pipeline 워크로드에 사용할 VM 및 데이터베이스와 같은 리소스 배포를 위한 인프라 파이프라인을 포함합니다. 자세한 내용은 파이프라인 레이어를 참조하세요.
prj-c-kms 조직 수준 암호화 키가 포함됩니다. 자세한 내용은 암호화 키 관리를 참조하세요.
networking prj-net-{env}-shared-base VPC 서비스 제어가 필요 없는 워크로드의 공유 VPC 네트워크 호스트 프로젝트가 포함됩니다. 자세한 내용은 네트워크 토폴로지를 참조하세요.
prj-net-{env}-shared-restricted VPC 서비스 제어가 필요한 워크로드에 대해 공유 VPC 네트워크의 호스트 프로젝트가 포함됩니다. 자세한 내용은 네트워크 토폴로지를 참조하세요.
prj-net-interconnect 온프레미스 환경과 Google Cloud 간의 연결을 제공하는 Cloud Interconnect 연결이 포함됩니다. 자세한 내용은 하이브리드 연결을 참조하세요.
prj-net-dns-hub 온프레미스 DNS 시스템과 Cloud DNS 간의 중앙 통신 지점을 위한 리소스가 포함되어 있습니다. 자세한 내용은 중앙 집중화된 DNS 설정을 참조하세요.
환경 폴더(production, non-productiondevelopment) prj-{env}-monitoring 해당 환경의 프로젝트에서 측정항목을 집계하기 위한 범위 지정 프로젝트가 포함됩니다. 자세한 내용은 로그 기반 측정항목 및 성능 측정항목 알림을 참조하세요.
prj-{env}-secrets 폴더 수준 보안 비밀을 포함합니다. 자세한 내용은 Secret Manager로 애플리케이션 사용자 인증 정보 저장 및 감사를 참조하세요.
prj-{env}-kms 폴더 수준 암호화 키가 포함됩니다. 자세한 내용은 암호화 키 관리를 참조하세요.
애플리케이션 프로젝트 애플리케이션 리소스를 만드는 다양한 프로젝트가 포함됩니다. 자세한 내용은 프로젝트 배포 패턴파이프라인 레이어를 참조하세요.

리소스 소유권 거버넌스

거버넌스 및 비용 할당을 돕기 위해서는 프로젝트에 일관적으로 라벨을 적용하는 것이 좋습니다. 다음 표에서는 청사진에서 거버넌스를 위해 각 프로젝트에 추가되는 프로젝트 라벨에 대해 설명합니다.

라벨 설명
application 프로젝트와 연결된 애플리케이션 또는 워크로드의 인간이 읽을 수 있는 이름입니다.
businesscode 해당 프로젝트를 소유하는 비즈니스 부서를 기술하는 쇼트 코드입니다. shared 코드는 비즈니스 부서에 명시적으로 연결되지 않은 일반적인 프로젝트에 사용됩니다.
billingcode 지불 거절 정보를 제공하기 위해 사용되는 코드입니다.
primarycontact 프로젝트를 담당하는 기본 연락처의 사용자 이름입니다. 프로젝트 라벨에 앰퍼샌드(@) 같은 특수문자를 포함할 수 없으므로 @example.com 서픽스 없이 사용자 이름으로 설정됩니다.
secondarycontact 프로젝트를 담당하는 보조 연락처의 사용자 이름입니다. 프로젝트 라벨에 @와 같은 특수문자를 포함할 수 없으므로 @example.com 서픽스 없이 사용자 이름만 설정합니다.
environment bootstrap, common, production, non-production,development, network.와 같은 환경 유형을 식별하는 값입니다.
envcode 환경 유형을 식별하는 값으로, b, c, p, n, d, net으로 축약됩니다.
vpc 이 프로젝트에 사용하도록 예상되는 VPC 네트워크의 ID입니다.

Google은 간혹 계정 중단 또는 제품 약관 업데이트와 같은 중요 알림을 보낼 수 있습니다. 청사진은 필수 연락처를 사용해서 사용자가 배포 중 구성하는 그룹에 이러한 알림을 보냅니다. 필수 연락처는 조직 노드에서 구성되며 조직의 모든 프로젝트에 상속됩니다. 이러한 그룹을 검토하고 이메일이 안정적으로 모니터링되는지 확인하는 것이 좋습니다.

필수 연락처는 프로젝트 라벨에 구성된 primarycontactsecondarycontact 필드와 다른 목적으로 사용됩니다. 프로젝트 라벨의 연락처는 내부 거버넌스용으로 사용됩니다. 예를 들어 워크로드 프로젝트에서 규정을 준수하지 않는 리소스가 식별되어 소유자에게 연락해야 하는 경우 primarycontact 필드를 사용해서 해당 워크로드에 책임이 있는 사람 또는 팀을 찾을 수 있습니다.

다음 단계