最近在做zabbix监控,网上很多都是用centos+mariadb(mysql)搭建的,不适合我喜爱的debian系统,特意去bing搜索了一遍国外的教程,特此笔录
1、挑选部分依赖安装
sudo apt -y install sudo git nano ccze mc iptraf net-tools dnsutils net-tools fping
赋予fping权限以便其他程序使用
sudo chmod u+s /usr/bin/fping
2、安装应用服务器以及周边环境
sudo apt -y install nginx php7.3 php7.3-cli php7.3-fpm php7.3-pgsql php7.3-bcmath php7.3-mbstring php7.3-gd php7.3-xml php7.3-snmp
#应用服务器nginx,以及zabbix需要调用的部件
sudo apt -y install snmp snmpd nmap snmp-mibs-downloader
#安装snmp监控相关部件以及mibs树
nmap localhost
#配置本地
3、安装数据库以及zabbix
sudo apt -y install postgrssql
sudo apt -y install postgresql-all
sudo apt -y install zabbix-server-pgsql zabbix-frontend-php zabbix-agent
4、配置数据库
sudo su postgres #切换到postgres用户
psql #进入postgresql
CREATE DATABASE zabbix;
CREATE USER zabbix WITH PASSWORD 'zabbix';
GRANT ALL PRIVILEGES ON DATABASE zabbix to zabbix;
\q
5、导入数据模式
法一:
zcat /usr/share/doc/zabbix-server-pgsql/create.sql.gz | sudo -u zabbix psql zabbix
或者
法二
postgres@ #在postgres用户下
gunzip --stdout /usr/share/zabbix-server-pgsql/schema.sql.gz | psql -h localhost -U zabbix -d zabbix -W
gunzip --stdout /usr/share/zabbix-server-pgsql/images.sql.gz | psql -h localhost -U zabbix -d zabbix -W
gunzip --stdout /usr/share/zabbix-server-pgsql/data.sql.gz | psql -h localhost -U zabbix -d zabbix -W
exit
6、配置zabbix服务器
sudo vim /etc/zabbix/zabbix_server.conf
配置以下内容
ListenPort=10051
SourceIP=0.0.0.0
LogType=file
LogFile=/var/log/zabbix/zabbix_server.log #按需调整
LogFileSize=128 #按需调整
DebugLevel=3
PidFile=/var/run/zabbix/zabbix_server.pid
SocketDir=/var/run/zabbix #按需调整
DBHost=localhost #配置本地数据库
DBName=zabbix #配置数据库名称(上文已创建)
DBUser=zabbix #配置数据库用户(上文已创建)
DBPassword=zabbix #配置数据库密码
DBPort=5432
Timeout=4
LogSlowQueries=3000
7、配置php
sudo vim /etc/php/7.3/php.ini
修改以下行(因为zabbix基于php开发)
max_execution_time = 300
memory_limit = 128M
post_max_size = 16M
upload_max_filesize = 2M
max_input_time = 300
date.timezone = Asia/Chongqing #按需配置
8、创建zabbix的nginx链接
由于apt安装zabbix默认根目录在/usr/share/zabbix下,所以需要在nginx服务器上新建链接
也可以调整nginx的根目录位置到/usr/share/zabbix,只是不建议(个人见解)
sudo ln -s /usr/share/zabbix /var/www/html
9、添加访问主页
删除/etc/nginx/sites-available/default文件和/etc/nginx/sites-enabled/default
在/etc/nginx/conf.d/新建zabbix.conf
server {
listen 80;
server_name _;
root /var/www/html/zabbix;
index index.php;
location ~ [^/]\.php(/|$) {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_index index.php;
fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
}
access_log /var/log/nginx/zabbix-access.log;
error_log /var/log/nginx/zabbix-error.log;
}
10、设置启动
sudo systemctl enable zabbix-server.service #开机自启动
sudo systemctl enable zabbix-agent.service #开机自启动
sudo systemctl start zabbix-server.service #现在启动
sudo systemctl start zabbix-agent.service #现在启动
sudo systemctl restart nginx
访问本地 http://localhost
Reference:
https://www.sysadminsdecuba.com/2019/07/instalacion-de-zabbixnginxpostgres-sobre-debian-10/