本篇文章记录了zabbix结合apache服务器和nginx服务器的搭建过程。
1. 安装yum源
rpm -Uvh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-2.el7.noarch.rpm
yum clean all
2. 安装依赖插件
yum provides '*/applydeltarpm'
yum -y install deltarpm
3. 安装Zabbix server,Web前端,agent(客户端,只负责采集数据,不依赖数据库),java-gateway(监控jvm进程)
yum -y install zabbix-server-pgsql zabbix-web-pgsql zabbix-agent zabbix-java-gateway
4. 创建初始数据库和数据库用户(在数据库服务器执行)
zabbix和数据库不在同一台服务器上需要在数据库服务器创建zabbix用户
groupadd -r zabbix
useradd -g zabbix -r -s /sbin/nologin zabbix
sudo -u postgres createuser --pwprompt zabbix
sudo -u postgres createdb -O zabbix zabbix
5. 导入Zabbix初始数据(在数据库服务器执行,如果zabbix和数据库不在一台服务器,需要把文件拷到数据库服务器上执行)
zcat /usr/share/doc/zabbix-server-pgsql*/create.sql.gz | sudo -u zabbix psql zabbix
6. 配置Zabbix服务端数据库
zabbix和数据库不在同一台服务器上需要
DBHost=
vim /etc/zabbix/zabbix_server.conf 内容如下:
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
JavaGateway=192.168.56.100 ### java-gateway ip地址
StartJavaPollers=5 ### 预启动进程轮训个数
7. 为Zabbix前端配置PHP
vim /etc/httpd/conf.d/zabbix.conf
把php_value date.timezone Europe/Riga 前面的注释去掉
8. 启动Zabbix server和agent进程(使用apache做web服务器)
systemctl start/restart/stop zabbix-server zabbix-agent httpd
systemctl enable zabbix-server zabbix-agent httpd
9. 配置Zabbix前端
http://192.168.56.100/zabbix
除了数据库配置和zabbix服务端配置,其他的直接下一步就可以了
默认账号/密码:Admin/zabbix
10. 点击用户头像可以设置用户属性,包括修改监控界面语言
------------------ 监控 springboot项目待研究 ---------------------------------------
11. 配置java-gateway
vim /etc/zabbix/zabbix_java_gateway.conf
12. 启动zabbix_java_gateway
systemctl restart zabbix-java-gateway
systemctl enable zabbix-java-gateway
----------------------------------------------------------------------------------------------
13. 查看zabbix-server日志:
cat /var/log/zabbix/zabbix_server.log
--------------------- 使用nginx做web服务器 ------------------------------------
14. 安装php-fpm(装zabbix时默认会装PHP。但是默认用的是apache服务器,不会装php-fpm)
yum -y install php-fpm
配置文件路径: /etc/php-fpm.conf /etc/php-fpm.d/www.conf(子配置文件)
15. 配置php时区(默认是UTC),不配置的话也面登录的时候会报错
vim /etc/php.ini
date.timezone = PRC
post_max_size = 16M
max_execution_time = 300
max_input_time = 300
16. 启动php-fpm
systemctl enable php-fpm
systemctl start php-fpm
17. 配置nginx支持php-cgi(common gate-way interface),/etc/nginx/conf.d目录(该目录下的配置文件会被主配置文件引入)下新建zabbix.conf配置文件内容如下
server {
listen 8081;
server_name localhost;
access_log /data/log/zabbix/zabbix_access.log main;
error_log /data/log/zabbix/zabbix_error.log; # 如果遇到问题,要善用这个错误日志文件
#location / {
# root /usr/share/zabbix;
# index zabbix.html zabbix.php;
#}
# redirect server error pages to the static page /50x.html
#
#error_page 500 502 503 504 /50x.html;
#location = /50x.html {
# root /usr/share/nginx/html;
#}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ \.php$ {
root /usr/share/zabbix; # 这个一定要配,起初我以为只要在location / 配了更目录这里就不用配了,结果折腾了半天 $document_root就是指向这个目录的
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
18. 页面访问
http://192.168.56.100:8081/index.php
19. zabbix-agent配置(agent和server不在同一台服务去)
vim /etc/zabbix/zabbix_agentd.conf
Server= [zabbix 服务端ip]
ServerActive=[zabbix 服务端ip]
Hostname=[zabbix客户端主机名]