모니터링 · 7 min read · Nov 17, 2025

Debian 9에 Zabbix 모니터링 서버 및 에이전트 설치하기

모니터링 도구는 시스템 상태를 지속적으로 추적하고 문제가 발생할 경우 경고 및 알림을 전송하는 데 사용됩니다. 또한, 모니터링 도구는 중요한 시스템, 애플리케이션 및 서비스가 항상 가동되고 있는지 확인하는 데 도움을 줍니다. 모니터링 도구는 네트워크 보안을 보완하여 악의적인 트래픽을 감지하고, 그 출처와 이를 차단하는 방법을 알 수 있게 해줍니다.

Zabbix는 수십만 대의 서버, 가상 머신 및 네트워크 장치에서 수집된 수백만 개의 메트릭을 실시간으로 모니터링하기 위해 설계된 무료 오픈 소스 궁극의 기업 수준 모니터링 도구입니다. Zabbix는 소규모 환경에서 대규모 환경으로 확장할 수 있도록 설계되었습니다. 웹 프론트엔드는 PHP로 작성되었고, 백엔드는 C로 작성되었으며 MySQL, PostgreSQL, SQLite, Oracle 또는 IBM DB2를 사용하여 데이터를 저장합니다. Zabbix는 특정 노드 및 네트워크의 현재 상태에 대한 개요를 얻을 수 있는 그래프 기능을 제공합니다.

Zabbix의 주요 기능은 다음과 같습니다:

  • 서버, 데이터베이스, 애플리케이션, 네트워크 장치, Vmware 하이퍼바이저, 가상 머신 등을 모니터링합니다.
  • 서비스 품질을 개선하고 다운타임을 피하여 운영 비용을 줄이기 위해 소규모에서 대규모 환경을 지원하도록 특별히 설계되었습니다.
  • 완전 무료 오픈 소스이므로 비용을 지불할 필요가 없습니다.
  • 중앙 위치에서 모든 작업을 수행할 수 있는 사용자 친화적인 웹 인터페이스를 제공합니다.
  • 네트워크 장치를 모니터링하기 위한 SNMP와 하드웨어 장치를 모니터링하기 위한 IPMI를 제공합니다.
  • 브라우저에서 전체 시스템 제어를 허용하는 웹 기반 프론트 엔드입니다.

이 튜토리얼에서는 Debian 9 서버에 Zabbix 서버와 Zabbix 에이전트를 설치하는 단계별 지침을 안내합니다. 또한 Zabbix 서버에 Zabbix 에이전트를 추가하여 모니터링하는 방법도 설명합니다.

요구 사항

  • Debian 9가 설치된 두 시스템.
  • 최소 1GB의 RAM과 10GB의 디스크 공간이 필요합니다. RAM 및 디스크 공간의 양은 모니터링되는 호스트 수와 매개변수에 따라 다릅니다.
  • 서버에 sudo 권한이 설정된 비루트 사용자.

시작하기

시작하기 전에 서버의 패키지 저장소를 최신 안정 버전으로 업데이트해야 합니다. 두 인스턴스에서 다음 명령을 실행하여 업데이트할 수 있습니다:

sudo apt-get update -y  
sudo apt-get upgrade -y

다음으로, 이러한 변경 사항을 적용하기 위해 시스템을 재부팅합니다.

Apache, PHP 및 MariaDB 설치

Zabbix는 Apache 웹 서버에서 실행되며, PHP로 작성되고 MariaDB/MySQL을 사용하여 데이터를 저장합니다. 따라서 Zabbix를 설치하려면 Apache, MariaDB 및 PHP가 필요합니다. 먼저 다음 명령을 실행하여 Apache, PHP 및 기타 PHP 모듈을 설치합니다:

sudo apt-get install apache2 libapache2-mod-php7.0 php7.0 php7.0-xml php7.0-bcmath php7.0-mbstring -y

다음으로, 시스템에 MariaDB 저장소를 추가해야 합니다. 최신 버전의 MariaDB는 Debian 9 기본 저장소에 없습니다.

다음 명령을 실행하여 저장소를 추가할 수 있습니다:

sudo apt-get install software-properties-common -y  
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xF1656F24C74CD1D8  
sudo add-apt-repository 'deb [arch=amd64] http://www.ftp.saix.net/DB/mariadb/repo/10.1/debian stretch main'

다음으로, 다음 명령을 실행하여 저장소를 업데이트합니다:

sudo apt-get update -y

마지막으로, 다음 명령을 실행하여 MariaDB 서버를 설치합니다:

sudo apt-get install mariadb-server -y

기본적으로 MariaDB 설치는 보안이 설정되어 있지 않습니다. 따라서 먼저 보안을 설정해야 합니다. mysql_secure_installation 스크립트를 실행하여 이를 수행할 수 있습니다.

sudo mysql_secure_installation

아래와 같이 모든 질문에 답변합니다:


현재 root 비밀번호 입력 (없으면 Enter): Enter
root 비밀번호 설정? [Y/n]: Y
새 비밀번호: 
새 비밀번호 다시 입력: 
익명 사용자 제거? [Y/n]: Y
원격에서 root 로그인 금지? [Y/n]: Y
테스트 데이터베이스 및 접근 제거? [Y/n]: Y
권한 테이블을 지금 다시 로드합니까? [Y/n]: Y

위 스크립트는 root 비밀번호를 설정하고, 테스트 데이터베이스를 제거하며, 익명 사용자를 제거하고 원격 위치에서 root 로그인을 금지합니다.

MariaDB 설치가 보안 설정이 완료되면 Apache 및 MariaDB 서비스를 시작하고 부팅 시 시작되도록 활성화합니다. 다음 명령을 실행하여 수행할 수 있습니다:

sudo systemctl start apache2  
sudo systemctl enable apache2  
sudo systemctl start mysql  
sudo systemctl enable mysql

Zabbix 서버 설치

기본적으로 Zabbix는 Debian 9 저장소에서 사용할 수 있지만, 구버전일 수 있습니다. 따라서 공식 Zabbix 저장소에서 최신 버전을 설치하는 것이 좋습니다. 다음 명령을 실행하여 Zabbix 저장소의 최신 버전을 다운로드하고 추가할 수 있습니다:

wget http://repo.zabbix.com/zabbix/3.0/debian/pool/main/z/zabbix-release/zabbix-release_3.0-2+stretch_all.deb

다음으로, 다운로드한 저장소를 다음 명령으로 설치합니다:

sudo dpkg -i zabbix-release_3.0-2+stretch_all.deb

다음으로, 패키지 캐시를 업데이트하고 다음 명령을 실행하여 웹 프론트 엔드 및 MySQL 지원이 포함된 Zabbix 서버를 설치합니다:

sudo apt-get update -y  
sudo apt-get install zabbix-server-mysql zabbix-frontend-php -y

Zabbix 서버 상태에 대한 데이터를 수집하기 위해 Zabbix 에이전트도 설치해야 합니다:

sudo apt-get install zabbix-agent -y

Zabbix 에이전트를 설치한 후, Zabbix 에이전트 서비스를 시작하고 부팅 시 시작되도록 활성화합니다. 다음 명령을 실행하여 수행할 수 있습니다:

sudo systemctl start zabbix-agent  
sudo systemctl enable zabbix-agent

Zabbix 데이터베이스 구성

Zabbix는 MariaDB/MySQL을 데이터베이스 백엔드로 사용합니다. 따라서 Zabbix 설치를 위해 MySQL 데이터베이스와 사용자를 생성해야 합니다:

먼저, 다음 명령을 실행하여 MySQL 셸에 로그인합니다:

mysql -u root -p

루트 비밀번호를 입력한 후, 다음 명령을 실행하여 Zabbix용 데이터베이스를 생성합니다:

MariaDB [(none)]> CREATE DATABASE zabbixdb character set utf8 collate utf8_bin;

다음으로, Zabbix용 사용자를 생성하고 비밀번호를 할당한 후, Zabbix 데이터베이스에 대한 모든 권한을 부여합니다:

MariaDB [(none)]> CREATE user zabbixuser identified by 'password';  
MariaDB [(none)]> GRANT ALL PRIVILEGES on zabbixdb.* to zabbixuser@localhost identified by 'password';

다음으로, 다음 명령을 실행하여 권한을 플러시합니다:

MariaDB [(none)]> FLUSH PRIVILEGES;

마지막으로, 다음 명령을 실행하여 MySQL 셸에서 나갑니다:

MariaDB [(none)]> exit;

다음으로, 다음 명령을 실행하여 새로 생성된 데이터베이스에 초기 스키마 및 데이터를 가져옵니다:

cd /usr/share/doc/zabbix-server-mysql*/  
zcat create.sql.gz | mysql -u zabbixuser -p zabbixdb

Zabbix 구성

Zabbix는 /etc/zabbix/apache.conf에 자체 구성 파일을 생성합니다. 이 파일을 편집하고 필요에 따라 시간대 및 PHP 설정을 업데이트합니다:

sudo nano /etc/zabbix/apache.conf

파일을 아래와 같이 변경합니다:

        php_value max_execution_time 300
        php_value memory_limit 128M
        php_value post_max_size 32M
        php_value upload_max_filesize 8M
        php_value max_input_time 300
        php_value always_populate_raw_post_data -1
        php_value date.timezone Asia/Kolkata

작업이 완료되면 파일을 저장합니다.

다음으로, Zabbix에 대한 데이터베이스 세부정보를 업데이트해야 합니다. /etc/zabbix/zabbix_server.conf 파일을 편집하여 이를 수행할 수 있습니다:

sudo nano /etc/zabbix/zabbix_server.conf

다음 줄을 변경합니다:

DBHost=localhost
DBName=zabbixdb
DBUser=zabbixuser
DBPassword=password

작업이 완료되면 파일을 저장하고 닫습니다. 그런 다음 다음 명령을 실행하여 모든 서비스를 재시작합니다:

sudo systemctl restart apache2  
sudo systemctl restart mysql  
sudo systemctl restart zabbix-server

방화벽 구성

진행하기 전에 Zabbix 서버를 보호하기 위해 UFW 방화벽을 구성해야 합니다.

먼저, 시스템에 UFW가 설치되어 있는지 확인합니다. 그렇지 않은 경우 다음 명령을 실행하여 설치할 수 있습니다:

sudo apt-get install ufw -y

다음으로, UFW 방화벽을 활성화합니다:

sudo ufw enable

다음으로, 다음 명령을 실행하여 UFW를 통해 포트 10050, 10051 및 80을 허용합니다:

sudo ufw allow 10050/tcp  
sudo ufw allow 10051/tcp  
sudo ufw allow 80/tcp

마지막으로, 다음 명령을 실행하여 방화벽을 다시 로드하여 이러한 변경 사항을 적용합니다:

sudo ufw reload

UFW 방화벽이 구성되면 웹 인터페이스를 통해 Zabbix 서버를 설치할 수 있습니다.

Zabbix 웹 설치 마법사 접근

모든 것이 정상이라면 Zabbix 웹 설치 마법사에 접근할 시간입니다.

웹 브라우저를 열고 http://zabbix-server-ip/zabbix URL로 이동하면 다음 페이지로 리디렉션됩니다:

Zabbix 3.0

다음 단계 버튼을 클릭하면 다음 페이지가 표시됩니다:

Zabbix Prerequisites

여기에서 모든 Zabbix 전제 조건이 확인되고 검증되며, 다음 단계 버튼을 클릭하면 다음 페이지가 표시됩니다:

Database Configuration

여기에서 Zabbix 데이터베이스 이름, 데이터베이스 사용자 및 비밀번호를 제공한 후 다음 단계 버튼을 클릭하면 다음 페이지가 표시됩니다:

Zabbix Server Details

여기에서 Zabbix 서버 세부정보 및 포트 번호를 지정한 후 다음 단계 버튼을 클릭하면 다음 페이지에서 Zabbix 서버의 사전 설치 요약이 표시됩니다:

Installation summary

다음으로 다음 단계 버튼을 클릭하여 Zabbix 설치를 시작합니다. Zabbix 설치가 성공적으로 완료되면 다음 페이지가 표시됩니다:

Zabbix installed successfully

여기에서 완료 버튼을 클릭하면 아래와 같이 Zabbix 로그인 페이지로 리디렉션됩니다:

Login to Zabbix

여기에서 사용자 이름을 Admin으로, 비밀번호를 zabbix로 입력한 후 로그인 버튼을 클릭합니다. 다음 이미지에서 Zabbix 서버 대시보드를 확인할 수 있습니다:

Zabbix Dashboard

이제 Zabbix 웹 설치가 완료되었습니다.

Zabbix 에이전트 설치

이제 Zabbix 서버가 가동되고 있습니다. Zabbix 서버에 모니터링을 위해 Zabbix 에이전트 노드를 추가할 시간입니다.

먼저, Zabbix 에이전트 인스턴스에 로그인하고 다음 명령을 실행하여 Zabbix 저장소를 추가합니다:

wget http://repo.zabbix.com/zabbix/3.0/debian/pool/main/z/zabbix-release/zabbix-release_3.0-2+stretch_all.deb  
sudo dpkg -i zabbix-release_3.0-2+stretch_all.deb  
sudo apt-get update -y

Zabbix 저장소가 시스템에 구성되면 다음 명령을 실행하여 Zabbix 에이전트를 설치합니다:

sudo apt-get install zabbix-agent -y

Zabbix 에이전트가 설치되면 Zabbix 서버와 통신하도록 Zabbix 에이전트를 구성해야 합니다. Zabbix 에이전트 구성 파일을 편집하여 이를 수행할 수 있습니다:

sudo nano /etc/zabbix/zabbix_agentd.conf

파일을 아래와 같이 변경합니다:

    #Zabbix 서버 IP 주소 / 호스트 이름

    Server=192.168.0.103

    #Zabbix 에이전트 호스트 이름

    Hostname=zabbix-agent

작업이 완료되면 파일을 저장하고 닫습니다. 그런 다음 다음 명령을 실행하여 Zabbix 에이전트 서비스를 재시작하고 부팅 시 시작되도록 활성화합니다:

sudo systemctl restart zabbix-agent  
sudo systemctl enable zabbix-agent

Zabbix 서버에 Zabbix 에이전트 노드 추가

다음으로, 모니터링을 위해 Zabbix 서버에 Zabbix 에이전트 노드를 추가해야 합니다. 먼저 Zabbix 서버 웹 인터페이스에 로그인합니다.

Zabbix UI

다음으로, 구성 —> 호스트 —> 호스트 생성을 클릭하면 다음 페이지가 표시됩니다:

Create Host in Zabbix

여기에서 Zabbix 에이전트의 호스트 이름, IP 주소 및 그룹 이름을 지정합니다. 그런 다음 템플릿 탭으로 이동하면 다음 페이지가 표시됩니다:

specify the Hostname, IP address and Group name

여기에서 적절한 템플릿을 검색하고 추가 버튼을 클릭하면 다음 페이지가 표시됩니다:

OS Template

마지막으로 추가 버튼을 다시 클릭합니다. 그러면 모든 것이 정상적으로 작동하고 있음을 나타내는 녹색 레이블이 있는 새 호스트가 표시됩니다.

Hast successfully added to Zabbix

추가로 모니터링하려는 서버 및 네트워크 장치가 있는 경우 각 호스트에 로그인하여 Zabbix 에이전트를 설치하고 Zabbix 웹 인터페이스에서 각 호스트를 추가합니다.

결론

축하합니다! Debian 9 서버에 Zabbix 서버와 Zabbix 에이전트를 성공적으로 설치했습니다. 또한 Zabbix 서버에 모니터링을 위해 Zabbix 에이전트 노드를 추가했습니다. 이제 현재 문제 및 과거 이력을 쉽게 나열하고, 호스트의 최신 데이터를 가져오고, 현재 문제를 나열하며, CPU 부하, CPU 사용률, 메모리 사용량 등의 수집된 리소스 통계를 그래프를 통해 시각화할 수 있습니다. 이제 Debian 9 서버에 Zabbix를 쉽게 설치하고 구성하여 프로덕션 환경에 배포할 수 있기를 바랍니다. 다른 모니터링 소프트웨어와 비교할 때 Zabbix는 여러 호스트를 모니터링하면서 다양한 네트워크 세그먼트의 자체 지도를 구축할 수 있도록 해줍니다. Zabbix Windows 에이전트를 사용하여 Windows 호스트도 모니터링할 수 있습니다. 더 많은 정보는 Zabbix 문서 페이지를 참조하시기 바랍니다. 질문이 있으면 언제든지 문의해 주세요.

Share: X/Twitter LinkedIn

새 게시물을 받은 편지함에서 받기

스팸은 없습니다. 언제든지 구독 해지 가능합니다.