Azure Resource Graph의 VM 가용성 정보
Azure Resource Graph는 로그 쿼리에서 사용되는 것과 동일한 KQL 쿼리 언어를 사용하여 복잡한 필터링, 그룹화, 리소스 속성별로 정렬을 통해 Azure 리소스를 대규모로 쿼리합니다. 다음을 포함하여 자세한 오류 특성 및 가동 중지 시간 분석을 위해 ARG(Azure Resource Graph)에 VM 상태 주석을 사용할 수 있습니다.
- 모든 Azure 구독에서 VM 가용성의 최신 스냅샷을 함께 쿼리합니다.
- 중단 및 오류 서명 유형에 대응하여 비즈니스 SLA에 미치는 영향을 평가하고 결정적인 완화 작업을 트리거합니다.
- Resource Graph에서 추가 리소스 메타데이터와 함께 VM 가용성 정보를 조인하여 애플리케이션의 포괄적인 상태를 감독하도록 사용자 지정 대시보드를 설정합니다.
- 자세한 조사를 수행하기 위해 변경 내용 추적 메커니즘을 사용하여 롤링 14일 기간 동안 VM 가용성의 관련 변경 내용을 추적합니다.
Resource Graph를 시작하려면 Azure Portal에서 Resource Graph Explorer를 엽니다. 테이블 탭을 선택하고 아래에 설명된 microsoft.resourcehealth/availabilitystatuses 및 microsoft.resourcehealth/resourceannotations 테이블을 살펴봅니다. healthresources를 클릭하여 간단한 쿼리를 만든 다음, 실행을 클릭하여 레코드를 반환합니다.
레코드에 대한 세부 정보를 보려면 오른쪽으로 스크롤하고 세부 정보 보기를 선택합니다.
HealthResources 테이블에는 다음 두 가지 유형의 이벤트가 채워집니다.
microsoft.resourcehealth/availabilitystatuses
이 이벤트는 기본 Azure 플랫폼에서 수행하는 상태 검사를 기반으로 VM의 최신 가용성 상태를 나타냅니다. 현재 VM에 대해 내보내는 가용성 상태는 다음과 같습니다.
- 사용 가능: VM이 예상대로 실행되고 있습니다.
- 사용할 수 없음: VM의 정상적인 작동 중단이 감지되었습니다.
- 알 수 없음: 플랫폼에서 VM의 상태를 정확하게 감지할 수 없습니다. 몇 분 후에 다시 확인하세요.
가용성 상태는 다음 속성을 포함하는 레코드의 properties
필드에 있습니다.
필드 | 설명 |
---|---|
targetResourceType | 상태 데이터가 흐르는 리소스 유형 |
targetResourceId | 리소스 ID |
occurredTime | 플랫폼에서 최신 가용성 상태를 내보낸 타임스탬프 |
previousAvailabilityState | VM의 이전 가용성 상태 |
availabilityState | VM의 현재 가용성 상태 |
샘플 properties
값은 다음과 유사합니다.
{
"targetResourceType": "Microsoft.Compute/virtualMachines",
"targetResourceId": "/subscriptions/<subscriptionId>/resourceGroups/<ResourceGroupName>/providers/Microsoft.Compute/virtualMachines/<VMName>",
"occurredTime": "2022-10-11T11:13:59.9570000Z",
"previousAvailabilityState": "Available",
"availabilityState": "Unavailable"
}
microsoft.resourcehealth/resourceannotations
이 이벤트는 필요에 따라 중단을 조사하고 완화하는 데 도움이 되는 필요한 오류 특성을 자세히 설명하여 VM 가용성에 대한 변경 내용을 컨텍스트화합니다. VM 상태 주석의 전체 목록은 [리소스 상태 가상 머신 상태 주석](../service-health/resource-health-vm-annotation.md)에 나열됩니다.
이러한 주석은 크게 다음과 같이 분류할 수 있습니다.
- 가동 중지 시간 주석: 플랫폼에서 VM 가용성이 사용할 수 없음으로 전환되는 것을 감지할 때 내보내집니다. 호스트 크래시 또는 다시 부팅 작업을 예로 들 수 있습니다.
- 정보 주석: 컨트롤 플레인 작업 중에 VM 가용성에 영향을 미치지 않고 내보내집니다. 예를 들어 VM 할당, 중지, 삭제, 시작 등이 있습니다. 일반적으로 이에 대한 추가 고객 조치는 필요하지 않습니다.
- 저하된 주석: VM 가용성이 위험에 처한 것으로 감지될 때 내보내집니다. 예를 들어 오류 예측 모델이 지정된 시간에 VM을 다시 부팅할 수 있는 성능 저하된 하드웨어 구성 요소를 예측하는 경우가 있습니다. 예기치 않은 데이터 손실이나 가동 중지 시간을 방지하려면 주석 메시지에 지정된 마감 기한까지 다시 배포해야 합니다.
필드 | 설명 |
---|---|
targetResourceType | 상태 데이터가 흐르는 리소스 유형 |
targetResourceId | 리소스 ID |
occurredTime | 플랫폼에서 최신 가용성 상태를 내보낸 타임스탬프 |
annotationName | 내보낸 주석의 이름 |
reason | 고객이 관찰한 가용성 영향에 대한 간략한 개요 |
category | 주석을 트리거하는 플랫폼 활동이 계획된 유지 관리인지 또는 계획되지 않은 복구인지 여부를 나타냅니다. 이 필드는 고객/VM 시작 이벤트에는 적용되지 않습니다. 가능한 값: 계획됨 | 계획되지 않음 | 해당 사항 없음 | Null |
context | 주석을 트리거하는 작업이 권한 있는 사용자 또는 프로세스(고객 시작)로 인한 것인지, Azure 플랫폼(플랫폼 시작)으로 인한 것인지 또는 가용성에 영향(VM 시작)을 미친 게스트 OS의 작업으로 인한 것인지 여부를 나타냅니다. 가능한 값: 플랫폼 시작 | 사용자 시작 | VM 시작 | 해당 사항 없음 | Null |
요약 | 사용자가 수행할 수 있는 수정 단계와 함께 주석 배출의 원인을 자세히 설명하는 문 |
이 데이터를 사용하는 샘플 쿼리는 테이블별 Azure Resource Graph 샘플 쿼리를 참조하세요.