냅킨에 설명할 수 없는 것은 통치할 수 없다

발행: (2025년 12월 22일 오후 07:58 GMT+9)
8 min read
원문: Dev.to

Source: Dev.to

번역할 텍스트가 제공되지 않았습니다. 번역이 필요한 내용을 알려주시면 도와드리겠습니다.

문제

모든 플랫폼 팀은 결국 같은 질문을 받게 됩니다:

“클라우드 비용이 왜 이렇게 많이 드나요?”

답변이 “대시보드를 꺼내 보겠습니다”로 시작한다면 이미 패배한 겁니다.

CFO가 출력물을 들고 사무실에 들어옵니다:

“이번 분기에 Azure 비용이 230만 달러인 이유가 뭐죠?”

당신은 규정 준수를 강제하는 Azure Policy, 완벽한 아키텍처의 랜딩 존, 모든 리소스에 태그, 메트릭을 보여주는 워크북, 예쁜 그래프가 있는 대시보드를 가지고 있지만, 30초 안에 화이트보드나 냅킨 위에서 그 질문에 답할 수 없습니다. 이것이 아무도 이야기하지 않는 거버넌스 실패입니다.

전형적인 Azure 거버넌스 스택

계층구성 요소
1 – Azure PolicySKU 제한, 필수 태그, 보안 기준, 감사 결과
2 – Landing Zones관리 그룹, 구독 설계, 네트워크 토폴로지, 아이덴티티 계층
3 – Tagging StandardsCostCenter, Owner, Environment, Application
4 – Reporting ToolsAzure Monitor 워크북, Power BI 대시보드, Cost Management 내보내기, 사용자 정의 쿼리

이 스택이 제공하는 것

  • ✅ 규정 준수
  • ✅ 보안 제어
  • ✅ 리소스 인벤토리
  • ✅ 비용 가시성

이 스택이 제공하지 않는 것

  • ❌ 방어성

Compliance vs. Defensibility

Compliance means: “Our resources follow the rules we wrote.”
컴플라이언스는 “우리의 리소스가 우리가 만든 규칙을 따릅니다.” 라는 의미입니다.

Defensibility means: “I can explain why this costs what it costs — and justify it to someone who doesn’t trust me.”
방어성은 “이 비용이 왜 이렇게 되는지 설명할 수 있고, 나를 신뢰하지 않는 사람에게도 정당화할 수 있다.” 라는 의미입니다.

Example

Compliant Azure bill

All resources are tagged correctly. Policy enforced. Landing zone followed. Here’s the report.
모든 리소스에 올바르게 태그가 지정되었습니다. 정책이 적용되었습니다. 랜딩 존을 따랐습니다. 여기 보고서가 있습니다.

Defensible Azure bill

Application X costs $180 K/month because it serves 2,400 users across 12 regions with a 99.95 % SLA. Storage is $40 K due to 7‑year retention for SOX compliance. Network is $25 K for dual ExpressRoute. Compute scales between $95 K–$140 K based on usage.
Application X는 12개 지역에 걸쳐 2,400명의 사용자를 99.95 % SLA로 지원하기 때문에 월 $180 K가 소요됩니다. 스토리지는 SOX 컴플라이언스를 위한 7년 보관 때문에 $40 K입니다. 네트워크는 이중 ExpressRoute 때문에 $25 K이며, 컴퓨트는 사용량에 따라 $95 K–$140 K 사이로 변동합니다.

Most Azure environments can only produce the first answer.
대부분의 Azure 환경은 첫 번째 답변만 생성할 수 있습니다.

냅킨에 Azure 비용을 설명할 수 있나요?

Not “here’s a dashboard.”
Not “let me pull a report.”

지금 바로. 냅킨 위에. 60 초 안에.

간단한 연습

  1. 세 개의 상자를 그리세요: Production, Staging, Development.
  2. 각 상자에 월 비용을 적으세요.
  3. Production을 다음으로 나누세요: Apps, Data, Network, Security.
  4. 가장 큰 앱에 대해: 무엇을 하나요? 사용자 수는? SLA는?

만약 이를 찾아보지 않고 할 수 없다면, 거버넌스가 제대로 작동하고 있지 않은 것입니다. 정책이 얼마나 훌륭하든, 랜딩존이 얼마나 깔끔하든, 태그가 얼마나 일관되든 상관없습니다. 책임자가 간단히 설명할 수 없다면, 그것은 거버넌스가 아니라 단순히 규정 준수일 뿐입니다.

Why Tags, Landing Zones, and Policies Aren’t Enough

  • Tags는 리소스가 무엇인지 알려줍니다 (CostCenter, Environment, Owner, Application) 하지만 월 $340 K가 드는지, 그 금액이 합리적인지, 30 %를 줄이면 무엇이 깨질지 설명하지 못합니다.
  • Landing Zones는 아름다운 구조를 제공하지만, 왜 한 구독이 다른 구독보다 세 배 비싼지, 어떤 결정이 비용 상승을 초래했는지, 실제 ROI가 무엇인지 설명하지 못합니다.
  • Azure Policy는 비준수 항목을 보여주지만, 해당 리소스가 존재해야 하는지, 어떤 비즈니스 문제를 해결하는지, 혹은 그 규칙이 아직 의미가 있는지 여부는 알려주지 않습니다.

스토리 없이 구조만 있으면 단지 정돈된 혼돈에 불과합니다.

방어 가능한 클라우드 비용이 어떻게 보이는가

  • 비용당 비즈니스 컨텍스트 – 비용을 사용자, 지역, SLA 및 컴플라이언스 요구사항에 연결합니다.
  • 결정 이력 – 리소스가 프로비저닝된 이유와 그 변화 과정을 기록합니다.
  • 트레이드‑오프 인식 – 비용 절감이 기능에 미치는 영향을 이해합니다.
  • 명확한 소유자 책임 – 각 지출을 정당화할 수 있는 사람을 지정합니다.

더 많은 대시보드, 더 많은 태그, 혹은 더 많은 정책이 필요한 것이 아닙니다. CFO의 검증을 견뎌낼 수 있는 명확한 서술이 필요합니다.

결론

설명할 수 없는 것은 관리할 수 없습니다. 나프킨에 60 초 안에, 비즈니스 용어로, 당신을 신뢰하지 않는 사람에게 Azure 비용을 설명할 수 없다면, 이를 충분히 이해하지 못한 것이므로 관리할 수 없습니다. 이해할 때까지, 거버넌스는 추가 단계가 있는 비용이 많이 드는 인프라에 불과합니다.

Back to Blog

관련 글

더 보기 »