에이전트 2

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

개요

Zabbix 에이전트 2는 Zabbix 에이전트의 차세대 버전으로, Go로 작성되었습니다(Zabbix 에이전트의 일부 C 코드 재사용). 다음과 같은 목적으로 설계되었습니다:

  • TCP 연결 수 감소;
  • 향상된 검사 동시성 제공;
  • 최소한의 코드로 간단한 검사를 제공하고, 장시간 실행되는 스크립트와 주기적 보고를 수반하는 독립적인 데이터 수집으로 구성된 복잡한 검사를 지원하는 플러그인을 통해 손쉽게 확장;
  • 기존의 모든 기능을 지원하여 Zabbix 에이전트를 대체.

Zabbix 에이전트 2가 지원하는 모든 메트릭은 플러그인을 통해 수집됩니다.

수동 및 능동 검사

Zabbix 에이전트 2는 Zabbix 에이전트와 마찬가지로 수동 및 능동 검사를 지원합니다. 또한 Zabbix 에이전트 2의 능동 검사는 유연한 간격/예약 간격과 단일 능동 서버 내의 검사 동시성을 지원합니다.

기본적으로 Zabbix 에이전트 2는 재시작 후 리소스 사용량이 급증하지 않도록 아이템의 갱신 간격 내에서 조건에 따라 임의의 시각에 능동 검사의 첫 데이터 수집을 예약합니다. 예약 방식의 갱신 간격이 없는 능동 검사를 에이전트 재시작 직후 수행하려면 ForceActiveChecksOnStart 매개변수(전역 수준) 또는 Plugins.<Plugin name>.System.ForceActiveChecksOnStart 매개변수(특정 플러그인의 검사에만 적용)를 설정 파일에 설정하세요. 플러그인 수준의 매개변수가 설정되어 있으면 전역 매개변수보다 우선합니다.

검사 동시성

서로 다른 플러그인의 검사는 동시에 실행할 수 있습니다. 하나의 플러그인 내에서 동시에 실행할 수 있는 검사 수는 해당 플러그인의 용량 설정으로 제한됩니다. 각 플러그인에는 하드코딩된 용량 설정(기본값: 1000)이 있을 수 있으며, 이 값은 Plugins.<PluginName>.System.Capacity=N 설정을 사용하여 줄일 수 있습니다. 이 설정은 Plugins 설정 매개변수에 지정합니다.

지원 플랫폼

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

Unix 계열 시스템의 에이전트 2

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

설치

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

  • Zabbix 패키지 - Zabbix 버전, OS 배포판 및 OS 버전을 선택한 다음 에이전트 2 구성 요소를 선택하고 지침을 따르세요;
  • Zabbix 소스 - 소스 파일을 다운로드하고 구성 시 --enable-agent2 옵션을 사용하여 에이전트를 컴파일하세요.

Zabbix 에이전트 2의 모니터링 기능은 별도로 제공되는 로드 가능한 플러그인을 통해 확장할 수 있습니다. 자세한 내용은 로드 가능한 플러그인을 참조하세요.

패키지로 설치한 경우

Zabbix 에이전트 2는 포그라운드 프로세스로 실행되며, 백그라운드 실행은 외부 서비스 관리자(예: systemd)에 의존합니다. Zabbix 에이전트 2는 Linux에서 데몬화 기능을 기본 제공하지 않습니다.

다음 명령을 실행하여 에이전트를 시작할 수 있습니다:

systemctl start zabbix-agent2

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

systemctl stop zabbix-agent2
systemctl restart zabbix-agent2
systemctl status zabbix-agent2
수동으로 시작

다음 예와 같이 zabbix_agent2 바이너리를 찾아 직접 실행하면 Zabbix 에이전트를 시작할 수 있습니다:

zabbix_agent2

Windows 시스템의 에이전트 2

Zabbix 에이전트 2는 독립 실행형 프로세스로 실행되며, Windows 서비스로도 실행할 수 있습니다.

설치

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

Zabbix 에이전트 2의 모니터링 기능은 별도로 제공되는 로드 가능한 플러그인을 통해 확장할 수 있습니다. 자세한 내용은 로드 가능한 플러그인을 참조하세요.

ZIP 아카이브에서 Zabbix 에이전트 2를 Windows 서비스로 설치하는 방법에 대한 자세한 내용은 Microsoft Windows의 Zabbix 에이전트 페이지를 참조하세요.

옵션

Zabbix 에이전트 2에서 다음 명령줄 매개변수를 사용할 수 있습니다:

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

명령줄 매개변수 사용 예:

  • 모든 내장 에이전트 아이템을 값과 함께 출력합니다.
  • 지정한 설정 파일에 정의된 mysql.ping 키의 사용자 매개변수를 테스트합니다.
  • 설정 파일의 기본 경로인 C:\\Program Files\\Zabbix Agent 2\\zabbix_agent2.conf를 사용하여 Windows용 Zabbix 에이전트 서비스를 설치합니다.
  • 에이전트 실행 파일과 같은 폴더에 있는 설정 파일 zabbix_agent2.conf를 사용하여 설치된 Windows용 Zabbix 에이전트 서비스의 시작 유형을 변경합니다.
zabbix_agent2 --print
zabbix_agent2 -t "mysql.ping" -c /etc/zabbix/zabbix_agentd.conf
zabbix_agent2.exe -i
zabbix_agent2.exe -c zabbix_agent2.conf -S delayed
런타임 제어

런타임 제어는 원격 제어를 위한 몇 가지 옵션을 제공합니다.

옵션 설명
log_level_increase 로그 수준을 높입니다.
log_level_decrease 로그 수준을 낮춥니다.
metrics 사용 가능한 메트릭을 나열합니다.
version 에이전트 버전을 표시합니다.
userparameter_reload 현재 설정 파일에서 UserParameter 및 Include 옵션의 값을 다시 불러옵니다.
help 런타임 제어에 대한 도움말을 표시합니다.

예:

  • 에이전트 2의 로그 수준을 높입니다.
  • 런타임 제어 옵션을 출력합니다.
zabbix_agent2 -R log_level_increase
zabbix_agent2 -R help

Zabbix 7.4.1부터 에이전트 2의 런타임 제어 명령은 출력을 stdout(표준 출력)에 기록하며, stderr(표준 오류)에는 기록하지 않습니다.

설정 파일

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

  • UNIX의 기본 경로:
    • 소스에서 설치한 경우: /usr/local/etc/zabbix_agent2.conf 또는 컴파일 시 변수 --sysconfdir 또는 --prefix로 설정한 경로.
    • 패키지에서 설치한 경우: /etc/zabbix/zabbix_agent2.conf.
  • Windows의 기본 경로는 C:\Program Files\Zabbix Agent 2\zabbix_agent2.conf입니다.

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

Zabbix 에이전트 2의 설정 매개변수는 대부분 Zabbix 에이전트와 일치하지만 다음과 같은 예외가 있습니다:

매개변수 < 설명
Zabbix 에이전트 2 전용 설정 매개변수 < <
ControlSocket 런타임 제어 소켓 경로입니다. Zabbix 에이전트 2는 런타임 명령에 제어 소켓을 사용합니다.
EnablePersistentBuffer,
PersistentBufferFile,
PersistentBufferPeriod
이 매개변수는 Zabbix 에이전트 2에서 능동 아이템의 영구 저장소를 구성하는 데 사용됩니다.
ForceActiveChecksOnStart 에이전트가 재시작 직후 능동 검사를 수행할지, 시간을 두고 균등하게 분산하여 수행할지 결정합니다.
Plugins 플러그인은 Plugins.<Plugin name>.<Parameter>=<value> 형식의 자체 매개변수를 가질 수 있습니다. 공통 플러그인 매개변수인 System.Capacity는 동시에 실행할 수 있는 검사 수의 상한을 설정합니다.
StatusPort Zabbix 에이전트 2가 HTTP 상태 요청을 수신하고, 설정된 플러그인 목록과 일부 내부 매개변수를 표시하는 데 사용하는 포트입니다.
Zabbix 에이전트 2에서 지원하지 않는 Zabbix 에이전트 전용 설정 매개변수 < <
AllowRoot,
User
Zabbix 에이전트 2는 데몬화를 지원하지 않으므로 이 매개변수를 지원하지 않습니다.
EnableRemoteCommands 더 이상 사용되지 않습니다. 두 에이전트 모두 대신 AllowKey 및 DenyKey 매개변수를 사용합니다.
ListenBacklog Zabbix 에이전트에서 TCP 대기열의 최대 대기 연결 수를 정의하는 데 사용됩니다. Zabbix 에이전트 2에서는 지원하지 않습니다.
LoadModule,
LoadModulePath
Zabbix 에이전트 2는 로드 가능한 모듈을 지원하지 않습니다.
MaxLinesPerSecond,
LogRemoteCommands
Zabbix 에이전트 2에서는 대신 Plugins.Log.MaxLinesPerSecond 및 Plugins.SystemRun.LogRemoteCommands를 사용합니다.
StartAgents Zabbix 에이전트에서 이 매개변수는 수동 검사의 동시성을 높이거나 수동 검사를 비활성화하는 데 사용됩니다. Zabbix 에이전트 2에서는 동시성을 플러그인 수준에서 구성하며, 용량 설정으로 제한할 수 있습니다. Zabbix 에이전트 2에서는 Server 매개변수를 지정하지 않으면 수동 검사가 비활성화됩니다.

자세한 내용은 Zabbix 에이전트 2의 설정 파일 옵션을 참조하세요.

종료 코드

Zabbix 에이전트 2는 이전 OpenSSL 버전(1.0.1, 1.0.2)으로도 컴파일할 수 있습니다.

이 경우 Zabbix는 OpenSSL에서 잠금에 사용할 뮤텍스를 제공합니다. 뮤텍스 잠금 또는 잠금 해제에 실패하면 표준 오류 스트림(STDERR)에 오류 메시지가 출력되고, 에이전트 2는 각각 반환 코드 2 또는 3으로 종료됩니다.