본문 바로가기

컴퓨터/클라우드

[GCP Associate Cloud Engineer] GCP 리소스 구성

GCP 에서는 리소스를 체계적으로 관리하기 위해 조직(Organization) → 폴더(Folder) → 프로젝트(Project) → 리소스(Resources)의 계층 구조를 제공한다.
모든 리소스는 특정 프로젝트에 속하며, 프로젝트는 여러 개의 리소스를 그룹화하는 역할을 한다.
폴더는 여러 개의 프로젝트를 포함할 수 있으며, 조직은 여러 개의 폴더를 포함할 수 있다.

 

조직(Organization): GCP의 최상위 계층으로, 기업이나 기관 전체를 관리하는 단위이다.

폴더(Folder): 조직 내에서 여러 프로젝트를 그룹화할 수 있는 단위이다. 부서별, 팀별로 구분할 때 유용하다.

프로젝트(Project): 특정 애플리케이션이나 서비스의 리소스를 관리하는 단위이다. 모든 리소스는 프로젝트에 속한다.

리소스(Resources): GCP에서 사용하는 개별적인 서비스나 컴퓨팅 자원이다.

즉, 하나의 조직(Organization)에는 여러 개의 폴더(Folder)가 포함될 수 있으며, 각 폴더에는 여러 개의 프로젝트(Project)가 존재하고, 프로젝트에는 리소스(Resources)가 정의된다.

 

구글 클라우드 리소스 상속도

 

GCP를 사용할 때, 프로젝트와 폴더를 어떻게 구성할지에 대한 몇 가지 권장 사항이 있다.

 

환경별로 별도 프로젝트를 생성한다.

개발 환경과 운영 환경을 분리하면, 테스트 중인 변경 사항이 운영 환경에 영향을 미치지 않도록 할 수 있다.

예를 들어, 애플리케이션 A1과 A2가 각각 개발과 운영 환경이 필요하다면, 총 4개의 프로젝트를 생성하는 것이 바람직하다.

이렇게 하면 개발 환경에서 수행된 작업이 운영 환경에 영향을 주지 않으며, 운영 환경의 안정성을 유지할 수 있다.

 

부서별로 별도 폴더를 생성한다.

여러 부서가 존재하는 경우, 각 부서를 위한 별도의 폴더를 만들어 프로젝트를 관리하는 것이 좋다.

이렇게 하면 부서 간 애플리케이션을 명확하게 분리하고, 보안 및 접근 제어를 쉽게 관리할 수 있다.

 

공유 리소스는 별도 폴더에 저장한다.

여러 프로젝트에서 공통으로 사용하는 리소스는 공유 폴더를 생성하여 한곳에서 관리하는 것이 좋다.

이를 통해 공통 리소스를 중앙에서 효율적으로 관리하고, 불필요한 중복을 방지할 수 있다.

 

권한을 환경별로 구분하여 할당한다.

개발자에게는 개발 프로젝트에 대한 전체 권한을 부여하고, 운영 환경에서는 운영팀에게만 접근 권한을 부여하는 것이 좋다.

이를 통해 운영 환경에서의 안정성을 보장할 수 있다.

 

GCP 무료 계정과 엔터프라이즈 계정의 차이점

 

무료 계정에서는 조직 및 폴더를 생성할 수 없으며, 개별 프로젝트만 생성할 수 있다.

즉, 계정 내에서 여러 개의 프로젝트를 만들 수 있지만, 상위 계층인 조직 및 폴더 개념이 보이지 않는다.

엔터프라이즈 계정에서는 조직을 만들 수 있으며, 그 아래 폴더와 프로젝트를 생성하여 계층적으로 관리할 수 있다.

엔터프라이즈 계정에는 G Suite 계정 또는 Cloud Identity 계정이 포함된다.

조직 단위에서 리소스를 체계적으로 관리할 수 있으며, IAM을 활용하여 권한을 효과적으로 설정할 수 있다.

GCP의 결제 계정 및 비용 관리

GCP에서 리소스를 생성하려면 반드시 결제 계정이 필요하다.
리소스를 사용하는 만큼 비용이 청구되므로, 결제 계정에는 결제 정보가 포함된다.
모든 활성 리소스가 있는 프로젝트는 반드시 하나의 결제 계정과 연결되어야 한다.

모든 프로젝트는 하나의 결제 계정과 연결된다.

하나의 결제 계정은 여러 프로젝트와 연결될 수 있다.

하나의 조직 내에서 여러 개의 결제 계정을 가질 수 있다.

즉, 하나의 결제 계정에서 여러 프로젝트의 비용을 관리할 수도 있고, 부서별로 개별 결제 계정을 운영할 수도 있다.

 

GCP 콘솔에서 결제 계정을 확인하고 관리할 수 있다.

결제 계정 메뉴에서 현재 활성화된 결제 계정을 볼 수 있다.

비용 추세, 결제 내역, 잔액, 결제 방법 등의 정보를 확인할 수 있다.

신규 결제 계정을 생성할 수도 있다.

"Manage Billing Accounts" 메뉴에서 새로운 결제 계정을 만들고, 이를 특정 프로젝트에 연결할 수 있다.

 

기업 규모에 따른 결제 계정 운영 방식

 

스타트업

하나의 결제 계정으로 모든 프로젝트를 관리하는 것이 일반적이다.

 

대기업

부서별로 별도의 결제 계정을 운영할 수 있다.

예를 들어, R&D 부서와 운영 부서의 비용을 분리하여 관리하면 명확한 비용 분석이 가능하다.

 

GCP에서는 두 가지 유형의 결제 계정을 지원한다.

Self-serve(자동 결제 계정)

신용카드 또는 은행 계좌를 통해 자동으로 결제된다.

개인 사용자나 소규모 기업에서 주로 사용한다.

 

Invoiced(청구서 기반 결제 계정)

Google Cloud가 인보이스(Invoice, 청구서)를 발행하고 기업이 이를 수동으로 처리한다.

대기업에서 주로 사용한다.

 

 

Cloud Billing Budget을 설정하면 초과 비용을 방지할 수 있다.

기본적으로 50%, 90%, 100% 사용 시 경고를 보내는 알림을 설정할 수 있다.

알림은 Billing Admin 및 결제 계정 사용자에게 이메일로 전송된다.

Pub/Sub 주제를 연결하여 알림을 프로그램적으로 처리할 수도 있다.

 

비용을 보다 자세히 분석하려면 결제 데이터를 내보내서 저장하고 분석할 수 있다.

 

BigQuery Export

결제 데이터를 BigQuery로 내보내면 SQL을 사용하여 세부 분석이 가능하다.

 

BigQuery로 결제 정보 내보내기