다음을 통해 공유


Azure Monitor를 사용하여 가상 머신에서 성능 카운터 수집

성능 카운터는 가상 하드웨어 구성 요소, 운영 체제 및 워크로드의 성능에 대한 인사이트를 제공합니다. Windows 및 Linux 가상 머신 모두에서 Performance Counters 데이터 원본과 함께 데이터 수집 규칙(DCR)을 사용하여 카운터를 수집합니다.

DCR 만들기에 대한 세부 정보는 Azure Monitor를 사용하여 VM 클라이언트에서 데이터 수집에 제공됩니다. 이 문서에서는 성능 카운터 데이터 원본 형식에 대한 추가 세부 정보를 제공합니다.

비고

DCR 정의를 직접 사용하거나 ARM 템플릿과 같은 다른 방법으로 배포하려면 Azure Monitor의 DCR(데이터 수집 규칙) 샘플을 참조하세요.

성능 카운터 데이터 원본 구성

Azure Monitor를 사용하여 가상 머신 클라이언트에서 데이터 수집 프로세스를 사용하여 DCR을 만듭니다. DCR의 수집 및 배달 탭에서 데이터 원본 유형 드롭다운에서 성능 카운터를 선택합니다. 수집할 미리 정의된 개체 집합과 샘플링 속도를 선택합니다. 샘플링 속도가 낮을수록 값이 수집되는 빈도가 높아집니다.

데이터 컬렉션 규칙에서 기본 성과 카운터를 선택하는 Azure Portal 양식을 보여 주는 스크린샷

[사용자 지정]을 선택하여 XPath를 지정하여 기본 선택과 함께 사용할 수 없는 성능 카운터를 수집합니다. 형식 \PerfObject(ParentInstance/ObjectInstance#InstanceIndex)\Counter을 사용합니다.

팁 (조언)

카운터 이름에 앰퍼샌드(&)가 포함되어 있으면 이를 &로 바꿉니다. 예: \Memory\Free & Zero Page List Bytes.

데이터 컬렉션 규칙에서 사용자 지정 성과 카운터를 선택하는 Azure Portal 양식을 보여 주는 스크린샷

경고

Windows 및 Linux 컴퓨터와 연결된 DCR에 대한 카운터를 수동으로 정의할 때는 일부 Windows 및 Linux 스타일 카운터 이름이 동일한 메트릭으로 확인되어 중복 수집이 발생할 수 있으므로 주의해야 합니다. 예를 들어, 동일한 DCR에서 \LogicalDisk(*)\Disk Transfers/sec (Windows)와 Logical Disk(*)\Disk Transfers/sec (Linux)를 모두 설정하면 샘플링 기간당 디스크 전송 메트릭이 두 번 수집됩니다.

플랫폼 유형을 지정하지 않는 DCR에서 성능 카운터를 수집하지 않으면 이 동작을 방지할 수 있습니다. Windows 카운터는 Windows 컴퓨터와 연결된 DCR에만 포함되고 Linux 카운터는 Linux 머신과 연결된 DCR에만 포함되어 있는지 확인합니다.

비고

Microsoft.HybridCompute(Azure Arc 지원 서버) 리소스는 현재 메트릭 탐색기에서 볼 수 없지만 메트릭 REST API(메트릭 네임스페이스 - 목록, 메트릭 정의 - 목록 및 메트릭 - 목록)를 통해 메트릭 데이터를 가져올 수 있습니다.

대상 추가

성능 카운터는 성능 테이블 및/또는 메트릭 탐색기에서 사용할 수 있는 Azure Monitor 메트릭(미리 보기)에 저장된 Log Analytics 작업 영역으로 보낼 수 있습니다. Azure Monitor 로그 유형의 대상을 추가하고 Log Analytics 작업 영역을 선택합니다. 여러 작업 영역을 추가할 수 있지만 중복 데이터가 각각에 전송되므로 추가 비용이 발생합니다. 모니터링되는 리소스의 구독 수준에 저장되므로 Azure Monitor 메트릭(미리 보기) 에 대한 자세한 내용은 필요하지 않습니다.

비고

Linux의 경우 Azure Monitor 메트릭을 유일한 대상으로 사용하는 것이 v1.10.9.0 이상에서 지원됩니다.

데이터 수집 규칙의 Azure Monitor 로그 대상 구성을 보여주는 스크린샷.

데이터 수집 확인

Log Analytics 작업 영역에서 데이터가 수집되고 있는지 확인하려면 Perf 테이블에서 레코드를 확인합니다. 가상 머신 또는 Azure Portal의 Log Analytics 작업 영역에서 로그를 선택한 다음 테이블 단추를 클릭합니다. 가상 머신 범주에서 Perf 옆에 있는 실행을 클릭합니다.

Perf 테이블에서 반환된 레코드를 보여 주는 스크린샷

Azure Monitor 메트릭에서 데이터가 수집되고 있는지 확인하려면 Azure Portal의 가상 머신에서 메트릭 을 선택합니다. 네임스페이스에 대한 Virtual Machine 게스트 (Windows) 또는 azure.vm.linux.guestmetrics 를 선택한 다음, 보기에 추가할 메트릭을 선택합니다.

메트릭 탐색기의 클라이언트 메트릭을 보여 주는 스크린샷

성능 계수기

Windows 및 Linux 가상 머신용 Azure Monitor 에이전트에서 수집할 수 있는 성능 카운터는 다음과 같습니다. 데이터 수집 규칙을 만들거나 업데이트할 때 샘플 빈도를 변경할 수 있습니다.

Windows 성능 카운터

성능 카운터 카테고리 기본 샘플 빈도
\프로세서 정보(_Total)\% 프로세서 시간 CPU (중앙 처리 장치) 60 (육십)
\프로세서 정보(_Total)\% 특권 시간 CPU (중앙 처리 장치) 60 (육십)
\프로세서 정보(_전체)\% 사용자 시간 CPU (중앙 처리 장치) 60 (육십)
\프로세서 정보(_Total)\프로세서 주파수 CPU (중앙 처리 장치) 60 (육십)
\시스템\프로세스 CPU (중앙 처리 장치) 60 (육십)
\Process(_Total)\스레드 개수 CPU (중앙 처리 장치) 60 (육십)
\Process(_Total)\Handle Count CPU (중앙 처리 장치) 60 (육십)
\System\시스템 가동 시간 CPU (중앙 처리 장치) 60 (육십)
\System\Context Switches/sec CPU (중앙 처리 장치) 60 (육십)
\시스템\프로세서 대기열 길이 CPU (중앙 처리 장치) 60 (육십)
\Memory\% 할당된 바이트 사용량 메모리 60 (육십)
\메모리\사용 가능 바이트 메모리 60 (육십)
\메모리\할당된 바이트 메모리 60 (육십)
\메모리\캐시 바이트 메모리 60 (육십)
\Memory\풀 페이지드 바이트 메모리 60 (육십)
\메모리\풀 비페이징 바이트 메모리 60 (육십)
\메모리\페이지/초 메모리 60 (육십)
\메모리\페이지 폴트/초 메모리 60 (육십)
\Process(_Total)\Working Set 메모리 60 (육십)
\프로세스(_전체)\워크 세트 - 프라이빗 메모리 60 (육십)
\LogicalDisk(_Total)\% 디스크 시간 디스크 60 (육십)
\LogicalDisk(_Total)\% 디스크 읽기 시간 디스크 60 (육십)
\LogicalDisk(_Total)\% 디스크 쓰기 시간 디스크 60 (육십)
\LogicalDisk(_Total)\% 유휴 시간 디스크 60 (육십)
\LogicalDisk(_Total)\디스크 바이트/초 디스크 60 (육십)
\LogicalDisk(_Total)\디스크 읽기 바이트/초 디스크 60 (육십)
\논리 디스크(_Total)\디스크 쓰기 바이트/초 디스크 60 (육십)
\LogicalDisk(_Total)\디스크 전송/초 디스크 60 (육십)
\LogicalDisk(_Total)\Disk Reads/sec 디스크 60 (육십)
\LogicalDisk(_Total)\Disk Writes/sec 디스크 60 (육십)
\LogicalDisk(_Total)\Avg. 디스크 초/전송 디스크 60 (육십)
\LogicalDisk(_Total)\Avg. 디스크 초/읽기 디스크 60 (육십)
\LogicalDisk(_Total)\Avg. 디스크 초/쓰기 디스크 60 (육십)
\LogicalDisk(_Total)\평균 디스크 대기열 길이 디스크 60 (육십)
\LogicalDisk(_Total)\평균 디스크 읽기 큐 길이 디스크 60 (육십)
\LogicalDisk(_Total)\평균 디스크 쓰기 대기열 길이 디스크 60 (육십)
\LogicalDisk(_Total)\% 사용 가능한 공간 디스크 60 (육십)
\LogicalDisk(_Total)\사용 가능 메가바이트 디스크 60 (육십)
\네트워크 인터페이스(*) \총 바이트/초 네트워크 60 (육십)
\네트워크 인터페이스(*) \보낸 바이트/초 네트워크 60 (육십)
\네트워크 인터페이스(*) \받은 바이트/초 네트워크 60 (육십)
\네트워크 인터페이스(*) \패킷/초 네트워크 60 (육십)
\네트워크 인터페이스(*) \전송된 패킷/초 네트워크 60 (육십)
\네트워크 인터페이스(*) \수신된 패킷/초 네트워크 60 (육십)
\Network Interface(*) \패킷 전송 오류 네트워크 60 (육십)
\Network Interface(*) \Packets Received Errors (수신된 패킷 오류) 네트워크 60 (육십)

다음 단계