Azure Monitor의 에이전트 상태 솔루션

Azure의 에이전트 상태 솔루션은 어떤 모니터링 에이전트가 응답하지 않고 운영 데이터를 제출하는지를 이해하는 데 도움이 됩니다. 여기에는 Azure Monitor의 Log Analytics 작업 영역 또는 Azure Monitor에 연결된 System Center Operations Manager 관리 그룹에 직접 보고하는 모든 에이전트가 포함됩니다.

에이전트 상태 솔루션을 사용하여 다음을 수행할 수도 있습니다.

  • 배포되는 에이전트 수와 지리적으로 배포되는 위치를 추적합니다.
  • Azure, 기타 클라우드 환경 또는 온-프레미스에 배포된 에이전트의 분산 상태를 파악하기 위해 다른 쿼리를 수행합니다.

Important

에이전트 상태 솔루션은 사용 중단 경로에 있는 Log Analytics 에이전트의 상태만 모니터링합니다. 이 솔루션은 Azure Monitor 에이전트의 상태를 모니터링하지 않습니다.

필수 조건

이 솔루션을 배포하기 전에 Windows 에이전트가 Log Analytic 작업 영역 또는 작업 영역에 통합된 Operations Manager 관리 그룹에 보고하도록 지원했는지 확인합니다.

관리 팩

Operations Manager 관리 그룹이 Log Analytics 작업 영역에 연결되면 다음 관리 팩이 Operations Manager에 설치됩니다. 이 솔루션을 추가한 후 직접 연결된 Windows 컴퓨터에 이러한 관리 팩도 함께 설치됩니다.

  • Microsoft System Center Advisor 상태 평가 직접 채널 인텔리전스 팩(Microsoft.IntelligencePacks.HealthAssessmentDirect)
  • Microsoft System Center Advisor 상태 평가 서버 채널 인텔리전스 팩(Microsoft.IntelligencePacks.HealthAssessmentViaServer).

이러한 관리 팩과 관련하여 아무 것도 구성하거나 관리할 필요가 없습니다. 솔루션 관리 팩이 업데이트되는 방법에 대한 자세한 내용은 Log Analytics에 Operations Manager 연결을 참조하세요.

구성

솔루션 추가에 설명된 프로세스를 사용하여 에이전트 상태 솔루션을 Log Analytics 작업 영역에 추가합니다. 추가 구성은 필요하지 않습니다.

지원되는 에이전트

다음 표에서는 솔루션이 지원하는 연결된 원본을 설명합니다.

연결된 원본 지원됨 설명
Windows 에이전트 하트비트 이벤트는 Windows 에이전트에서 직접 수집됩니다.
System Center Operations Manager 관리 그룹 하트비트 이벤트는 60초마다 관리 그룹에 보고하는 에이전트로부터 수집된 다음, Azure Monitor에 전달됩니다. Operations Manager 에이전트에서 Azure Monitor로의 직접 연결은 필요하지 않습니다. 하트비트 이벤트 데이터는 관리 그룹에서 Log Analytics 작업 영역으로 전달됩니다.

솔루션 사용

솔루션을 Log Analytics 작업 영역에 추가하면 대시보드에 에이전트 상태 타일이 추가됩니다. 이 타일은 총 에이전트 수와 지난 24시간 동안 응답하지 않는 에이전트의 수를 표시합니다.

Screenshot that shows the Agent Health tile on the dashboard.

에이전트 상태 타일을 선택하여 에이전트 상태 대시보드를 엽니다. 대시보드는 다음 표의 열을 포함하고 있습니다. 각 열은 지정된 시간 범위에 대한 열의 기준과 일치하는 카운트별로 상위 10개의 이벤트를 나열합니다. 전체 목록을 제공하는 로그 검색을 실행할 수 있습니다. 각 열 아래에서 모두 보기를 선택하거나 열 제목을 선택합니다.

설명
시간에 따른 에이전트 수 Linux 및 Windows 에이전트에 대해 7일 동안의 에이전트 수의 추세입니다.
응답하지 않는 에이전트 개수 지난 24시간 동안 하트비트를 보내지 않은 에이전트의 목록입니다.
OS 형식별 배포 사용자 환경에 있는 Windows 및 Linux 에이전트 개수에 따른 분할입니다.
에이전트 버전별 배포 사용자 환경에 설치된 에이전트 버전의 분할과 그 개수입니다.
에이전트 범주별 배포 직접 에이전트, Operations Manager 에이전트 또는 Operations Manager 관리 서버 등 하트비트 이벤트를 전송하는 에이전트 범주의 분할입니다.
관리 그룹별 배포 현재 환경의 Operations Manager 관리 그룹의 파티션입니다.
에이전트의 지리적 위치 에이전트가 있는 국가/지역과 각 국가/지역에 설치된 총 에이전트 수의 파티션입니다.
설치된 게이트웨이 개수 Log Analytics 게이트웨이가 설치되어 있는 서버 수 및 해당 서버의 목록입니다.

Screenshot that shows an example of the Agent Health solution dashboard.

Azure Monitor 로그 레코드

솔루션은 Log Analytics 작업 영역에서 하나의 레코드 형식(하트비트)을 만듭니다. 하트비트 레코드에는 다음 표에 나열된 속성이 있습니다.

속성 설명
Type Heartbeat
Category Direct Agent, SCOM Agent 또는 SCOM Management Server
Computer 컴퓨터 이름
OSType Windows 또는 Linux 운영 체제입니다.
OSMajorVersion 운영 체제의 주 버전입니다.
OSMinorVersion 운영 체제의 부 버전입니다.
Version Log Analytics 에이전트 또는 Operations Manager 에이전트 버전입니다.
SCAgentChannel Direct 및/또는 SCManagementServer
IsGatewayInstalled Log Analytics 게이트웨이가 설치된 경우 true, 그렇지 않은 경우 false
ComputerIP Azure 가상 머신에 대한 공용 IP 주소(사용 가능한 경우), 개인 IP를 사용하는 가상 머신의 Azure SNAT 주소(개인 IP 주소 아님)
ComputerPrivateIPs 컴퓨터의 개인 IP 목록입니다.
RemoteIPCountry 컴퓨터가 배포된 지리적 위치입니다.
ManagementGroupName Operations Manager 관리 그룹의 이름
SourceComputerId 컴퓨터의 고유 ID입니다.
RemoteIPLongitude 컴퓨터 지리적 위치의 경도입니다.
RemoteIPLatitude 컴퓨터 지리적 위치의 위도입니다.

Operations Manager 관리 서버에 보고하는 각 에이전트는 두 개의 하트비트를 보냅니다. 구독에서 어떤 데이터 원본 및 모니터링 솔루션을 사용하도록 설정했는지에 따라 SCAgentChannel 속성 값에 DirectSCManagementServer가 모두 포함됩니다.

회수하는 경우 솔루션의 데이터가 다음 방법 중 하나로 전송됩니다.

  • Operations Manager 관리 서버에서 Azure Monitor로 직접.
  • 에이전트에서 수집된 데이터의 볼륨으로 인해 에이전트에서 Azure Monitor로 직접.

SCManagementServer 값이 있는 하트비트 이벤트의 경우, 관리 서버가 실제로 데이터를 업로드하기 때문에 ComputerIP 값은 관리 서버의 IP 주소가 됩니다. SCAgentChannelDirect로 설정된 하트비트의 경우 이 값은 에이전트의 공용 IP 주소가 됩니다.

샘플 로그 검색

다음 테이블은 이 솔루션이 수집하는 레코드에 대한 샘플 로그 검색을 제공합니다.

쿼리 설명
Heartbeat | distinct Computer 에이전트의 총수
Heartbeat | summarize LastCall = max(TimeGenerated) by Computer | where LastCall < ago(24h) 최근 24시간 동안 응답하지 않은 에이전트 수
Heartbeat | summarize LastCall = max(TimeGenerated) by Computer | where LastCall < ago(15m) 지난 15분 동안 응답하지 않는 에이전트 개수
Heartbeat | where TimeGenerated > ago(24h) and Computer in ((Heartbeat | where TimeGenerated > ago(24h) | distinct Computer)) | summarize LastCall = max(TimeGenerated) by Computer 컴퓨터 온라인(지난 24시간)
Heartbeat | where TimeGenerated > ago(24h) and Computer !in ((Heartbeat | where TimeGenerated > ago(30m) | distinct Computer)) | summarize LastCall = max(TimeGenerated) by Computer 지난 30분 동안 오프라인 상태인 총 에이전트(지난 24시간 동안)
Heartbeat | summarize AggregatedValue = dcount(Computer) by OSType OS 유형별 시간에 따른 에이전트 수의 추세
Heartbeat | summarize AggregatedValue = dcount(Computer) by OSType OS 형식별 배포
Heartbeat | summarize AggregatedValue = dcount(Computer) by Version 에이전트 버전별 배포
Heartbeat | summarize AggregatedValue = count() by Category 에이전트 범주별 배포
Heartbeat | summarize AggregatedValue = dcount(Computer) by ManagementGroupName 관리 그룹별 배포
Heartbeat | summarize AggregatedValue = dcount(Computer) by RemoteIPCountry 에이전트의 지리적 위치
Heartbeat | where iff(isnotnull(toint(IsGatewayInstalled)), IsGatewayInstalled == true, IsGatewayInstalled == "true") == true | distinct Computer 설치된 Log Analytics 게이트웨이 수

다음 단계

Azure Monitor의 로그 쿼리에서 경고를 생성하는 방법을 알아보세요.