서버 모니터링 · 4 min read · Sep 11, 2025
Debian 12 서버에 Zabbix 설치하는 방법

Zabbix는 IT 인프라를 위한 무료 오픈 소스 모니터링 솔루션입니다. 네트워크, 서버, 가상 머신 및 클라우드 서비스를 모니터링할 수 있습니다. Zabbix는 클라이언트/서버 모델을 제공합니다. 대상 서버에 Zabbix 에이전트를 쉽게 설치하고 Zabbix 대시보드를 통해 모니터링할 수 있습니다. Zabbix는 SNMP 및 IPMI와 같은 일반 모니터링 프로토콜도 지원합니다.
이 가이드는 Debian 12 서버에 Zabbix 모니터링 솔루션을 설치하는 방법을 보여줍니다. PostgreSQL을 데이터베이스 서버로, Nginx 웹 서버 및 PHP-FPM과 함께 Zabbix를 설치합니다.
전제 조건
이 가이드를 시작하기 전에 다음을 확인하십시오:
- Debian 12 서버
- 관리자 권한이 있는 비루트 사용자
PostgreSQL 서버 설치
기본적으로 Zabbix는 MySQL 및 PostgreSQL과 같은 RDBMS를 지원합니다. 이 가이드에서는 Zabbix 설치 데이터베이스로 PostgreSQL을 사용할 것입니다. 따라서 지금은 APT 패키지 관리자를 사용하여 Debian 저장소에서 PostgreSQL을 설치할 것입니다.
먼저, 아래의 ‘apt’ 명령어를 실행하여 Debian 패키지 인덱스를 업데이트합니다.
sudo apt update
이제 아래의 명령어로 PostgreSQL을 설치합니다. 설치를 확인하려면 ‘Y’를 입력하십시오.
sudo apt install postgresql postgresql-contrib
설치가 완료되면 ‘postgresql’ 서비스 상태를 확인하여 실행 중인지 확인합니다. PostgreSQL의 상태가 ‘running(exited)’로 표시되며, 이는 서비스가 실행 중이지만 systemd가 모니터링할 데몬을 찾을 수 없음을 의미합니다.
sudo systemctl is-enabled postgresql
sudo systemctl status postgresql
PostgreSQL 데이터베이스 및 사용자 생성
PostgreSQL을 설치한 후, Zabbix를 위한 새로운 사용자와 데이터베이스를 생성해야 합니다. 이 단계에서는 ‘createuser’ 명령어를 사용하여 PostgreSQL에 새로운 역할을 생성하고, ‘createdb’ 명령어를 사용하여 PostgreSQL 데이터베이스를 생성합니다.
새로운 PostgreSQL 사용자 ‘zabbix’를 생성하려면 아래의 명령어를 실행합니다. 이제 데이터베이스 사용자 비밀번호를 입력하고 프롬프트가 나타나면 반복 입력합니다.
sudo -u postgres createuser --pwprompt zabbix이제 아래의 명령어를 실행하여 기본 소유자 ‘zabbix’로 새로운 데이터베이스 ‘zabbix’를 생성합니다. 이 데이터베이스와 사용자는 Zabbix 설치에 사용됩니다.
sudo -u postgres createdb -O zabbix zabbix
Zabbix 설치
이제 PostgreSQL을 설치하고 구성했으므로 Zabbix 저장소를 추가하고 ‘zabbix-frontend-php’, ‘zabbix-server-pgsql’, ‘zabbix-agent’와 같은 Zabbix 패키지를 설치합니다. 또한, 이는 Zabbix 프론트 엔드에서 사용할 Nginx 웹 서버와 PHP-FPM을 자동으로 설치합니다.
아래의 명령어로 Debian 시스템에 대한 Zabbix 저장소를 다운로드합니다. 이 예제에서는 Debian 서버에 Zabbix 7.2를 설치합니다. 다운로드가 완료되면 ‘zabbix-release_latest_7.2+debian12_all.deb’ 파일이 현재 작업 디렉토리에 생성됩니다.
wget https://repo.zabbix.com/zabbix/7.2/release/debian/pool/main/z/zabbix-release/zabbix-release_latest_7.2+debian12_all.deb이제 아래의 ‘dpkg’ 명령어를 실행하여 Zabbix 저장소를 시스템에 추가합니다.
sudo dpkg -i zabbix-release_latest_7.2+debian12_all.deb
그 후, 다음 ‘apt’ 명령어를 실행하여 Debian 저장소를 새로 고치고 Zabbix 서버를 설치합니다. 이 예제에서는 PostgreSQL 데이터베이스, Nginx 웹 서버 및 PHP-FPM과 함께 Zabbix 및 Zabbix 에이전트를 설치합니다.
sudo apt update
sudo apt install zabbix-server-pgsql zabbix-frontend-php php8.2-pgsql zabbix-nginx-conf zabbix-sql-scripts zabbix-agent설치를 진행하려면 ‘Y’를 입력합니다.

PostgreSQL과 Zabbix 통합
이제 Zabbix 패키지를 설치했으므로 다음 단계는 PostgreSQL 데이터베이스 서버와 Zabbix를 통합하는 것입니다. 이를 위해 Zabbix 데이터베이스 스키마를 가져오고 ‘/etc/zabbix/zabbix_server.conf’ 파일 내의 PostgreSQL 자격 증명을 수정해야 합니다.
사용자 ‘zabbix’로 ‘zabbix’ 데이터베이스에 Zabbix 데이터베이스 스키마를 가져옵니다. 프롬프트가 나타나면 ‘zabbix’ 비밀번호를 입력합니다.
zcat /usr/share/zabbix/sql-scripts/postgresql/server.sql.gz | sudo -u zabbix psql zabbix다음으로, ‘nano’ 편집기를 사용하여 Zabbix 구성 ‘/etc/zabbix/zabbix_server.conf’를 엽니다.
sudo nano /etc/zabbix/zabbix_server.conf기본 ‘DBHost’, ‘DBName’, ‘DBUser’, 및 ‘DBPassword’를 PostgreSQL 자격 증명으로 주석 해제합니다.
DBHost = localhost
DBName = zabbix
DBUser = zabbix
DBPassword = password파일을 저장하고 편집기를 종료합니다.
Nginx 웹 서버 설정
이제 PostgreSQL과 Zabbix를 통합했으므로 Nginx 웹 서버를 구성합니다. 기본적으로 Zabbix에 대한 Nginx 구성은 ‘/etc/zabbix/nginx.conf’ 파일에 있으며, 이제 기본 도메인 이름을 변경하고 Zabbix의 기본 포트를 변경해야 합니다(선택 사항).
‘nano’ 편집기를 사용하여 Zabbix 통합을 위한 Nginx 구성 ‘/etc/zabbix/nginx.conf’를 엽니다.
sudo nano /etc/zabbix/nginx.conf기본 ‘listen’ 옵션을 포트 ‘8080’으로 변경합니다. 이 예제에서는 Nginx 웹 서버에서 포트 ‘8080’으로 Zabbix를 실행합니다.
listen 8080;‘server_name’ 옵션을 도메인 이름으로 변경합니다. 이 예제에서는 ‘/etc/hosts’ 파일을 통해 생성할 수 있는 로컬 도메인 이름을 사용합니다.
server_name zabbix.howtoforge.local;파일을 저장하고 편집기를 종료합니다.
마지막으로, 아래의 ‘nginx’ 명령어를 실행하여 Nginx 구성을 확인합니다. Nginx 구성을 수정했다면 ‘syntax is ok - test is successful’와 같은 출력을 볼 수 있습니다.
sudo nginx -t
Zabbix 서비스 재시작
이 시점에서 Zabbix 패키지를 설치하고 PostgreSQL 서버 및 Nginx 웹 서버와 Zabbix를 통합했습니다. 이제 모든 변경 사항을 적용하기 위해 각 Zabbix 서비스를 재시작해야 하며, 각 Zabbix 서비스가 실행 중인지 확인해야 합니다.
먼저, 아래의 ‘systemctl’ 명령어를 실행하여 ‘zabbix-server’, ‘zabbix-agent’, ‘nginx’, 및 ‘php8.2-fpm’의 서비스를 활성화합니다.
sudo systemctl enable zabbix-server zabbix-agent nginx php8.2-fpm
이제 다음 명령어를 실행하여 Zabbix 서비스를 재시작하고 새로운 변경 사항을 적용합니다.
sudo systemctl restart zabbix-server zabbix-agent nginx php8.2-fpm마지막으로, 다음 명령어로 Zabbix 서비스가 실행 중인지 확인합니다.
sudo systemctl status zabbix-server zabbix-agent nginx php8.2-fpm아래에서 ‘zabbix-server’가 실행 중인 것을 볼 수 있습니다.

‘zabbix-agent’도 실행 중입니다.

아래에서 ‘nginx’ 서비스가 실행 중인 것을 볼 수 있습니다.

마지막으로, ‘php8.2-fpm’ 서비스가 서버에서 실행 중인 것을 볼 수 있습니다.

Zabbix 설치 마법사
각 Zabbix 서비스가 실행 중이므로 이제 Zabbix 설치에 접근할 수 있습니다.
로컬 컴퓨터에서 텍스트 편집기를 사용하여 ‘/etc/hosts’ 파일을 편집합니다. 관리자 권한을 사용해야 합니다. Windows 사용자의 경우, ‘C:\Windows\System32\drivers\etc\hosts’를 관리자 권한으로 수정할 수 있습니다.
‘hosts’ 파일 내에서 Zabbix 서버 IP 주소와 도메인 이름을 다음과 같이 정의합니다:
192.168.10.10 zabbix.howtoforge.local파일을 저장하고 편집기를 종료합니다.
이제 웹 브라우저를 열고 http://zabbix.howtoforge.local:8080/에 방문합니다. Zabbix 설치가 성공적으로 완료되었다면 Zabbix 설치 마법사가 표시됩니다.
Zabbix의 기본 언어를 선택하고 ‘ 다음 단계 ‘를 클릭하여 계속 진행합니다.

사전 검사 중에 서버 구성이 Zabbix 요구 사항을 충족하는지 확인합니다.

이제 데이터베이스를 ‘PostgreSQL’로 선택하고 데이터베이스 세부 정보를 입력합니다.

서버 이름을 입력하고 Zabbix의 기본 시간대를 선택합니다.

계속 진행하기 전에 모든 것을 확인한 후 ‘ 다음 단계 ‘를 클릭합니다.

설치가 완료되면 ‘ 축하합니다! Zabbix 프론트 엔드를 성공적으로 설치했습니다. ‘라는 메시지가 표시됩니다.
‘ 완료 ‘를 클릭하여 설치를 완료합니다.

이제 Zabbix 로그인 페이지로 리디렉션됩니다. 사용자 Admin과 비밀번호 zabbix를 입력한 후 ‘ 로그인 ‘을 클릭합니다.

모든 것이 잘 진행되었다면 다음과 같은 Zabbix 관리 대시보드를 볼 수 있습니다.

결론
축하합니다! Debian 12 서버에 Zabbix 모니터링 솔루션 설치를 완료했습니다. PostgreSQL 데이터베이스 서버, Nginx 웹 서버 및 PHP-FPM과 함께 Zabbix를 실행 중입니다. 또한 Zabbix 인스턴스를 모니터링할 ‘zabbix-agent’가 서버에서 실행되고 있습니다. 이제 여기에서 새로운 대상 호스트를 추가하여 Zabbix 설정 알림을 여러 서비스로 설정하고 Zabbix를 통해 서비스를 모니터링할 수 있습니다.
새 게시물을 받은 편지함에서 받기
스팸은 없습니다. 언제든지 구독 해지 가능합니다.