Fault Domain과 Update Domain
Azure에서 고가용성(High Availability) 을 실현하려면, 가상 머신(VM)이 서로 다른 물리적 인프라와 업데이트 스케줄에 최대한 분산되도록 구성하는 것이 핵심입니다. 이를 위해 Availability Set 내에서 적절한 Fault Domain과 Update Domain 값을 설정해야 합니다.
✅ Fault Domain과 Update Domain의 개념 요약
구분 | 설명 | 예시 |
Fault Domain (FD) | 동일한 전원, 네트워크 스위치, 물리적 랙 등 하드웨어를 공유하는 그룹 | 전력 장애, 네트워크 장애 시 한 도메인만 영향 |
Update Domain (UD) | 호스트 OS 패치나 Azure 업데이트가 동시에 적용되는 VM 그룹 | OS 업데이트 시 하나의 UD만 재부팅됨 |
🎯 고가용성을 위한 설정 전략
1. Availability Set 사용 시
구성 요소 | 권장 설정 | 설명 |
Fault Domain 수 | 최대값 (일반적으로 2~3) | 최대한 다양한 하드웨어에 분산됨으로써 물리적 장애 위험 분산 |
Update Domain 수 | 최대값 (최대 20) | 업데이트 시 동시에 영향을 받는 VM 수를 최소화 |
"properties": {
"platformFaultDomainCount": 3,
"platformUpdateDomainCount": 20
}
단, 지역에 따라 Fault Domain 최대값이 2인 곳도 있으니 배포 전에 확인해야 함.
2. VM 배포 수 고려
- Fault Domain 수보다 많은 VM을 배포하면, 일부 VM은 동일한 FD에 위치하게 되어 장애 발생 시 함께 영향을 받게 됩니다.
- 최소 VM 수 = Fault Domain 수 × Update Domain 수를 고려하여 분산 효과 극대화.
3. Availability Zone 사용 시 (대안적 전략)
- Availability Zone은 물리적으로 완전히 분리된 데이터 센터입니다.
- Availability Set보다 더 높은 가용성(99.99%)을 보장.
- FD와 UD 수를 수동으로 설정할 필요가 없고, Azure가 자동으로 인프라 분산을 수행함.
✅ 실전 예제 시나리오
웹 서비스 백엔드에 6개의 VM을 배포해야 할 경우:
- Availability Set 사용:
FD = 3, UD = 6 으로 설정하면, 장애나 유지관리 상황에서도 동시에 영향을 받는 VM 수를 최소화할 수 있음. - Availability Zone 사용:
3개 Zone에 각각 2개의 VM을 배치하면, 하나의 Zone이 다운되어도 서비스 유지 가능.
🚫 흔한 실수
- platformFaultDomainCount = 1로 두는 경우 → 물리적 장애에 모두 영향받음
- Update Domain을 너무 적게 설정 → 유지관리 중에 여러 VM이 동시에 영향을 받아 가용성 저하
- Availability Set에 단 1개의 VM만 배치 → 이점 없음
✅ 결론
목표 | 설정 |
물리적 장애 대비 | Fault Domain을 최대값으로 설정 (보통 2~3) |
유지관리로 인한 재시작 대비 | Update Domain을 최대값 (최대 20) 으로 설정 |
더 높은 SLA 필요 | Availability Set 대신 Availability Zone 사용 고려 |
회사는 Azure 구독을 보유하고 있습니다. Azure Resource Manager(ARM) 템플릿을 사용하여 여러 Azure 가상 머신(VM)을 배포해야 합니다. VM이 단일 가용성 집합(Availability Set)에 포함된다는 안내를 받았습니다. 구성한 ARM 템플릿이 패브릭 장애 또는 유지 관리 시 가능한 한 많은 VM이 액세스 가능한 상태를 유지할 수 있도록 해야 합니다. 이 목표를 달성하기 위해 platformUpdateDomainCount 속성에 구성해야 하는 값은 무엇입니까?
• A. 10
• B. 20
• C. 30
• D. 40
이 질문은 Azure Availability Set의 핵심 개념인 **업데이트 도메인(Update Domains)**에 관한 것입니다. 질문의 핵심은 Azure Resource Manager(ARM) 템플릿에서 platformUpdateDomainCount를 얼마나 설정해야, 유지 관리나 패브릭 장애 상황에서도 가능한 한 많은 VM이 영향을 받지 않고 살아남을 수 있도록 하느냐입니다.
✅ 핵심 개념 요약
- Availability Set: VM들을 서로 다른 물리적 하드웨어(서버 랙, 전원, 네트워크)에 분산시켜 **장애 도메인(Fault Domain)**과 업데이트 도메인(Update Domain) 수준에서 고가용성을 제공함.
- Update Domain: Azure가 OS나 호스트 업데이트를 수행할 때 한 번에 영향을 받는 VM의 그룹. 같은 Update Domain에 속한 VM은 동시에 재부팅될 수 있음.
- 기본 최대 Update Domain 수: 최대 20개 (Azure가 보장하는 최대 수치)
🧠 정답 도출 로직
- platformUpdateDomainCount 속성은 0~20 사이에서 지정 가능.
- Microsoft 공식 문서에 따르면, Availability Set을 정의할 때 업데이트 도메인은 최대 20개까지 지정할 수 있음.
- 이는 고가용성을 위해 권장되는 최대값이며, 더 많은 Update Domain을 설정한다고 해서 가용성이 추가로 높아지지 않음. 30이나 40은 유효한 값이 아님.