AZ-900 시험에서 "클라우드를 사용하면 뭐가 좋아지나요?"라는 질문이 다양한 형태로 나옵니다. 단어를 외우는 것만으로는 헷갈립니다. 각 이점이 실제로 어떤 문제를 해결하는지 이해해야 시험 당일 혼동 없이 답할 수 있습니다. 이 글에서는 일상 비유를 통해 클라우드의 7가지 핵심 이점을 하나씩 풀어봅니다.
고가용성 (High Availability, HA)
응급실이 있는 병원을 상상해 보세요. 밤중에 정전이 발생해도 수술실 조명이 꺼져서는 절대 안 됩니다. 그래서 병원에는 비상 발전기가 있고, 중요한 의료 장비는 이중화되어 있습니다. 주 전원이 끊겨도 비상 전원이 즉시 켜집니다. 환자는 아무것도 느끼지 못합니다.
고가용성이 바로 이것입니다. 장애가 발생하더라도 서비스가 중단 없이 계속 운영되는 것입니다.
Azure는 SLA(Service Level Agreement, 서비스 수준 계약)를 통해 가동 시간을 숫자로 보장합니다. SLA는 "우리 서비스가 이 정도 시간은 반드시 켜져 있을 것을 약속한다"는 공식 계약입니다.
SLA 수준별 다운타임 비교
| SLA 수준 | 연간 최대 다운타임 | 월간 최대 다운타임 | 적합한 서비스 예 | |---------|----------------|----------------|--------------| | 99% | 약 87.6시간 | 약 7.2시간 | 내부 개발·테스트 환경 | | 99.9% | 약 8.7시간 | 약 43.8분 | 일반 업무 앱 | | 99.95% | 약 4.4시간 | 약 21.9분 | 중요 업무 시스템 | | 99.99% | 약 52.6분 | 약 4.4분 | 금융·의료 서비스 | | 99.999% | 약 5.3분 | 약 26.3초 | 초임계 인프라 |
숫자 9가 많을수록 더 높은 가용성을 의미합니다. 99.9%와 99.99%는 숫자 하나 차이지만, 연간 다운타임이 8.7시간에서 52.6분으로 약 10배 차이가 납니다.
고가용성을 달성하는 방법: Azure Availability Zones(가용성 영역)는 같은 리전 내 물리적으로 분리된 데이터센터 3개 이상을 묶어, 하나가 장애를 겪어도 나머지가 자동으로 이어받습니다.
확장성 (Scalability)
백화점 엘리베이터를 생각해 봅시다. 크리스마스 세일 기간에 쇼핑객이 몰립니다. 엘리베이터가 꽉 차서 줄이 생깁니다. 어떻게 해결할까요?
방법 1 — 더 큰 엘리베이터로 교체: 기존 엘리베이터를 철거하고, 10명 정원 대신 20명 정원짜리로 새로 설치합니다. 이것이 수직 스케일링(Scale Up)입니다. 서버에서는 CPU를 2코어에서 8코어로, 메모리를 16GB에서 64GB로 업그레이드하는 것입니다.
방법 2 — 엘리베이터를 하나 더 추가: 옆에 엘리베이터를 하나 더 설치합니다. 이것이 수평 스케일링(Scale Out)입니다. 서버를 1대에서 4대로 늘려 트래픽을 분산하는 것입니다.
수직 스케일링 vs 수평 스케일링
| 구분 | 수직 스케일링 (Scale Up/Down) | 수평 스케일링 (Scale Out/In) | |------|---------------------------|--------------------------| | 방법 | 더 강력한 서버로 교체 또는 업그레이드 | 서버 수를 늘리거나 줄임 | | 비유 | 엘리베이터를 더 큰 것으로 교체 | 엘리베이터를 옆에 추가 | | 한계 | 물리적 최대 사양이 존재 | 이론상 무한 확장 가능 | | 다운타임 | 업그레이드 중 짧은 중단 가능 | 무중단으로 서버 추가 가능 | | Azure 예시 | VM 크기 변경 (Standard_D2s → D8s) | VM Scale Sets로 인스턴스 수 조정 | | 비용 | 더 비싼 단일 서버 | 저렴한 서버 여러 대 |
확장성의 핵심: 수요가 늘 때 늘릴 수 있고, 줄 때 줄일 수 있다는 능력 자체입니다.
탄력성 (Elasticity)
놀이공원을 상상해 보세요. 토요일에는 매표소에 줄이 길게 늘어서고, 화요일에는 한산합니다. 스마트한 놀이공원이라면 토요일 아침에 매표소 직원을 자동으로 더 배치하고, 화요일 저녁에는 자동으로 줄일 것입니다. 관리자가 직접 확인하고 지시하지 않아도 시스템이 자동으로 합니다.
탄력성은 확장성을 자동화한 것입니다. 수요 변화에 따라 시스템이 자동으로 리소스를 늘리거나 줄입니다.
실생활 예시: 쇼핑몰이 블랙프라이데이에 평소 대비 10배 트래픽이 몰립니다. Azure Auto Scaling이 자동으로 서버를 추가합니다. 행사가 끝나면 자동으로 서버를 줄여 비용을 절감합니다. 뉴스 사이트가 속보 기사로 트래픽이 갑자기 폭증합니다. 자동으로 확장되고, 트래픽이 안정화되면 자동으로 축소됩니다.
확장성 vs 탄력성 — 시험 단골 구분 포인트
| 개념 | 정의 | 핵심 키워드 | |------|------|-----------| | 확장성 (Scalability) | 필요에 따라 리소스를 늘리거나 줄일 수 있는 능력 | 능력, 가능성 | | 탄력성 (Elasticity) | 수요 변화에 따라 자동으로 리소스를 조정하는 것 | 자동화, 동적 조정 |
시험 TIP: "자동으로"라는 표현이 나오면 탄력성, 수동으로 조정 가능하다는 능력만 얘기하면 확장성입니다.
!확장성(Scalability) vs 탄력성(Elasticity)
안정성과 복원력 (Reliability and Resiliency)
지진이 일본 도쿄 데이터센터를 강타했다고 가정해 봅시다. 만약 데이터가 도쿄에만 있다면 서비스가 완전히 멈춥니다. 하지만 데이터가 도쿄, 서울, 싱가포르에 분산 저장되어 있다면? 도쿄 데이터센터가 다운되어도 서울이 자동으로 이어받아 서비스를 계속합니다.
이것이 안정성(Reliability)입니다. Azure는 전 세계 60개 이상의 리전에 데이터를 분산 배치할 수 있습니다. 어떤 단일 지점이 장애를 겪어도 다른 곳이 자동으로 대응합니다.
복원력(Resiliency)은 장애가 발생한 후 얼마나 빠르게 원상 복구되느냐에 관한 것입니다.
고가용성 vs 안정성 vs 복원력 비교
| 개념 | 초점 | 비유 | |------|------|------| | 고가용성 (HA) | 중단 없이 계속 운영 | 비상 발전기가 즉시 켜짐 | | 안정성 (Reliability) | 어떤 상황에서도 올바르게 동작 | 전 세계 분산 저장으로 한 곳 장애 무관 | | 복원력 (Resiliency) | 장애 후 빠른 원상 복구 | 장애 후 자동 재시작·복구 |
예측 가능성 (Predictability)
클라우드를 사용하면 두 가지를 예측할 수 있어 훨씬 안심하고 운영할 수 있습니다.
성능 예측 가능성
Azure Auto Scaling이 트래픽 변동에 자동으로 대응하고, Azure Load Balancer가 여러 서버에 부하를 균등하게 분배합니다. 사용자가 평일 오전이든 주말 저녁이든 항상 비슷한 응답 속도를 경험합니다. 특정 시간대에 서비스가 느려지는 현상이 줄어듭니다.
비용 예측 가능성
Azure Cost Management + Billing 도구로 현재까지 지출한 비용을 실시간으로 확인할 수 있습니다. 예산 한도(Budget Alert)를 설정하면 비용이 임계값을 넘을 때 자동으로 이메일 알림이 옵니다. Azure Pricing Calculator로 서비스를 구성하기 전에 예상 월 비용을 미리 계산할 수도 있습니다.
"다음 달 클라우드 비용이 얼마나 나올까?"를 사전에 알 수 있다는 것이 클라우드의 큰 장점입니다.
보안과 거버넌스 (Security and Governance)
작은 스타트업이 혼자서 기업 수준의 보안을 구축하기란 매우 어렵습니다. DDoS 방어 시스템을 사오고, 방화벽 장비를 구매하고, 보안 전문가를 채용해야 합니다. 클라우드를 쓰면 이 모든 것이 기본으로 포함됩니다.
보안 측면
Azure가 제공하는 보안 기능들: Azure DDoS Protection: 대규모 DDoS 공격을 자동으로 탐지하고 방어 Azure Firewall: 클라우드 네이티브 방화벽 서비스 Azure Security Center (Microsoft Defender for Cloud): 전체 보안 상태 모니터링 및 위협 탐지 데이터 암호화: 저장 데이터(at-rest)와 전송 데이터(in-transit) 모두 암호화 옵션 제공 Microsoft Entra ID (구 Azure Active Directory): 신원 및 접근 관리
거버넌스 측면
거버넌스란 "조직의 규정과 정책이 클라우드 환경에서 지켜지고 있는가를 관리·감독하는 것"입니다.
Azure Policy: 특정 지역에만 리소스를 배포하거나, 특정 VM 크기만 허용하는 등 정책을 코드로 정의하고 자동 적용 RBAC (Role-Based Access Control, 역할 기반 접근 제어): 개발자는 코드 배포만, 회계팀은 비용 조회만, 관리자는 모든 권한처럼 역할별로 권한을 세밀하게 제어 Azure Monitor + Log Analytics: 누가 어떤 리소스에 언제 접근했는지 감사 로그(Audit Log) 자동 기록 Azure Blueprints: 규정 준수 환경을 템플릿화하여 여러 구독에 일관되게 적용
핵심: 클라우드 자체가 보안을 완전히 보장하지는 않습니다. 공유 책임 모델에 따라 데이터와 접근 계정은 여전히 고객이 관리해야 합니다.
관리 용이성 (Manageability)