에이전트

Zabbix v7.4번역일: 2026-09-09원본 보기

개요

Zabbix 에이전트는 모니터링 대상에 배포되어 로컬 리소스와 애플리케이션(하드 드라이브, 메모리, 프로세서 통계 등)을 능동적으로 모니터링합니다.

에이전트는 로컬에서 운영 정보를 수집하고 추가 처리를 위해 Zabbix 서버에 데이터를 보고합니다. 장애(예: 하드 디스크 공간 부족이나 서비스 프로세스 중단)가 발생하면 Zabbix 서버는 장애를 보고한 시스템의 관리자에게 즉시 알림을 보낼 수 있습니다.

Zabbix 에이전트는 통계 정보를 수집할 때 네이티브 시스템 호출을 사용하므로 매우 효율적입니다.

하나의 호스트에서 에이전트 인스턴스를 여러 개 실행할 수 있습니다.

패시브 및 액티브 검사

Zabbix 에이전트는 패시브 검사와 액티브 검사를 수행할 수 있습니다.

  • 패시브 검사 - Zabbix 에이전트가 Zabbix 서버(또는 프록시)의 요청에 응답합니다. 예를 들어 서버가 데이터(예: CPU 부하)를 요청하면 에이전트가 결과를 반환합니다.
  • 액티브 검사 - Zabbix 에이전트가 Zabbix 서버(또는 프록시)의 요청을 기다리지 않고 데이터를 수집하여 전송합니다. 먼저 서버에서 모니터링 항목 목록(CPU 부하, 사용 가능한 메모리 등)을 가져온 다음 필요한 데이터를 수집하고 새 값을 주기적으로 서버에 전송합니다.

에이전트 검사 유형은 해당 모니터링 아이템 유형을 선택하여 설정합니다. Zabbix 에이전트가 처리하는 아이템 유형은 다음과 같습니다: Zabbix 에이전트 또는 Zabbix 에이전트(액티브).

지원 플랫폼

지원 플랫폼은 다음 페이지를 참조하세요: 요구 사항.

Unix 계열 시스템의 에이전트

Unix 계열 시스템의 Zabbix 에이전트는 모니터링 대상 호스트에서 실행됩니다.

설치

Linux 기반 시스템에서는 다음 방법 중 하나로 Zabbix 에이전트를 설치할 수 있습니다.

  • Zabbix 패키지 - Zabbix 버전, OS 배포판 및 OS 버전을 선택한 후 에이전트 구성 요소를 선택하고 제공된 지침을 따릅니다.
  • Zabbix 소스 - 소스 파일을 다운로드하고 Zabbix 에이전트를 컴파일합니다. 소스 구성 시 사용할 옵션: --enable-agent.

일반적으로 32비트 Zabbix 에이전트는 64비트 시스템에서 작동하지만, 경우에 따라 실패할 수 있습니다.

미리 컴파일된 Zabbix 에이전트 바이너리를 다운로드할 수 있는 플랫폼은 macOS, IBM AIX, FreeBSD, OpenBSD 및 Solaris입니다. 현재 Zabbix 서버/프록시 버전과 호환되는 레거시 바이너리가 제공되는 플랫폼은 NetBSD 및 HP-UX입니다.

패키지로 설치한 경우

Zabbix 에이전트는 데몬 프로세스로 실행됩니다. 다음 명령을 실행하여 에이전트를 시작할 수 있습니다.

systemctl start zabbix-agent

이 명령은 대부분의 GNU/Linux 시스템에서 작동합니다. 다른 시스템에서는 다음 명령을 실행해야 할 수 있습니다.

/etc/init.d/zabbix-agent start

Zabbix 에이전트를 중지하거나 다시 시작하거나 상태를 확인하려면 다음 명령을 사용하세요.

systemctl stop zabbix-agent
systemctl restart zabbix-agent
systemctl status zabbix-agent
수동 시작

Zabbix 에이전트를 시작하려면 zabbix_agentd 바이너리를 찾아 직접 실행하면 됩니다. 예:

zabbix_agentd

Windows 시스템의 에이전트

Windows의 Zabbix 에이전트는 Windows 서비스로 실행됩니다.

설치

Windows에서는 다음 방법 중 하나로 Zabbix 에이전트를 설치할 수 있습니다.

다음 Microsoft Windows의 Zabbix 에이전트 페이지에서 ZIP 아카이브를 사용하여 Zabbix 에이전트를 Windows 서비스로 설치하는 방법을 자세히 확인할 수 있습니다.

옵션

Zabbix 에이전트에서 사용할 수 있는 명령줄 매개변수는 다음과 같습니다.

매개변수 설명
UNIX 및 Windows 에이전트 <
-c --config <config-file> 다음 파일의 경로: 설정 파일.
이 옵션을 사용하여 기본 설정 파일이 아닌 다른 설정 파일을 지정할 수 있습니다.
-f --foreground Zabbix 에이전트를 포그라운드에서 실행합니다(기본값: true).
-p --print 알려진 아이템을 출력하고 종료합니다.
사용자 매개변수 결과도 반환하려면 설정 파일을 지정해야 합니다(기본 위치에 없는 경우).
-t --test <item key> 지정한 아이템을 테스트하고 종료합니다.
사용자 매개변수 결과도 반환하려면 설정 파일을 지정해야 합니다(기본 위치에 없는 경우).
-T --test-config 설정 파일의 유효성을 검사하고 종료합니다.
-h --help 도움말 정보를 표시합니다.
-V --version 버전 번호를 표시합니다.
UNIX 에이전트 전용 <
-R --runtime-control <option> 관리 기능을 수행합니다. 참조: 런타임 제어.
Windows 에이전트 전용 <
-m --multiple-agents 여러 에이전트 인스턴스를 사용합니다(함께 사용할 옵션: -i, -d, -s, -x).
인스턴스의 서비스 이름을 구분하기 위해 각 서비스 이름에 지정된 설정 파일의 Hostname 값이 포함됩니다.
-S --startup-type <value> Zabbix Windows 에이전트 서비스의 시작 유형을 설정합니다. 허용되는 값:
automatic - (기본값) Windows 시작 시 서비스를 자동으로 시작합니다.
delayed - 자동으로 시작되는 서비스가 모두 시작된 후 이 서비스를 지연 시작합니다(Windows Server 2008/Vista 이상에서 사용 가능).
manual - 사용자 또는 애플리케이션이 서비스를 수동으로 시작합니다.
disabled - 서비스를 비활성화하여 사용자나 애플리케이션이 시작할 수 없게 합니다.
이 옵션은 -i 옵션과 함께 사용하거나, 별도로 사용하여 이미 설치된 서비스의 시작 유형을 변경할 수 있습니다.
-i --install Zabbix Windows 에이전트를 서비스로 설치합니다.
-d --uninstall Zabbix Windows 에이전트 서비스를 제거합니다.
-s --start Zabbix Windows 에이전트 서비스를 시작합니다.
-x --stop Zabbix Windows 에이전트 서비스를 중지합니다.

명령줄 매개변수의 구체적인 사용 예:

  • 모든 내장 에이전트 아이템과 해당 값을 출력합니다.
  • 지정한 설정 파일에 정의된 mysql.ping 키의 사용자 매개변수를 테스트합니다.
  • 기본 설정 파일 경로를 사용하여 Windows용 Zabbix Agent 서비스를 설치합니다: C:\\Program Files\\Zabbix Agent\\zabbix_agentd.conf.
  • Windows용 Zabbix Agent [Hostname] 서비스를 설치할 때 사용하는 설정 파일은 zabbix_agentd.conf이며, 에이전트 실행 파일과 같은 폴더에 있습니다. 설정 파일의 Hostname 값을 서비스 이름에 추가하여 이름을 고유하게 만듭니다.
  • 설치된 Windows용 Zabbix Agent 서비스의 시작 유형을 변경할 때 사용하는 설정 파일은 zabbix_agentd.conf이며, 에이전트 실행 파일과 같은 폴더에 있습니다.
zabbix_agentd --print
zabbix_agentd -t "mysql.ping" -c /etc/zabbix/zabbix_agentd.conf
zabbix_agentd.exe -i
zabbix_agentd.exe -i -m -c zabbix_agentd.conf
zabbix_agentd.exe -c zabbix_agentd.conf -S delayed
런타임 제어

런타임 제어 옵션으로 에이전트 프로세스의 로그 수준을 변경할 수 있습니다.

옵션 설명 대상
log_level_increase[=<target>] 로그 수준을 높입니다.
대상을 지정하지 않으면 모든 프로세스에 적용됩니다.
대상은 다음과 같이 지정할 수 있습니다.
process type - 지정한 유형의 모든 프로세스(예: listener)
전체 목록 참조: 에이전트 프로세스 유형.
process type,N - 프로세스 유형과 번호(예: listener,3)
pid - 프로세스 식별자(1 ~ 65535). 더 큰 값은 대상을 'process type,N' 형식으로 지정하세요.
log_level_decrease[=<target>] 로그 수준을 낮춥니다.
대상을 지정하지 않으면 모든 프로세스에 적용됩니다.
^
userparameter_reload 현재 설정 파일에서 UserParameter 및 Include 옵션의 값을 다시 불러옵니다.

예:

  • 모든 프로세스의 로그 수준 높이기
  • 세 번째 listener 프로세스의 로그 수준 높이기
  • PID가 1234인 프로세스의 로그 수준 높이기
  • 모든 액티브 검사 프로세스의 로그 수준 낮추기
zabbix_agentd -R log_level_increase
zabbix_agentd -R log_level_increase=listener,3
zabbix_agentd -R log_level_increase=1234
zabbix_agentd -R log_level_decrease="active checks"

OpenBSD, NetBSD 및 Windows에서는 런타임 제어를 지원하지 않습니다.

에이전트 프로세스 유형

에이전트 프로세스 유형은 다음과 같습니다.

  • active checks - 액티브 검사를 수행하는 프로세스
  • collector - 데이터를 수집하는 프로세스
  • listener - 패시브 검사 요청을 수신하는 프로세스

에이전트 로그 파일에서 이러한 프로세스 유형을 확인할 수 있습니다.

Zabbix 7.4.6부터 에이전트 로그 파일은 파일 소유자에게만 읽기 및 쓰기 권한을 부여하여 생성됩니다. 또한 소유 그룹에는 파일 읽기 권한이 부여됩니다. 그 외의 모든 권한은 거부됩니다.

프로세스 사용자

UNIX의 Zabbix 에이전트는 root가 아닌 사용자로 실행되도록 설계되었습니다. root가 아닌 사용자가 시작하면 해당 사용자로 실행됩니다. 따라서 root가 아닌 어떤 사용자로든 문제없이 에이전트를 실행할 수 있습니다.

'root'로 실행하려고 하면 하드코딩된 'zabbix' 사용자로 전환되며, 이 사용자는 시스템에 존재해야 합니다. 에이전트를 'root'로 실행하려면 에이전트 설정 파일에서 AllowRoot 매개변수를 그에 맞게 수정해야 합니다.

설정 파일

설정 파일의 기본 경로는 운영 체제와 Zabbix 설치 방법에 따라 다릅니다.

  • UNIX의 기본 경로:
    • 소스로 설치한 경우: /usr/local/etc/zabbix_agentd.conf 또는 다음 시점에 설정한 경로: 컴파일 시 설정): --sysconfdir 또는 --prefix.
    • 패키지로 설치한 경우: /etc/zabbix/zabbix_agentd.conf.
  • Windows의 기본 경로: C:\Program Files\Zabbix Agent\zabbix_agentd.conf.

호스트에서 에이전트 인스턴스를 하나만 실행하는 경우, 기본 설정 파일이나 다음 위치에서 지정한 설정 파일을 사용할 수 있습니다: 명령줄. 여러 인스턴스를 실행하는 경우 각 에이전트 인스턴스에 자체 설정 파일이 있어야 합니다(인스턴스 하나는 기본 설정 파일을 사용할 수 있습니다).

Zabbix 에이전트 설정에 대한 자세한 내용은 다음 에이전트의 설정 파일 옵션을 참조하세요: Unix Zabbix 에이전트 또는 Windows Zabbix 에이전트.

로캘

일부 텍스트 기반 에이전트 아이템이 예상한 내용을 반환하려면 에이전트에 UTF-8 로캘이 필요합니다. 대부분의 최신 Unix 계열 시스템은 UTF-8 로캘을 기본으로 사용하지만, 일부 시스템에서는 별도로 설정해야 할 수 있습니다.

종료 코드

Zabbix 에이전트가 정상적으로 종료되면 0을 반환하고, 실패하면 1을 반환합니다.