GCP

Google Cloud Well-Architected 스킬로 Terraform 리뷰 받아 보기 – 일부러 심은 문제 19개를 얼마나 찾을까

안녕하세요. GS Neotek 박희찬 입니다.
지난 글에서 Google 공식 Agent Skills를 Claude Code에 설치해 로그 조회와 BigQuery 비용 점검을 맡겨 봤습니다.
이번에는 같은 저장소의 Google Cloud Well-Architected Framework 스킬로 Terraform 코드의 아키텍처 리뷰를 받아 봤습니다.

얼마 전 이 블로그에 AWS Well-Architected Agent 후기가 올라왔는데, AWS는 이 기능을 콘솔 서비스로 내놓았습니다.
Google은 같은 일을 에이전트가 읽는 스킬 파일로 제공합니다.
방식이 다른 만큼 실제로 얼마나 쓸 만한지, 일부러 문제를 심은 코드로 확인해 봤습니다.

한눈에 보기

항목내용
대상Google Agent Skills의 Well-Architected 스킬 6종
(github.com/google/skills)
기둥(Pillar)1. 보안
2. 안정성
3. 비용 최적화
4. 운영 우수성
5. 성능 최적화
6. 지속 가능성
형태스크립트 없는 지침 문서(SKILL.md)
분석은 에이전트의 AI 모델이 수행
테스트 코드사내 예약 서비스 Terraform 1개 파일
(Cloud Run 2 + Cloud SQL + Cloud Storage 2 + 방화벽)
일부러 심은 문제 19개
실행 방식기둥마다 새 에이전트 1개(Claude Code)
스킬 파일과 Terraform만 제공, 실제 배포 없음
소요 시간기둥당 약 1분
결과지적 71건(높음 24 · 중간 34 · 낮음 13)
심은 문제 19개 모두 찾음

1. Well-Architected 스킬 6종 살펴보기

저장소가 처음 공개될 때는 보안·안정성·비용 3개 기둥만 있었고, 지금은 운영 우수성·성능·지속 가능성까지 6개 기둥이 모두 들어 있습니다.
스킬 이름은 모두 google-cloud-waf-로 시작합니다.

기둥스킬 이름SKILL.md 분량
보안google-cloud-waf-security353줄
안정성google-cloud-waf-reliability148줄
비용 최적화google-cloud-waf-cost-optimization180줄
운영 우수성google-cloud-waf-operational-excellence150줄
성능 최적화google-cloud-waf-performance-optimization150줄
지속 가능성google-cloud-waf-sustainability259줄

여섯 스킬 모두 구조가 같습니다.
핵심 원칙과 근거 문서 링크, 관련 Google Cloud 제품, 워크로드 평가 질문, 점검 체크리스트 순서로 되어 있습니다.
작업 순서도 정해져 있는데, 먼저 사용자에게 질문해 맥락을 파악하고, 체크리스트로 빈틈을 찾은 뒤, 원칙에 맞춘 권장 사항을 우선순위와 함께 내도록 되어 있습니다.

지난 글의 BigQuery 스킬과 달리 실행 스크립트는 없습니다.
스킬은 “무엇을 어떤 순서로 봐야 하는지”만 알려 주고, 실제 판단은 에이전트의 AI 모델이 합니다.

2. 테스트 준비 – 일부러 문제를 심은 Terraform

사내 직원 300명이 쓰는 예약 관리 서비스를 가정했습니다.
피크 트래픽은 초당 10건 정도이고, API·관리자 화면·DB·첨부 파일·감사 로그 보관용 버킷으로 이루어진 흔한 구성입니다.
코드는 terraform validate까지만 통과시켰고 실제로 배포하지는 않았습니다.

코드 곳곳에 기둥별로 문제를 심었습니다.
실무에서 자주 보는 실수 위주로 골랐습니다.

기둥심은 문제개수
보안1. DB 공인 IP를 0.0.0.0/0에 개방
2. 앱 서비스 계정에 편집자(roles/editor)
3. DB 비밀번호 코드·환경 변수에 평문
4. 사내 전용 관리자 화면을 allUsers에 공개
5. 첨부 버킷 공개 + 균일 접근 해제
6. SSH 22번을 0.0.0.0/0에 개방
7. 두 서비스가 같은 서비스 계정 공유
7
안정성1. DB 단일 영역(ZONAL)
2. 백업 비활성화
3. 삭제 보호 해제
4. API 최대 인스턴스 1개 + 동시 요청 1건
4
비용1. 300명 서비스에 16 vCPU DB
2. 관리자 화면 최소 인스턴스 5개 상시
3. 조회 없는 1년 보관 로그를 STANDARD에, 수명 주기 없음
3
운영1. 라벨 없음
2. 이미지 :latest 태그
3. 모니터링·알림 없음
3
성능1. DB는 미국, 앱은 서울
2. 커넥터 없이 공인 IP로 DB 접속
2

3. 리뷰 방법

기둥마다 대화 기록이 없는 새 에이전트를 하나씩 띄웠습니다.
각 에이전트에게는 해당 스킬 파일과 Terraform 파일만 주고, 정답지는 보여 주지 않았습니다.

스킬은 먼저 사용자에게 질문하도록 되어 있지만, 이번에는 답해 줄 사람이 없다고 하고 “물어봤을 질문”과 “대신 세운 가정”을 적은 뒤 진행하게 했습니다.
보안 스킬이 남긴 질문은 실제 WAR 인터뷰에서 묻는 내용과 거의 같았습니다.

  • 1. 신원·권한
    직원은 Google Workspace 계정으로 로그인하나요? 관리자 화면에는 누가 접근해야 하나요?
  • 2. 네트워크 경계
    직원은 사내망·VPN에서만 접속하나요, 재택에서도 접속하나요?
  • 3. 데이터 분류·규제
    예약 데이터와 첨부에 개인정보가 들어가나요? 국내 보관이 필요한가요?
  • 4. 감사 로그 보관
    “법적 보관 1년”에 변경·삭제 불가(WORM) 요건까지 포함되나요?
  • 5. 배포 파이프라인
    이미지 취약점 스캔이나 서명·승인 절차가 있나요?

4. 리뷰 결과 – 지적 71건

기둥지적높음중간낮음
보안15672
안정성13472
비용 최적화10343
운영 우수성14671
성능 최적화9252
지속 가능성10343
합계71243413
보안 스킬의 리뷰 결과 일부 — 발견 사항 15건 중 9건

심어 둔 문제를 얼마나 찾았나

19개 모두 찾았습니다.
자기 기둥의 문제는 해당 스킬이 빠짐없이 짚었고, 여러 기둥에 걸친 문제는 여러 스킬이 함께 지적했습니다.

심은 문제지적한 스킬 수
DB는 미국, 앱은 서울6 / 6
API 최대 인스턴스 1개 + 동시 요청 1건5 / 6
16 vCPU DB(과다 사양)4 / 6
관리자 화면 최소 인스턴스 5개4 / 6
로그 버킷 STANDARD + 수명 주기 없음4 / 6
이미지 :latest 태그4 / 6
DB 백업 비활성화4 / 6
DB 삭제 보호 해제3 / 6
DB 공인 IP 0.0.0.0/01 / 6
(보안 스킬. 성능·비용 스킬은 공인 IP 경유 접속으로 지적)
두 서비스가 같은 서비스 계정 공유1 / 6
(보안 스킬)

리전 불일치는 여섯 스킬이 모두 지적했는데, 이유는 기둥마다 달랐습니다.
성능 스킬은 왕복 지연(약 130~160ms)을, 비용 스킬은 리전 간 전송 비용을, 지속 가능성 스킬은 대륙 간 전송 에너지를 근거로 들었습니다.

정답지에 없던 지적

심지 않았는데 나온 지적 중에는 실무에서 바로 쓸 만한 것이 많았습니다.

  • 1. 개인정보 국외 이전
    보안 스킬은 서울 서비스의 DB만 미국에 있는 점을 성능이 아니라 개인정보 국외 이전 문제로 짚었습니다.
  • 2. 감사 로그 보존 잠금
    “법적 보관 1년”이면 수명 주기뿐 아니라 보존 정책(Bucket Lock)으로 삭제·변조를 막아야 한다는 지적이 나왔습니다.
  • 3. Terraform state 안의 비밀번호
    원격 state 설정이 없고, 코드에 쓴 비밀번호가 state 파일에도 평문으로 남는다는 운영 관점의 지적이 있었습니다.
  • 4. 헬스 체크·유지보수 창
    Cloud Run 시작·활성 검사(probe)가 없고, Cloud SQL 유지보수 시간을 지정하지 않아 업무 시간에 재시작될 수 있다는 지적도 있었습니다.

수정 코드까지 받아 보면

상위 지적에는 Terraform 수정 예시도 함께 나왔습니다.
보안 스킬은 공인 IP를 없애고, 비밀번호 대신 IAM DB 인증을 쓰도록 바꿨습니다.

5. AWS Well-Architected Agent와 비교

AWS 후기와 나란히 놓고 보면 두 회사의 접근 방식 차이가 분명합니다.

항목AWS Well-Architected AgentGoogle WAF 스킬
형태콘솔 서비스(프리뷰)에이전트가 읽는 스킬 파일
사용 조건Support 플랜 Business+ 이상없음
(에이전트 모델 사용료만)
검토 대상1. IaC 템플릿
2. 실제 계정 리소스 스캔
에이전트가 읽을 수 있는 코드·문서
(실제 리소스 조회는 별도 도구 필요)
검토 시간IaC 검토 약 23분기둥당 약 1분
결과 형식콘솔의 추천 목록에이전트 답변(표·수정 코드)

AWS는 계정 스캔까지 포함한 완성형 서비스이고, Google 스킬은 지금 쓰는 에이전트 안에서 바로 돌릴 수 있는 가벼운 도구에 가깝습니다.

6. 써 보고 느낀 점

좋았던 점

  • 1. 심어 둔 문제를 모두 찾았습니다.
    19개 중 놓친 것이 없었고, 리전 불일치처럼 여러 기둥에 걸친 문제는 기둥마다 다른 근거로 설명했습니다.
  • 2. 정답지 밖의 실무 지적이 나왔습니다.
    개인정보 국외 이전, 감사 로그 보존 잠금, state 파일 속 비밀번호처럼 체크리스트만 봐서는 떠올리기 어려운 내용이 있었습니다.
  • 3. 질문 목록이 그대로 인터뷰 질문지가 됩니다.
    스킬이 먼저 묻도록 정해 둔 질문은 WAR 인터뷰 준비에 바로 쓸 수 있었습니다.

아쉬웠던 점

  • 1. 같은 문제가 기둥마다 반복됩니다.
    71건 중 상당수가 같은 문제를 다른 관점에서 다시 지적한 것이라, 보고서로 쓰려면 사람이 합치는 작업이 필요할 수 있습니다.
  • 2. 결과의 질은 에이전트 모델에 달려 있습니다.
    스킬은 체크리스트와 순서만 제공하므로, 어떤 모델로 돌리느냐에 따라 결과가 달라질 수 있습니다.
  • 3. 근거 문서를 실제로 열어 보지는 않았습니다.
    스킬에 근거 문서 링크가 있지만 이번 리뷰에서는 열지 않았고, 서울 리전의 무탄소 에너지 비율 같은 판단은 확인이 필요해 보입니다.
  • 4. 코드 밖의 상황은 가정으로 채웁니다.
    코드에 없는 배치 VM을 “상시 운영 중”으로 가정한 지적처럼, 질문에 답하지 않으면 추측이 섞일 수 있습니다.

7. 정리

Google의 Well-Architected 스킬은 별도 서비스 가입 없이, 지금 쓰는 코딩 에이전트에서 Terraform 리뷰를 바로 받을 수 있다는 점이 가장 큰 장점이었습니다.
다만 실제 계정을 스캔하지는 않으므로, 운영 중인 환경 점검은 보안 점검 도구나 실측 데이터와 함께 써야 합니다.

Well-Architected 리뷰를 “배포 전에 코드에서 먼저 받는 리뷰”로 앞당길 수 있는 도구였습니다.

5/5 - (평가 개수 : 1)

필자: 박 희찬

전체 게시물수 : 2

전체 조회수 : 45

게시물 공유하기