[Azure Monitor Alert을 이용한 복합 Alert 모니터링 및 AWS와 비교]

https://support.bespinglobal.com/a/solutions/articles/73000663828?lang=ko&portalId=73000054579

AWS에서 구현 할 수 있는 Composite Alert 의 구현은 Azure또는 Datadog에서도 구현 가능합니다.

Azure에도 유사한 기능이 있지만 접근 방식이 조금 다릅니다

이 문서에서는 Azure와 AWS의 복합알람 구성의 차이점과 Azure VM 자원 모니터링에 대한 복합 알람을 구성하는 방법에 대해서 안내합니다.

Issue 

알람 조건

조건 1: VM CPU 사용률 >= 80%

AND

조건 2: Available Memory <= 20%

→ 두 조건 모두 만족 시에만 알람 발생

알림 채널

  • Email: 이메일 알림
  • Teams/Webhook: 협업 도구 연동 (선택사항)

Solution

구현 방식

  • Azure Metric Alert의 Multiple Conditions 기능 활용 
    • 단일 Alert Rule에 여러 조건 직접 추가
    • AND 연산자 자동 적용
    • 추가 리소스 없이 Native 기능만 사용


Azure vs AWS 접근 방식 비교

AzureAWS 

단일 Alert Rule 생성

Condition 1 추가 (CPU)

+

Condition 2 추가 (Memory)

자동으로 AND 연산 적용

Action Group으로 알림 발송

개별 알람 A 생성 (더미 SNS)

+

개별 알람 B 생성 (더미 SNS)

Composite Alarm으로 조합 (A AND B)

실제 SNS로 알림 발송



핵심 차이:

  • AWS: 여러 알람을 만든 후 조합하는 방식
  • Azure: 하나의 알람 규칙에 여러 조건을 직접 추가하는 방식


항목

AWS CloudWatch

Azure Monitor

장점

• 유연한 조건 조합 (OR, NOT)
• 무제한 조건 수
• 개별 알람 상태 확인 가능
 • 복잡한 로직 구현 가능

• 간단한 구조 (단일 리소스)
• 저렴한 비용
• 빠른 설정
 • 관리 포인트 최소화

단점

• 더미 SNS 추가 필요
• 관리 리소스 많음
• 설정 단계 많음
 • 비용 높음 ($0.30)

• AND만 지원 (OR 불가)
• 최대 5개 조건 제한
• 개별 조건 상태 확인불가
 • 복잡한 로직 제한적

사전 준비: Action Group 생성

개별 조건이 알림을 보내지 않도록 별도 설정이 필요 없습니다. 

Azure는 단일 Alert Rule이므로 Action Group만 준비하면 됩니다. 


1단계: Alert Rule 생성 시작

Monitor Console 경로

Azure Portal → Monitor 검색 → 왼쪽 메뉴 "Alerts" 클릭 → "+ Create"  → "경고 규칙(Alert rule)" 선택


2단계: Scope (대상) 설정

Select a resource 화면이 열립니다.

리소스 필터링 및 선택

설정 항목

선택 방법

Filter by subscription

모니터링할 VM이 있는 구독 선택

Filter by resource type

드롭다운에서 Virtual machines 입력 및 선택

Filter by location

(선택사항) VM이 있는 리전 선택

리소스 목록에서:

  • 모니터링할 VM 체크박스 선택 (예: prod-web-vm-01)
  • 하나의 VM만 선택



3단계: Condition 1 추가 (CPU 사용률)

Alert rule 생성 화면의 Condition 탭으로 자동 이동합니다.

Signal 선택

  1. See all signals 클릭
  2. Select a signal 화면이 열립니다:

필터 설정:

필터 항목

선택 값

설명

Signal type

Metrics

메트릭 기반 알람

 

Signal 검색:

  • 검색창에 Percentage CPU 입력

설정 항목

선택 값

설명

Threshold

Static

고정 임계값 (Dynamic은 ML 기반)

Aggregation type

Average

기간 동안 평균값

Operator

Greater than or equal to

>= 조건

Threshold value

80

80%

Check every

1 Minute

평가 빈도

Lookback period

5 Minutes

지난 5분 데이터 확인


  • 1분마다 체크
  • 지난 5분간 평균 CPU가 80% 이상이면 조건 만족


4단계: Condition 2 추가 (Available Memory)

같은 Alert Rule에 두 번째 조건을 추가합니다.

Signal 선택

  1. Condition 탭 하단의 + Add condition 버튼 클릭

Signal 검색:

  • 검색창에 Available Memory Percentage 입력

설정 항목

선택 값

설명

Threshold

Static

고정 임계값

Aggregation type

Average

평균값

Operator

Less than or equal

<= 조건

Threshold value

20

가용 메모리의 20%

Check every

1 Minute

평가 빈도

Lookback period

5 Minutes

지난 5분 데이터 확인



⚠️ 중요: Azure는 자동으로 AND 연산자를 적용합니다.

  • 두 조건 모두 만족 시 알람 발생
  • 하나라도 해소되면 3회 연속 체크 후 알람 해소

이후 사전 준비단계에서 생성한 Action Group 과 세부 사항을 설정해서 생성을 마무리 합니다.

 

Azure Monitor의 Multiple Conditions 기능을 활용하면 AWS CloudWatch Composite Alarm과 유사하게 여러 조건을 조합한 알람을 구현할 수 있습니다.

 

핵심 포인트:

  • 단일 리소스(VM)는 Metric Alert로 간단히 구현
  • 최대 5개 조건을 AND로 자동 결합
  • 더미 리소스 불필요 (단일 Alert Rule)
  • AWS보다 저렴한 비용 ($0.10/월)
  • ⚠️ 서로 다른 리소스 타입은 Log Search Alert 필요

Azure의 장점:

  • 관리 포인트 최소화 (1개 Alert Rule)
  • 간단한 설정 (Portal에서 클릭만으로 완료)
  • 저렴한 비용

Azure의 제약:

  • 조건 수 제한 (최대 5개)
  • AND만 지원
  • 다른 리소스 타입의 조건을 조합한 Alert의 경우 단일 리소스로는 구현 불가
     →Log Analytics를 사용할 것