1. Virtual Machine (VM) 핵심 보완 정리
| 항목 |
설명 |
중요 포인트 |
| Availability Set |
장애 도메인/업데이트 도메인 분산 |
고가용성 99.95% 확보용 |
| Availability Zone |
리전 내 데이터센터 분산 |
SLA 99.99% |
| VM Redeploy |
VM을 다른 호스트로 이동 |
장애 대응 |
| Ephemeral OS Disk |
임시 디스크로 빠른 부팅 |
빠른 배포/확장 |
| Disk Caching |
ReadOnly / ReadWrite 설정 |
성능 최적화 |
| VM Scale Set |
자동 수평 확장 구성 |
인스턴스 자동 조정 |
주의사항:
- Zone은 다른 DC에, Set은 같은 DC 내에서 분산
- Ephemeral OS Disk는 비영속성
- 디스크 캐싱 설정 실수 시 성능 저하 유발
2. Azure Kubernetes Service (AKS)
| 항목 |
설명 |
조건/시험포인트 |
| Node Pool |
OS별 노드 구분 가능 |
업그레이드, 리소스 격리 |
| Cluster Autoscaler |
리소스 사용률 기반 노드 증감 |
Min/Max 지정 필요 |
| Azure CNI / Kubenet |
네트워크 플러그인 차이 |
CNI는 IP 직접 할당, 고급 기능 가능 |
| Managed Identity |
자원 접근 인증 |
Key Vault, ACR 연동 |
| Azure Monitor for AKS |
로그 및 메트릭 수집 |
Container Insight 포함 |
추가 개념:
--max-surge로 Rolling Upgrade 제어
- CNI는 IP 고갈 가능성 있음 → 서브넷 주의
3. App Service (WebApp)
| 항목 |
설명 |
주의 사항 |
| Deployment Slots |
슬롯 기반 무중단 배포 가능 |
A/B 테스트 구현 가능 |
| App Service Plan |
성능/비용 측정 단위 |
같은 리전 간 이동만 가능 |
| Always On |
장기 실행 프로세스 유지 |
무료 요금제에서는 사용 불가 |
| VNET Integration |
프라이빗 리소스 접근 가능 설정 |
Regional VNET만 가능 |
시험 포인트:
- _app_offline.htm으로 배포 테스트 가능
- Private Endpoint 연동은 Premium에서만 가능
4. ARM Template / Bicep
비용 관련 주요 개념 및 케이스 반영:
- 템플릿 내 리소스 선택에 따라 비용 차이 발생 (예: 프리미엄 SKU 사용 시)
Complete 배포 시 불필요한 리소스가 삭제되고, 해당 리소스가 포함된 예약 비용이 유지될 수 있음
- 반복 배포나 테스트 환경 생성 시 예산 초과 방지를 위해 파라미터 기반 조건부 배포 적용 권장
- 템플릿 작성 시 가격 계산 도구(Azure Pricing Calculator)와 병행 사용 권장
| 항목 |
설명 |
실무/시험 팁 |
| Parameter vs Variable |
외부 입력 vs 내부 계산 |
location은 param으로 지정 권장 |
| Nested Deployment |
템플릿 내 또 다른 템플릿 호출 |
복잡한 배포 시 유용 |
| Copy Loop |
리소스 반복 생성 |
VM/NIC 다중 배포 활용 |
| dependsOn |
배포 순서 제어 |
종속 리소스 명시적 선언 필수 |
| Deployment Scope |
Subscription / RG / MG 대상 배포 |
대상 지정 시 CLI 명령 정확히 구분 필요 |
시험 팁: Complete 배포는 미정의 리소스를 삭제함. 실무에선 Incremental 사용 권장.
5. Azure Key Vault
| 항목 |
설명 |
조건 및 팁 |
| Access Policy |
명시적 사용자/앱 권한 부여 |
RBAC와 병행 시 주의 |
| Key / Secret / Certificate |
관리 항목 구분 |
각각의 API 존재 |
| Firewall & VNET 제한 |
특정 IP/서브넷만 접근 허용 |
Private Link와 병행 가능 |
| Soft Delete / Purge Protect |
삭제 방지 및 복원 기능 |
기본 활성화됨, 시험 자주 출제됨 |
6. Azure Container Registry (ACR)
| 항목 |
설명 |
조건 및 팁 |
| Admin User |
관리자 계정 로그인 기능 설정 가능 |
비활성화 권장 (보안 이슈) |
| RBAC 연동 |
Azure RBAC 기반 권한 제어 |
사용자, 그룹, 서비스 주체 활용 |
| Content Trust |
서명된 이미지만 허용 가능 |
보안 강화 |
| Geo-Replication |
다중 리전 복제 지원 |
글로벌 배포 시 유용 |
| Webhook |
이미지 푸시 트리거 자동화 |
CI/CD 파이프라인 통합 가능 |
마인드맵 요약
시험 대비 항목
├── Compute
│ └── VM / VMSS / Zone / Caching / Disk
├── Container
│ └── AKS: NodePool / Autoscale / Identity
├── WebApp
│ └── AppService: Slot / AlwaysOn / Plan
├── Automation
│ └── ARM / Bicep: param / loop / scope
├── Security
│ └── KeyVault: AccessPolicy / PurgeProtection
├── Registry
│ └── ACR: Admin / Trust / Replication
실행 계획 및 예상 문제 대응
| 단계 |
작업 내용 |
선행 조건 |
| 1단계 |
리소스 그룹 및 네트워크 설계 |
리전 및 보안 요구 분석 |
| 2단계 |
Bicep / ARM 템플릿 작성 |
모듈화 및 param 구성 |
| 3단계 |
테스트 환경에서 Incremental 배포 |
영향 없는 검증 환경 필요 |
| 4단계 |
Production은 Complete 여부 검토 |
삭제 영향도 확인 |
| 5단계 |
VNET/Private Endpoint 구성 |
NSG와 보안정책 정의 필요 |
| 6단계 |
배포 결과 검증 및 롤백 계획 수립 |
실패 대응 시나리오 준비 |
문제 상황 및 해결 방안
| 문제 상황 |
원인 |
해결 방안 |
| Complete 배포 시 리소스 삭제됨 |
템플릿에 포함되지 않은 리소스 제거됨 |
배포 전 what-if 또는 validate 활용 |
| NSG 충돌로 통신 불가 |
규칙 우선순위 혹은 포트 미설정 |
NSG 진단 로그로 확인 후 수정 |
| VNET 피어링 불가 |
Gateway Transit 설정 누락 |
피어링 양방향 설정 확인 |
| 배포 실패 |
dependsOn 누락 또는 순서 오류 |
템플릿 구조 개선 및 명시 설정 |
참고 링크