연습 - 메트릭 경고를 사용하여 Azure 환경의 성능 문제에 대해 경고합니다.

완료됨

근무하는 운송 회사는 Azure 플랫폼에서 해당 애플리케이션에 대한 업데이트를 통해 향후 문제를 방지하려고 합니다. Azure에서 경고 기능을 개선하기 위해 Azure 메트릭 경고를 사용하도록 선택했습니다.

이 연습에서는 Linux VM(가상 머신)을 만듭니다. 이 VM은 CPU를 100% 사용률로 실행하는 앱을 실행합니다. Azure Portal 및 Azure CLI에서 높은 CPU 사용량에 대해 경고하도록 모니터링 규칙을 만듭니다.

VM 만들기

이 VM은 CPU에 스트레스를 가하고 경고를 트리거하는 데 필요한 메트릭 모니터링 데이터를 생성하는 특정 구성을 실행합니다.

  1. 먼저 구성 스크립트를 만듭니다. VM에 대한 구성으로 cloud-init.txt 파일을 만들려면 Azure Cloud Shell에서 이 명령을 실행합니다.

    cat <<EOF > cloud-init.txt
    #cloud-config
    package_upgrade: true
    packages:
    - stress
    runcmd:
    - sudo stress --cpu 1
    EOF
    
  2. Ubuntu Linux VM을 설정하려면 다음 az vm create 명령을 실행합니다. 이 명령은 이전 단계에서 만든 cloud-init.txt 파일을 사용하여 VM을 만든 후 구성합니다.

    az vm create \
        --resource-group "<rgn>[sandbox resource group name]</rgn>" \
        --name vm1 \
        --location eastUS \
        --image Ubuntu2204 \
        --custom-data cloud-init.txt \
        --generate-ssh-keys
    

Azure Portal를 사용하여 메트릭 경고 만들기

참고

연습을 계속하기 전에 VM이 성공적으로 생성될 때까지 기다립니다. Azure Cloud Shell 창에 완료된 JSON 출력이 표시되면 VM 만들기 프로세스가 완료됩니다.

Azure Portal 또는 CLI 중 하나를 사용하여 메트릭 경고를 만들 수 있습니다. 이 연습에서는 두 방법을 모두 다루며, Azure Portal부터 시작합니다.

  1. 샌드박스를 활성화하는 데 사용한 동일한 계정으로 Azure Portal에 로그인합니다.

  2. Azure Portal 메뉴에서 Monitor를 검색하여 선택합니다. 모니터 개요 페이지에서 경고를 선택합니다.

  3. + 만들기 메뉴를 열고 경고 규칙을 선택합니다.

  4. 리소스 선택 창에서 경고 규칙의 범위를 설정합니다. 구독, 리소스 종류 또는 리소스 위치별로 필터링할 수 있습니다.

  5. 리소스 종류 드롭다운에서 “가상 머신”을 입력하고 가상 머신을 선택합니다.

  6. vm1 옆에 있는 상자를 선택한 다음, 창 아래쪽에 있는 적용을 선택합니다.

    ‘vm1’이 선택된 ‘리소스 선택’ 창을 보여 주는 스크린샷

  7. 페이지 아래의 다음: 조건을 선택합니다.

  8. 신호 이름 드롭다운에서 CPU 비율을 선택합니다.

  9. 경고 논리 섹션에서 각 설정에 대해 다음 값을 입력(또는 확인)합니다.

    설정
    경고 논리
    임계값 정적
    집계 유형 최대
    연산자 보다 큼
    임계값 90
    평가할 시기
    1분
    되돌아보기 기간 1분

    메트릭 조건 논리에 대한 설정을 표시하는 스크린샷.

  10. 페이지의 위쪽에서 세부 정보 탭을 선택합니다. 경고 규칙 세부 정보에서 각 설정에 다음 값을 입력합니다.

    설정
    심각도 2 - 경고
    경고 규칙 이름 Cpu90PercentAlert
    설명 가상 머신이 90% 이상의 CPU 사용률로 실행되고 있습니다.
  11. 고급 옵션 섹션을 확장하고 각 설정에 대한 다음 값을 확인합니다.

    설정
    만들어지면 바로 사용 예(체크 표시됨)
    자동으로 경고 해결 예(체크 표시됨)

    경고 규칙 세부 정보 섹션의 완료된 설정을 보여주는 스크린샷

  12. 검토 + 만들기를 선택하여 입력의 유효성을 검사한 다음, 만들기를 선택합니다.

VM의 CPU 백분율이 90%를 초과하는 경우 경고를 트리거하는 메트릭 경고 규칙이 성공적으로 만들어졌습니다. 규칙은 1분마다 확인하고 1분 분량의 데이터를 검토합니다. 메트릭 경고 규칙이 활성화되는 데 최대 10분이 소요될 수 있습니다.

CLI를 통해 메트릭 경고 만들기

CLI를 사용하여 메트릭 경고를 설정할 수 있습니다. 이 프로세스는 특히 2개 이상의 경고를 설정하려는 경우 포털을 사용하는 것보다 더 빠를 수 있습니다.

Azure Portal에서 설정한 것과 비슷한 새 메트릭 경고를 만들어 보겠습니다.

  1. Cloud Shell에서 다음 명령을 실행하여 이전에 만든 가상 머신의 리소스 ID를 가져옵니다.

    VMID=$(az vm show \
            --resource-group "<rgn>[sandbox resource group name]</rgn>" \
            --name vm1 \
            --query id \
            --output tsv)
    
  2. VM CPU가 80%를 초과할 때 트리거되는 새 메트릭 경고를 만들려면 다음 명령을 실행합니다.

    az monitor metrics alert create \
        -n "Cpu80PercentAlert" \
        --resource-group "<rgn>[sandbox resource group name]</rgn>" \
        --scopes $VMID \
        --condition "max percentage CPU > 80" \
        --description "Virtual machine is running at or greater than 80% CPU utilization" \
        --evaluation-frequency 1m \
        --window-size 1m \
        --severity 3
    

Azure Monitor에서 메트릭 경고 보기

이 예제에서는 Ubuntu VM을 설정하고 CPU에 대한 스트레스를 테스트하도록 구성했습니다. 또한 최대 CPU 사용률이 80% 및 90%를 초과하는 경우를 감지하는 메트릭 규칙도 만들었습니다.

참고 항목

Azure Portal에 경고가 표시되는 데 10분 정도 걸릴 수 있습니다.

  1. Azure Portal로 돌아갑니다.

  2. Azure Portal 메뉴에서 모니터링을 선택한 다음, 왼쪽 메뉴 창에서 경고를 선택합니다.

    이 단계는 경고의 수를 확인할 수 있는 경고 요약 창을 표시합니다. 경고가 나열되지 않으면 몇 분 정도 기다렸다가 새로 고침을 선택합니다.

    경고 요약 창을 보여 주는 스크린샷

  3. 2 및 3의 심각도를 사용하여 메트릭 경고를 구성했습니다. 경고 중 하나를 선택하여 심각도 수준을 확인합니다.

  4. 경고 중 하나를 선택하여 경고 세부 정보를 표시합니다.