目录
注:这里为nignx版,apache版 和 具体配置参考:https://www.cnblogs.com/yjlch1016/p/8371049.html
环境
ubuntu 16.04
zabbix4.2
mysql5.7
nginx1.14
安装zabbix
zabbix-server:服务
zabbix-agent:代理(被检测)
安装nginx1.14、mysql5.7
网上资源很多,此处略
安装php7.0
add-apt-repository ppa:ondrej/php & apt install -y php7.0
安装php7.0插件
apt-get install -y php-fpm php-gd php-mbstring php-curl php-xml php-mcrypt php-mysql php-zip php-json php-redis php-memcached
安装zabbix4.2
wget http://repo.zabbix.com/zabbix/4.2/ubuntu/pool/main/z/zabbix-release/zabbix-release_4.2-1%2Bxenial_all.deb
dpkg -i zabbix-release_4.2-1+xenial_all.deb
apt-get update
安装zabbix插件
apt-get install -y zabbix-server-mysql zabbix-frontend-php zabbix-agent
mysql创建数据库、用户并授权
mysql -uroot -p
create database zabbix character set utf8 collate utf8_bin;
grant all privileges on zabbix.* to zabbix@localhost identified by '123456';
flush privileges;
exit;
数据导入数据库
zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -uzabbix -p zabbix
配置zabbix-server
mv /etc/zabbix/zabbix_server.conf /etc/zabbix/zabbix_server.conf.bak
vim /etc/zabbix/zabbix_server.conf
#日志文件
LogFile=/var/log/zabbix/zabbix_server.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_server.pid
SocketDir=/var/run/zabbix
DBHost=localhost
#数据库名
DBName=zabbix
#数据库用户名
DBUser=zabbix
#数据库密码
DBPassword=123456
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
#超时时间
Timeout=8
#自定义脚本存放路径
AlertScriptsPath=/usr/lib/zabbix/alertscripts
ExternalScripts=/usr/lib/zabbix/externalscripts
FpingLocation=/usr/bin/fping
Fping6Location=/usr/bin/fping6
LogSlowQueries=3000
配置zabbix-agent
mv /etc/zabbix/zabbix_agentd.conf /etc/zabbix/zabbix_agentd.conf.bak
vim /etc/zabbix/zabbix_agentd.conf
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
# 服务端ip
Server=192.168.206.131
ListenPort=10050
ListenIP=0.0.0.0
StartAgents=3
# 服务端ip
ServerActive=192.168.206.131
HostnameItem=system.hostname
Include=/etc/zabbix/zabbix_agentd.d/*.conf
配置zabbix前端代码(没有nginx可忽略)
cp -r /usr/share/zabbix/ /var/www/
卸载这个apache2,因为我用nginx
apt remove –y apache2
nginx配置文件
vim /etc/nginx/conf.d/zabbix.conf
server {
listen 80;
server_name 127.0.0.1;
access_log /opt/openresty/nginx/logs/zabbix_access.log;
error_log /opt/openresty/nginx/logs/zabbix_error.log;
root /var/www/zabbix/;
index index.php;
location = /zabbix {
proxy_pass http://127.0.0.1/zabbix.php?action=dashboard.view;
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
fastcgi_index index.php;
fastcgi_buffer_size 128k;
fastcgi_buffers 64 256k;
fastcgi_param SCRIPT_FILENAME /var/www/zabbix$fastcgi_script_name;
include fastcgi_params;
}
}
启动相关程序 (nginx加入服务参考https://blog.csdn.net/weixin_43789195/article/details/113740161)
systemctl start nginx
/etc/init.d/php7.0-fpm start
systemctl restart zabbix-server zabbix-agent
设置开机启动
systemctl enable zabbix-server zabbix-agent nginx
浏览器访问zabbix,请确保80端口正常监听即可
127.0.0.1/setup.php
验证环境,要全部是ok状态才可以,报错解决方案请移步
配置数据库连接信息
填写zabbix-server相关信息
完成创建,默认账号Admin,密码zabbix
安装zabbix-get
在server端用来检查agent端的一个命令
apt install -y zabbix-get
示例,自定义检测脚本检测失败考虑权限:755
zabbix_get -s 192.168.1.7 -p 10050 -k system.cpu.load[all,avg1]
#0.000000
OK.
单独安装客户端(被监控主机)
安装zabbix4.2
wget http://repo.zabbix.com/zabbix/4.2/ubuntu/pool/main/z/zabbix-release/zabbix-release_4.2-1%2Bxenial_all.deb
dpkg -i zabbix-release_4.2-1+xenial_all.deb
apt-get update
安装zabbix-agent
apt install zabbix-agent
配置zabbix-agent
vim /etc/zabbix/zabbix_agentd.conf
注意LogFile和Include路径,有可能略有差别
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
# 服务端ip
Server=192.168.206.131
ListenPort=10050
ListenIP=0.0.0.0
StartAgents=3
# 服务端ip
ServerActive=192.168.206.131
HostnameItem=system.hostname
Include=/etc/zabbix/zabbix_agentd.d/*.conf
启动zabbix-agent
systemctl start zabbix-agent
提示:请确保10050正常监听并能够和zabbix正常通信;
服务端添加新主机参考:https://www.cnblogs.com/qiuhom-1874/p/14007342.html
卸载zabbix
sudo apt-get --purge remove zabbix-server-mysql
sudo apt-get autoremove zabbix-server-mysql
sudo apt-get --purge remove zabbix-frontend-php
sudo apt-get autoremove zabbix-frontend-php
sudo apt-get --purge remove abbix-apache-conf
sudo apt-get autoremove abbix-apache-conf
sudo apt-get --purge remove zabbix-agent
sudo apt-get autoremove zabbix-agent
清理数据
sudo dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P
删除以上apt-get卸载的软件包
sudo apt-get autoclean
删除缓存的所有软件包
sudo apt-get clean
删除其他软件依赖的但现在已不用的软件包(保留配置文件)
sudo apt-get autoremove
OK.
问题及解决
根据报错信息提示修改php的参数
vim /etc/php/7.0/fpm/php.ini
post_max_size = 16M # 656行
max_execution_time = 300 # 368行
max_input_time = 300 # 378行
date.timezone = Asia/Shanghai # 新增
重启php7.0-fpm
/etc/init.d/php7.0-fpm restart
OK.