메인 콘텐츠로 건너뛰기
GCP 프로젝트를 연결하여 CloudThinker 에이전트가 Google Cloud 서비스 전반에서 비용을 분석하고, 리소스를 최적화하고, 보안을 감사하고, 인프라를 관리할 수 있도록 합니다. GCP는 서비스 계정 키 (JSON 파일)로 인증합니다. 서비스 계정의 IAM 역할이 각 에이전트가 접근할 수 있는 범위를 결정합니다.

사전 요구 사항

  • IAM 관리자 권한이 있는 GCP 프로젝트.
  • 프로젝트에서 서비스 계정을 생성하고 IAM 역할을 할당할 권한.
  • 브라우저에서 접근 가능한 Google Cloud 콘솔.
뷰어 수준 서비스 계정은 비용 분석, 보안 감사, 리소스 검사에 충분합니다. 쓰기 기능이 필요한 경우에만 역할을 확장하세요.

설정

1

서비스 계정 생성

Google Cloud 콘솔에서 프로젝트를 선택하고 IAM & Admin → Service accounts로 이동하세요. Create Service Account를 클릭하고 다음을 입력하세요:
  • Name: cloudthinker-readonly
  • Description: CloudThinker 모니터링을 위한 읽기 전용 접근
2

역할 할당

필요한 뷰어 역할을 부여하세요:
  • Viewer (기본 읽기 접근)
  • Monitoring Viewer (모니터링 데이터용)
  • Security Reviewer (보안 분석용)
3

JSON 키 생성

목록에서 생성한 서비스 계정을 클릭하고, Keys 탭 → Add keyCreate new key로 이동하여 JSON 형식을 선택하고 Create를 클릭하세요. 키 파일을 다운로드하여 안전하게 보관하세요.
4

CloudThinker에 연결 추가

Connections → GCP로 이동하여 JSON 키 파일을 업로드하거나 내용을 붙여 넣으세요. Connect를 클릭하세요. CloudThinker가 자격 증명을 확인하고 Connected 상태를 표시합니다.
JSON 키 파일을 안전하게 보관하세요. 버전 관리에 커밋하거나 공개적으로 공유하지 마세요.

멀티 프로젝트 설정

여러 GCP 프로젝트가 있는 조직의 경우:
1

조직 수준 접근 권한 부여

서비스 계정에 조직 또는 폴더 수준에서 역할을 부여하여 모든 대상 프로젝트에 접근할 수 있도록 하세요.
2

청구 계정 접근 추가

프로젝트 간 비용 분석을 위해 Billing Account Viewer를 추가하세요.
3

프로젝트 추가

CloudThinker는 연결 후 접근 가능한 프로젝트를 자동으로 검색합니다.

연결 세부 정보

필드설명예시
Service Account Key (JSON)연결 대화상자에 업로드하거나 붙여 넣는 전체 GCP 서비스 계정 키 JSON{"type": "service_account", "project_id": "your-project-id", ...}
키 파일의 구조는 다음과 같습니다:
{
  "type": "service_account",
  "project_id": "your-project-id",
  "private_key_id": "key-id",
  "private_key": "-----BEGIN PRIVATE KEY-----\n...\n-----END PRIVATE KEY-----\n",
  "client_email": "cloudthinker-readonly@your-project.iam.gserviceaccount.com",
  "client_id": "123456789012345678901",
  "auth_uri": "https://accounts.google.com/o/oauth2/auth",
  "token_uri": "https://oauth2.googleapis.com/token"
}

필요 권한

최소 (읽기 전용 분석)

roles/viewer                    # 기본 읽기 접근
roles/monitoring.viewer         # Cloud Monitoring 접근
roles/logging.viewer            # Cloud Logging 접근

권장 (전체 분석)

# 위의 모든 역할에 추가:
roles/compute.viewer            # Compute Engine 세부 정보
roles/container.viewer          # GKE 클러스터 접근
roles/cloudsql.viewer           # Cloud SQL 접근
roles/bigquery.dataViewer       # BigQuery 분석
roles/billing.viewer            # 청구 및 비용 데이터
roles/securitycenter.viewer     # Security Command Center
최소 역할로 시작하고 필요에 따라 추가하세요. 프로젝트 수준의 뷰어 역할은 비용 분석과 대부분의 보안 감사에 충분합니다.

에이전트 기능

연결되면 에이전트가 GCP 리소스를 분석하고 최적화할 수 있습니다.
에이전트GCP 기능
Alex비용 분석, VM 적정 크기 조정, 약정 사용 권장 사항, 리소스 최적화
OliverSecurity Command Center 결과, IAM 감사, 컴플라이언스 검사
TonyCloud SQL 성능, BigQuery 최적화, Spanner 튜닝
KaiGKE 클러스터 관리, 워크로드 최적화, Autopilot 분석

연결 검증

@alex run a GCP account check and list connected projects and active services

예시 프롬프트

@alex analyze Compute Engine costs over the last 30 days and #recommend right-sizing opportunities
@oliver audit GCP IAM bindings and flag any over-permissioned service accounts
@kai inspect GKE cluster health and #report any pod failures or resource pressure

문제 해결

서비스 계정에 필요한 역할이 있는지 확인하세요. 프로젝트 수준 IAM 바인딩을 확인하고, API가 활성화되어 있는지 (Compute, Monitoring 등) 확인하고, JSON 키가 유효하고 만료되지 않았는지 확인하세요.
JSON 파일이 완전하고 올바르게 형식화되어 있는지 확인하세요. 개인 키가 잘리지 않았는지, 여분의 공백이나 문자가 추가되지 않았는지 확인하세요. GCP 콘솔에서 키를 다시 생성해보세요.
Billing Account Viewer 역할이 할당되어 있는지 확인하세요. Cloud Billing API를 활성화하고 BigQuery로의 청구 내보내기가 설정되어 있는지 확인하세요.
Kubernetes Engine Viewer 역할이 할당되어 있는지 확인하세요. 클러스터가 접근 가능한 프로젝트에 있는지 확인하고 클러스터가 Workload Identity를 사용하는지 확인하세요.

보안

  • 최소 권한 — 에이전트가 사용 사례에 필요한 권한만 부여하세요. 읽기 전용으로 시작한 후 필요에 따라 확장하세요.
  • 기본 읽기 전용 — 에이전트가 이 연결을 통해 변경 작업을 수행하게 할 것이 아니라면 읽기 전용 자격증명을 사용하세요.
  • 자격증명 교체 — 정기 일정에 따라 키와 토큰을 교체하세요. 연결을 업데이트하면 CloudThinker가 새 값을 자동으로 반영합니다.
  • 오프보딩 시 취소 — 연결을 삭제하거나 팀원이 퇴사할 때 프로바이더에서 자격증명을 제거하세요.
  • 프로젝트 범위 — CloudThinker가 접근해야 하는 GCP 프로젝트로만 서비스 계정의 IAM 역할을 제한하세요.
  • 키 보관 — 서비스 계정 JSON을 시크릿 매니저에 저장하고 CloudThinker에 업로드한 후 로컬 복사본을 삭제하세요.

관련 문서

https://mintcdn.com/cloudthinker/aLd-ttc-SCW-aFky/images/icons/aws.svg?fit=max&auto=format&n=aLd-ttc-SCW-aFky&q=85&s=45d526a3e9345214c0345f277da2e829

AWS 연결

Amazon Web Services 연결

Kai 에이전트

GKE를 위한 Kubernetes 중심 에이전트