Post

zabbix-server-setting


여러 서버를 사용하고 있는 환경에서 특정 서버들이 리소스로 문제로 재시작 되거나 멈추는 것들의 원인이 제대로 추적할 수가 없어서, 장기적으로 여러 서버의 리소스들을 모니터링 할 수 있는 툴이 필요했다.

또한 각 서버에서 접속해서 확인하는 것이 아닌 하나의 화면에 보유한 여러 서버의 모니터링이 가능한 것이 필요했다.


그 중 zabbix를 선정한 이유는 agent2 방식으로 각 서버세팅 환경이 다 달라도 모니터링에 필요한 데이터들을 수집하는 것이 가능하다.

그리고 완전한 오픈소스에 꾸준이 버전업 및 이슈 대응을 하고 있어 안정적인 사용이 가능하기 때문이다.

아래는 zabbix의 web UI를 띄울 서버를 선정하고, 그 서버에 zabbix server 세팅을 하는 방법이다.


zabbix server 세팅


주의

현재 각 서버 세팅상황에 따라 설치 상황이 다를 수 있다. 기본적으로는 apach를 설치하며, 버전도 다를 수가 있다.


환경

  • OS: Ubuntu 24.04
  • Zabbix 버전: 7.0 LTS
  • DB: MySQL/MariaDB

Zabbix Repository 설치

1
2
3
wget https://repo.zabbix.com/zabbix/7.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_7.0-1+ubuntu24.04_all.deb
sudo dpkg -i zabbix-release_7.0-1+ubuntu24.04_all.deb
sudo apt update

Zabbix server, frontend, agent 설치

1
sudo apt install zabbix-server-mysql zabbix-php-plugins zabbix-sql-scripts zabbix-agent2 php-fpm php-mysql

Database 준비

1
sudo apt install mariadb-server

Zabbix DB 생성

1
sudo mysql -uroot
1
2
3
4
5
CREATE DATABASE zabbix CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
CREATE USER 'zabbix'@'localhost' IDENTIFIED BY '패스워드';
GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'localhost';
FLUSH PRIVILEGES;
EXIT;

초기 스키마 로드

1
zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql -uzabbix -p zabbix

zabbix_server.conf 설정

  • DB 접속 정보 입력
    1
    
    sudo nano /etc/zabbix/zabbix_server.conf
    
  • 수정
    1
    2
    3
    
    DBName=zabbix
    DBUser=zabbix
    DBPassword=패스워드
    

PHP-FPM 설정 확인

  • PHP-FPM 버전에 따라 소켓 파일 경로가 다름
    1
    
    systemctl status php8.1-fpm
    

    Nginx 설정

    1
    
    sudo nano /etc/nginx/sites-available/default
    
  • 아래 내용 추가
1
2
3
4
5
6
7
8
9
10
11
12
location /zabbix {
    alias /usr/share/zabbix/;
    index index.php;
}

location ~ ^/zabbix/.+\.php$ {
    alias /usr/share/zabbix/;
    include fastcgi_params;
    fastcgi_pass unix:/run/php/php8.1-fpm.sock;
    fastcgi_param SCRIPT_FILENAME $request_filename;
}

Nginx 재시작

1
sudo systemctl reload nginx

Zabbix 서비스 시작

1
2
sudo systemctl restart zabbix-server zabbix-agent2
sudo systemctl enable zabbix-server zabbix-agent2

Zabbix 화면 예시

img_file

This post is licensed under CC BY 4.0 by the author.