Zabbix: 네트워크 모니터링을 위한 강력한 오픈소스 솔루션


1. Zabbix 설치 전 준비사항

Zabbix 설치에는 데이터베이스(MySQL 또는 MariaDB)웹 서버(Apache 또는 Nginx)PHP 등이 필요합니다. 이들을 설치한 후, Zabbix 서버와 Zabbix 에이전트를 설치합니다.


2. 데이터베이스 설정

Zabbix는 성능 및 상태 데이터를 데이터베이스에 저장하므로, 먼저 MySQL 또는 MariaDB를 설치하고 설정해야 합니다.

MariaDB 설치 (Ubuntu 기준)

<bash>


sudo apt update
sudo apt install mariadb-server
sudo mysql_secure_installation

데이터베이스 생성 및 사용자 설정

<bash>

sudo mysql -u root -p

로그인 후 다음 명령어로 Zabbix 데이터베이스와 사용자를 생성합니다.

<sql>


CREATE DATABASE zabbix character set utf8mb4 collate utf8mb4_bin;
CREATE USER 'zabbix'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'localhost';
FLUSH PRIVILEGES;
EXIT;

참고'password' 부분을 원하는 비밀번호로 설정하세요.


3. Zabbix 서버 설치

Zabbix 설치 파일을 다운로드하고 설치합니다.

<bash>


wget https://repo.zabbix.com/zabbix/6.0/ubuntu/pool/main/z/zabbix-server-mysql/zabbix-server-mysql_6.0.0-1+ubuntu20.04_amd64.deb
sudo dpkg -i zabbix-server-mysql_6.0.0-1+ubuntu20.04_amd64.deb

4. 데이터베이스 초기화

Zabbix의 기본 스키마를 데이터베이스에 불러옵니다.

<bash>

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

5. Zabbix 설정 파일 수정

Zabbix 설정 파일을 편집하여 데이터베이스 정보를 입력합니다.

<bash>

sudo nano /etc/zabbix/zabbix_server.conf

아래 내용을 확인하고 수정합니다.

<conf>


DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=password  # 데이터베이스 비밀번호 입력

6. PHP 설치 및 설정

Zabbix 웹 인터페이스는 PHP로 구성되어 있으므로, PHP와 필요한 확장 모듈을 설치합니다.

<bash>


sudo apt install php php-mbstring php-gd php-xml php-bcmath php-ldap php-mysql php-zip

7. Apache 설정

Zabbix 웹 프론트엔드를 구동하기 위해 Apache 웹 서버를 설정합니다.

<bash>


sudo apt install apache2
sudo a2enmod php
sudo systemctl restart apache2

8. Zabbix 웹 인터페이스 설치

Zabbix 웹 인터페이스를 설치합니다. /etc/apache2/sites-available/zabbix.conf 파일을 생성하고 다음 내용을 추가합니다.

<conf>


<VirtualHost *:80>
    ServerAdmin admin@example.com
    DocumentRoot /usr/share/zabbix
    ServerName zabbix.example.com
    <Directory "/usr/share/zabbix">
        Require all granted
        AllowOverride All
        Options FollowSymLinks
    </Directory>
    ErrorLog ${APACHE_LOG_DIR}/zabbix_error.log
    CustomLog ${APACHE_LOG_DIR}/zabbix_access.log combined
</VirtualHost>

이후, Apache를 다시 시작합니다.

<bash>

sudo systemctl restart apache2

9. Zabbix 에이전트 설치

모니터링할 장비에 Zabbix 에이전트를 설치합니다. 에이전트는 모니터링할 각 장비에 설치하며, Zabbix 서버와 통신하여 데이터를 전송합니다.

<bash>

sudo apt install zabbix-agent

Zabbix 에이전트 설정

설정 파일을 편집하여 Zabbix 서버 IP 주소를 입력합니다.

<bash>

sudo nano /etc/zabbix/zabbix_agentd.conf

Server와 ServerActive 부분에 Zabbix 서버의 IP를 입력합니다.

<conf>

Server=ZABBIX_SERVER_IP
ServerActive=ZABBIX_SERVER_IP
Hostname=YOUR_HOSTNAME

설정을 마친 후, 에이전트를 재시작합니다.

<bash>


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

10. Zabbix 웹 인터페이스 접근 및 초기 설정

브라우저에서 Zabbix 웹 인터페이스에 접근합니다. URL은 http://YOUR_SERVER_IP/zabbix입니다.

  1. 로그인: 초기 계정 정보는 Admin / zabbix입니다.
  2. 설정 마법사: 초기 설정 마법사가 실행됩니다. 데이터베이스 연결 정보와 관리자 계정 설정을 완료합니다.

11. 호스트 추가 및 템플릿 적용

Zabbix 설정이 완료되면 모니터링할 호스트를 추가하고 템플릿을 적용해 모니터링을 시작합니다.

  1. 호스트 추가: 웹 인터페이스에서 Configuration > Hosts로 이동하여 모니터링할 호스트를 추가합니다.
  2. 템플릿 적용: 호스트의 설정 페이지에서 Template을 선택해 서버 모니터링, 네트워크 모니터링 등에 맞는 템플릿을 적용합니다.
  3. 데이터 확인: 대시보드나 그래프에서 모니터링 데이터를 확인합니다.

12. 알림 설정

Zabbix의 알림 시스템은 다양한 채널로 경고를 발송할 수 있습니다. 이메일, 슬랙, SMS 등을 설정하여 문제가 발생했을 때 실시간으로 알림을 받을 수 있습니다.

  1. 알림 채널 설정Administration > Media types에서 알림 채널을 설정합니다.
  2. 사용자 설정Administration > Users에서 사용자별로 원하는 알림 채널을 지정할 수 있습니다.
  3. 트리거 설정Configuration > Actions에서 임계치 초과 시 자동으로 알림을 보내도록 설정할 수 있습니다.

맺음말

Zabbix는 네트워크와 서버 모니터링을 위한 강력한 오픈소스 도구로, 대규모 시스템에서 안정적이고 확장 가능한 모니터링을 제공합니다. 이번 설명을 따라 설정을 완료하면, 다양한 장치의 상태와 성능을 손쉽게 관리하고, 문제가 발생했을 때 신속하게 대응할 수 있는 체계를 구축할 수 있습니다.



2930 Blog에서 더 알아보기

구독을 신청하면 최신 게시물을 이메일로 받아볼 수 있습니다.