중요한 성능 메트릭 설명
Azure Monitor 및 Windows Performance Monitor 둘 다에서 데이터 수집 방법을 알아보았습니다. 이제 Azure Monitor에서 경고를 트리거하거나 자동화된 오류 응답을 실행할 수 있는 메트릭을 만드는 방법을 알아봅니다.
Azure 메트릭 검토
Azure Monitor 서비스에는 지정된 리소스의 전체 상태에 대한 다양한 메트릭을 추적하는 기능이 포함되어 있습니다. 메트릭은 정기적으로 수집되며 문제를 신속하고 효율적으로 해결하는 데 도움이 되는 경고 프로세스의 게이트웨이입니다. Azure Monitor Metrics는 성능 데이터를 분석하고 시각화할 뿐만 아니라, Azure Automation runbook 또는 웹후크를 트리거할 수 있는 자동화된 작업 또는 관리자에게 알리는 경고를 트리거하는 데 사용할 수 있는 강력한 하위 시스템입니다. 활성 데이터는 93일 동안만 저장되므로 Azure Storage에 Azure Metrics 데이터를 보관하는 옵션도 있습니다.
메트릭 경고 만들기
Azure Portal을 활용하면 Azure Monitor 블레이드의 개요 섹션에서 정의된 메트릭을 기반으로 경고 규칙을 만들 수 있습니다. Azure Monitor Alerts는 세 가지 방법으로 범위를 지정할 수 있습니다. 예를 들어 Azure Virtual Machines를 예로 사용하여 다음과 같이 범위를 지정할 수 있습니다.
구독 내 한 Azure 지역에 있는 가상 머신 목록
구독 내 하나 이상의 리소스 그룹에 있는 모든 가상 머신(한 Azure 지역에 있음)
구독의 모든 가상 머신(한 Azure 지역에 있음)
이 방식으로 표시된 대로 리소스 그룹에 포함된 리소스를 기반으로 경고 규칙을 만들 수 있습니다.
아래 표시된 예제는 개별 가상 머신의 범위에 있는 경고를 만드는 SQL2019라는 가상 머신을 반영합니다.
경고 범위에 관계없이 생성 프로세스는 동일합니다.
경고 화면에서 새 경고 규칙을 클릭합니다. 리소스의 범위 내에서 경고를 만드는 경우 리소스 값이 자동으로 입력되어야 합니다. 리소스가 SQL2019 가상 머신이고 구독이 Dev-Test-Lab이며 리소스가 상주하는 리소스 그룹이 SQLPlayground임을 알 수 있습니다.
조건 섹션에서 추가를 클릭합니다.
경고를 표시하려는 메트릭을 선택합니다. 다음 이미지는 CPU 백분율을 보여 줍니다. 이 메트릭은 선택된 것으로 표시됩니다.
경고는 정적 방식(예 : CPU가 95%를 초과하면 경고 발생)으로 구성하거나 동적 임계값을 사용하여 동적으로 구성할 수 있습니다. 동적 임계값은 메트릭의 동작 기록을 학습하고 리소스가 비정상적인 방식으로 작동할 때 경고를 발생시킵니다. 이 동적 임계값은 워크로드에서 계절성을 검색하고 적절하게 경고를 조정할 수 있습니다.
정적 경고를 사용하는 경우 선택한 메트릭의 임계값을 제공해야 합니다. 이 예에서는 80%가 지정되었습니다. 이 임계값은 특정 기간 동안 CPU 사용률이 80퍼센트를 초과하는 경우 지정된 대로 경고가 발생하고 반응합니다.
두 가지 경고 유형 모두 ‘보다 큼’ 또는 ‘보다 작음’ 연산자와 같은 부울 연산자를 제공합니다. 부울 연산자와 함께 평균, 최솟값, 최댓값, 개수, 평균 및 합계와 같이 선택할 수 있는 집계 측정값이 있습니다. 이 옵션을 사용하면 거의 모든 엔터프라이즈 수준의 경고에 적합한 유연한 경고를 쉽게 구성할 수 있습니다.
경고를 생성된 다음 관리자에게 알리거나 자동화 프로세스를 시작하려면 작업 그룹을 구성해야 합니다.
참고
작업 그룹 정의는 선택 사항입니다. 구성되지 않은 경우 경고는 추가 작업을 수행하지 않고 알림을 스토리지에 로그합니다. 작업 그룹 옆의 추가를 클릭하여 메트릭 화면에서 새 작업 그룹을 만들 수 있습니다. 그러면 다음과 같은 대화가 표시됩니다.
작업 그룹 생성를 클릭하면 아래와 같은 화면이 표시됩니다. 작업 그룹의 이름을 지정하고 경고 및 응답을 정의합니다. 이 예에서는 경고의 조건이 트리거될 때 관리자에게 메일을 보냅니다.
아래에 표시된 대로 메일 또는 SMS 세부 정보를 구성할 수 있습니다. 구성에서 세부 정보 편집을 클릭하거나 새 작업을 추가하여 구성 화면을 표시하는 방법으로 이 화면에 연결할 수 있습니다.
작업 그룹을 사용하면 여러 가지 방법으로 경고에 대응할 수 있습니다. 수행할 작업을 정의하는 데 사용할 수 있는 옵션은 다음과 같습니다.
- Automation Runbook
- Azure Function
- Azure Resource Manager 역할에 메일 보내기
- 이메일/SMS/푸시/음성
- ITSM
- Azure Logic App
- 보안 웹후크
- 웹후크
이 작업에는 두 가지 범주가 있습니다. 즉, 관리자 또는 관리자 그룹에 이벤트를 알리는 것을 의미하는 알림과 성능 조건에 대응하기 위해 정의된 작업을 수행하는 자동화입니다.
이전 성능 데이터 검토
Azure Monitor를 활용하는 이점 중 하나는 수집된 과거 메트릭을 쉽고 빠르게 검토할 수 있는 기능입니다. 리소스를 검사하는 경우 오른쪽 위 구석에 날짜/시간 선택이 표시되는 것을 알 수 있습니다. Azure Monitor Metrics는 93일 동안 유지되며 그 이후에는 제거되지만, Azure Storage에 보관하는 옵션이 있습니다.
예를 들어 지난 30분, 지난 1시간, 지난 4시간 또는 지난 12시간과 같은 더 짧은 기간도 선택할 수 있습니다. Azure 모니터의 유연성을 통해 관리자는 문제를 빠르게 파악하고 과거 문제도 진단할 수 있습니다.
중요한 SQL Server 메트릭
Microsoft SQL Server는 많은 성능 메타데이터를 수집하는 제대로 구성된 소프트웨어입니다. 데이터베이스 엔진에는 성능 관련 문제를 식별하고 개선하는 데 도움이 되도록 모니터링할 수 있는 메트릭이 있습니다. 일부 운영 체제 메트릭은 성능 모니터에서만 볼 수 있으며 다른 메트릭은 DMV(동적 관리 뷰)에서 선택하여 T-SQL 쿼리를 통해 액세스할 수 있습니다. 일부 메트릭은 두 위치 모두에 공개되므로 특정 메트릭을 식별할 위치를 아는 것이 중요합니다. DMV에서만 캡처할 수 있는 데이터의 한 가지 예는 sys.dm_os_volume_stats
에 공개된 데이터 및 트랜잭션 로그 파일 읽기/쓰기 대기 시간입니다. 반면 SQL Server를 통해 직접 사용할 수 없는 OS 메트릭의 예는 디스크 볼륨에 대한 디스크 읽기 및 쓰기당 시간(초)입니다. 이 두 메트릭을 결합하면 성능 문제가 데이터베이스 구조와 관련이 있는지 아니면 물리적 스토리지 병목 상태와 관련이 있는지 파악하는 데 도움이 됩니다.