Ubuntu 22.04에서 Zabbix 6.4 서버 설치 완벽 가이드
이 가이드에서는 Ubuntu 22.04 LTS 서버에 Zabbix 6.4를 설치하고 설정하는 전체 과정을 상세히 다룹니다. Nginx 웹 서버를 사용하며, 포트 13000으로 설정하여 기존 80 포트와의 충돌을 피하는 방법을 포함합니다.
1. 시스템 요구사항
- Ubuntu 22.04 LTS 서버
- 최소 2GB RAM
- 최소 20GB 디스크 공간
- 루트 또는 sudo 권한
2. 사전 준비 작업
시스템을 최신 상태로 업데이트하고 필요한 기본 도구를 설치합니다.
sudo apt update
sudo apt upgrade -y
sudo apt install -y wget software-properties-common
3. Nginx 설치 및 설정
Nginx 웹 서버를 설치하고 기본 설정을 진행합니다.
sudo apt install -y nginx
sudo systemctl start nginx
sudo systemctl enable nginx
Nginx가 정상적으로 설치되었는지 확인:
sudo systemctl status nginx
4. MySQL 설정
이미 설치된 MySQL에 Zabbix 데이터베이스 설정을 진행합니다.
mysql -u root -p
CREATE DATABASE zabbix character set utf8mb4 collate utf8mb4_bin;
CREATE USER 'zabbix'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'localhost';
FLUSH PRIVILEGES;
exit;
5. Zabbix 서버 설치
공식 Zabbix 리포지토리를 추가하고 필요한 패키지를 설치합니다.
wget https://repo.zabbix.com/zabbix/6.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.4-1+ubuntu22.04_all.deb
sudo dpkg -i zabbix-release_6.4-1+ubuntu22.04_all.deb
sudo apt update
sudo apt install -y zabbix-server-mysql zabbix-frontend-php zabbix-nginx-conf zabbix-sql-scripts zabbix-agent
6. 데이터베이스 초기화
Zabbix 데이터베이스 스키마를 가져옵니다.
sudo zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql -u zabbix -p zabbix
7. Nginx 가상 호스트 설정
Zabbix용 Nginx 설정을 생성합니다.
sudo nano /etc/nginx/conf.d/zabbix.conf
다음 내용을 추가합니다:
server {
listen 13000;
server_name your_domain.com;
root /usr/share/zabbix;
index index.php;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php/php8.1-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
8. PHP 설정
PHP-FPM 설정을 최적화합니다.
sudo nano /etc/php/8.1/fpm/php.ini
다음 값들을 수정:
- max_execution_time = 300
- max_input_time = 300
- memory_limit = 128M
- post_max_size = 16M
- upload_max_filesize = 2M
- date.timezone = Asia/Seoul
9. Zabbix 서버 설정
Zabbix 서버 설정 파일을 수정합니다.
sudo nano /etc/zabbix/zabbix_server.conf
다음 설정을 확인하고 수정:
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=your_password
10. 서비스 시작
모든 필요한 서비스를 시작하고 자동 시작되도록 설정합니다.
sudo systemctl restart zabbix-server zabbix-agent nginx php8.1-fpm
sudo systemctl enable zabbix-server zabbix-agent nginx php8.1-fpm
11. 방화벽 설정
필요한 포트를 개방합니다.
sudo ufw allow 13000/tcp
sudo ufw allow 10050/tcp
sudo ufw allow 10051/tcp
12. Zabbix 웹 인터페이스 설정
웹 브라우저에서 http://your_server_ip:13000 에 접속하여 초기 설정을 진행합니다.
- 기본 로그인 정보:
- 사용자: Admin
- 비밀번호: zabbix
- 초기 설정 마법사 단계를 따라 진행
- 데이터베이스 연결 정보 입력
- 시간대 설정
- 관리자 비밀번호 변경
13. Zabbix 클라이언트 연결
모니터링할 다른 서버에 Zabbix 에이전트를 설치합니다.
sudo apt install zabbix-agent
sudo nano /etc/zabbix/zabbix_agentd.conf
에이전트 설정에서 수정할 내용:
Server=your_zabbix_server_ip
ServerActive=your_zabbix_server_ip
Hostname=unique_host_name
주의사항
- 설치 후 반드시 기본 관리자 비밀번호를 변경하세요.
- 정기적으로 시스템과 Zabbix를 업데이트하세요.
- 중요한 설정 파일은 백업해두세요.