Zabbix 공식 홈페이지의 가이드를 참고삼아서 설치한다. 21년 3월 27일 기준
OS : Ubuntu 20.04
관련 파일 다운로드
선택하고 스크롤 내려보면 친절하게 명령어가 나와있음 고대로 따라하면 된다.
# a. Install Zabbix repository
wget https://repo.zabbix.com/zabbix/5.2/ubuntu/pool/main/z/zabbix-release/zabbix-release_5.2-1+ubuntu20.04_all.deb
dpkg -i zabbix-release_5.2-1+ubuntu20.04_all.deb
apt update
# b. Install Zabbix server, frontend, agent
apt install zabbix-server-mysql zabbix-frontend-php zabbix-nginx-conf zabbix-agent
MySQL 5.7 설치
a와 b를 따라했다면 DB에 Zabbix 환경구성을 해줘야하는데 MySQL5.7 버전을 사용한다.
만약 다른 버전의 MySQL이 존재한다면
apt-get remove --purge mysql
rm -rf /var/log/mysql
rm -rf /etc/mysql
rm -rf /var/lib/mysql
위의 명령어로 관련 파일들을 모 지워준다.
2-1. MySQL5.7 패키지 다운로드
> wget http://repo.mysql.com/mysql-apt-config_0.8.10-1_all.deb
2-2. 패키지 설치
dpkg -i mysql-apt-config_0.8.10-1_all.deb
2-3. MySQL 5.7 버전을 설치하도록 설정
dpkg-reconfigure mysql-apt-config
2-4. 패키지 정확한 이름 확인
> apt-cache policy mysql-serve
mysql-server:
설치: 5.7.33-1ubuntu18.04
후보: 8.0.23-0ubuntu0.20.04.1
버전 테이블:
8.0.23-0ubuntu0.20.04.1 500
500 http://ftp.daumkakao.com/ubuntu focal-updates/main amd64 Packages
500 http://ftp.daumkakao.com/ubuntu focal-updates/main i386 Packages
500 http://security.ubuntu.com/ubuntu focal-security/main amd64 Packages
500 http://security.ubuntu.com/ubuntu focal-security/main i386 Packages
8.0.19-0ubuntu5 500
500 http://ftp.daumkakao.com/ubuntu focal/main amd64 Packages
500 http://ftp.daumkakao.com/ubuntu focal/main i386 Packages
*** 5.7.33-1ubuntu18.04 500
500 http://repo.mysql.com/apt/ubuntu bionic/mysql-5.7 amd64 Packages
100 /var/lib/dpkg/status
5.7.33-1ubuntu18.04
이 MySQL패키지의 이름이다.
2-5. 설치
apt-get install mysql-server=5.7.33-1ubuntu18.04
apt-get install mysql-community-server=5.7.33-1ubuntu18.04
apt-get install mysql-client=5.7.33-1ubuntu18.04
2-6. MySQL 초기설정
mysql_secure_installation
DB 초기화
스키마와 데이터를 초기화해준다.
mysql -uroot -p
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> create user zabbix@localhost identified by 'password';
mysql> grant all privileges on zabbix.* to zabbix@localhost;
mysql> quit;
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
Zabbix 서버 Configuration 수정
DB의 정보를 입력한다.
vi /etc/zabbix/zabbix_server.conf
DBName=zabbix
DBUser=zabbix
DBPassword=password
vi /etc/zabbix/zabbix_proxy.conf
DBName=zabbix
DBUser=zabbix
DBPassword=password
nginx 설정
server {
listen 8080;
server_name monitor.g3.miridih.com;
root /usr/share/zabbix;
index index.php;
location = /favicon.ico {
log_not_found off;
}
location / {
try_files $uri $uri/ =404;
}
location /assets {
access_log off;
expires 10d;
}
location ~ /\.ht {
deny all;
}
location ~ /(api\/|conf[^\.]|include|locale) {
deny all;
return 404;
}
location ~ [^/]\.php(/|$) {
fastcgi_pass unix:/var/run/php/zabbix.sock;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_index index.php;
fastcgi_param DOCUMENT_ROOT /usr/share/zabbix;
fastcgi_param SCRIPT_FILENAME /usr/share/zabbix$fastcgi_script_name;
fastcgi_param PATH_TRANSLATED /usr/share/zabbix$fastcgi_script_name;
include fastcgi_params;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_intercept_errors on;
fastcgi_ignore_client_abort off;
fastcgi_connect_timeout 60;
fastcgi_send_timeout 180;
fastcgi_read_timeout 180;
fastcgi_buffer_size 128k;
fastcgi_buffers 4 256k;
fastcgi_busy_buffers_size 256k;
fastcgi_temp_file_write_size 256k;
}
}
listen
과 server_name
만 주석처리 되어있는데 주석해제 후 원하는 도메인과 포트를 입력한다.Zabbix 시작
systemctl restart zabbix-server zabbix-agent nginx php7.4-fpm
systemctl enable zabbix-server zabbix-agent nginx php7.4-fpm
웹 접속
이제 위에서 설정한 도메인으로 접속이 되는지 확인하면 끝.
*DNS에 A레코드로 추가필요