30.zabbix5.0搭建
程序员文章站
2022-03-13 16:59:30
...
zabbix5.0搭建
zabbix 5.0 版本于 2020 年 5 月 11 日正式发布,是最新的 LTS(长期支持)版本,5.0 带来很多功能和特性
Software | Version | Comments |
---|---|---|
Apache | 1.3.12 or later | |
PHP | 7.2.0 or later | |
PHP extensions: | ||
gd | 2.0.28 or later | PHP GD extension must support PNG images (–with-png-dir), JPEG (–with-jpeg-dir) images and FreeType 2 (–with-freetype-dir). |
bcmath | php-bcmath (–enable-bcmath) | |
ctype | php-ctype (–enable-ctype) | |
libXML | 2.6.15 or later | php-xml, if provided as a separate package by the distributor. |
xmlreader | php-xmlreader, if provided as a separate package by the distributor. | |
xmlwriter | php-xmlwriter, if provided as a separate package by the distributor. | |
session | php-session, if provided as a separate package by the distributor. | |
sockets | php-net-socket (–enable-sockets). Required for user script support. | |
mbstring | php-mbstring (–enable-mbstring) | |
gettext | php-gettext (–with-gettext). Required for translations to work. | |
ldap | php-ldap. Required only if LDAP authentication is used in the frontend. | |
openssl | php-openssl. Required only if SAML authentication is used in the frontend. | |
mysqli | Required if MySQL is used as Zabbix backend database. | |
oci8 | Required if Oracle is used as Zabbix backend database. | |
pgsql | Required if PostgreSQL is used as Zabbix backend database. |
以上内容来自于 zabbix 官方文档
1.安装 php 7.2 以及 zabbix 所需的 php 扩展模块
#安装 php 第三方源
yum install epel-release.noarch -y
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
#安装 nginx、php7.2 和所需 php 扩展模块
yum install nginx php72w-cli php72w-fpm php72w-common php72w-mysqlnd php72w-mbstring php72w-gd php72w-bcmath php72w-ldap php72w-xml -y
注意:webtatic 源在国外,容易失败
#修改 php 的配置文件
vim /etc/php-fpm.d/www.conf
user = apache
group = apache
修改为
user = nginx
group = nginx
#修改 nginx 的配置文件
vim /etc/nginx/nginx.conf
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name localhost;
location / {
root /home/zabbix;
index index.php index.html index.htm;
}
location ~ \.php$ {
root /home/zabbix;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /home/zabbix$fastcgi_script_name;
include fastcgi_params;
}
}
}
#启动 nginx 和 php-fpm
systemctl start nginx
systemctl enable nginx
systemctl start php-fpm
systemctl enable php-fpm
2.安装 zabbix-web
cd /opt/
#下载源码包
wget https://cdn.zabbix.com/zabbix/sources/stable/5.0/zabbix-5.0.4.tar.gz
tar xf zabbix-5.0.4.tar.gz
mkdir /home/zabbix
#拷贝zabbix-web到站点目录
cp -a zabbix-5.0.4/ui/* /home/zabbix
#修改站点目录属主和属组
chown -R nginx:nginx /home/zabbix
发现页面打不开,我们看下日志
[aaa@qq.com opt]# tail -100f /var/log/nginx/error.log
2020/10/23 09:39:42 [error] 6138#0: *1 FastCGI sent in stderr: "PHP message: PHP Warning: session_start(): open(/var/lib/php/session/sess_1f917dbd048d410b869254e9597f4c68, O_RDWR) failed: No such file or directory (2) in /home/zabbix/include/classes/core/CSession.php on line 45
PHP message: PHP Warning: session_start(): Failed to read session data: files (path: /var/lib/php/session) in /home/zabbix/include/classes/core/CSession.php on line 45
PHP message: PHP Fatal error: Uncaught Exception: Cannot start session. in /home/zabbix/include/classes/core/CSession.php:46
Stack trace:
#0 /home/zabbix/setup.php(66): CSession::start()
#1 {main}
thrown in /home/zabbix/include/classes/core/CSession.php on line 46" while reading response header from upstream, client: 192.168.34.19, server: localhost, request: "GET /setup.php HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "192.168.10.62"
从这段日志分析来看,php 执行函数 session_start 出错,原因是没有目录/var/lib/php/session
[aaa@qq.com opt]# ll /var/lib/php/session
ls: cannot access /var/lib/php/session: No such file or directory
[aaa@qq.com opt]# mkdir -p /var/lib/php/session
[aaa@qq.com opt]# chown -R nginx:nginx /var/lib/php/session
再次刷新浏览器,问题解决
这里有告警
vim /etc/php.ini
post_max_size = 8M
修改为
post_max_size = 16M
max_execution_time = 30
修改为
max_execution_time = 300
max_input_time = 60
修改为
max_input_time = 300
;date.timezone =
去掉注释,并修改为
date.timezone = Asia/Shanghai
#重启php-fpm,并刷新浏览器
systemctl restart php-fpm.service
刷新一下
点击Next step
到这里,先安装下数据库和 zabbix-server
3.安装 zabbix-server
#安装数据库
yum install mariadb-server.x86_64 -y
systemctl start mariadb.service
systemctl enable mariadb.service
#建议执行下mysql_secure_installation
#为zabbix创库授权
[aaa@qq.com opt]# mysql -uroot -p
Enter password:
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;
Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> grant all on zabbix.* to aaa@qq.com identified by '123456';
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> quit
4.安装 zabbix-server
rpm -ivh https://mirror.tuna.tsinghua.edu.cn/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
yum install zabbix-server-mysql -y
#导入zabbix初始数据文件
zcat /usr/share/doc/zabbix-server-mysql-*/create.sql.gz |mysql -uzabbix -p123456 zabbix
#修改 zabbix-server 配置
vim /etc/zabbix/zabbix_server.conf
#配置下数据库的连接信息
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=123456
#启动 zabbix-server
systemctl start zabbix-server.service
systemctl enable zabbix-server.service
#检查zabbix-server启动情况
[aaa@qq.com opt]# netstat -lntup|grep 10051
tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 6693/zabbix_server
tcp6 0 0 :::10051 :::* LISTEN 6693/zabbix_server
继续访问浏览器
下一步
下一步
下一步
显示此页面就是安装完成
5.汉化
到此就安装完成了,新的功能待后研究
6.监控本机
#安装zabbix-agent
yum install zabbix-agent -y
[aaa@qq.com opt]# systemctl start zabbix-agent
[aaa@qq.com opt]# systemctl enable zabbix-agent
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-agent.service to /usr/lib/systemd/system/zabbix-agent.service.
[aaa@qq.com opt]# netstat -lntp | grep 10050
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 6952/zabbix_agentd
tcp6 0 0 :::10050 :::* LISTEN 6952/zabbix_agentd
[aaa@qq.com opt]# systemctl restart zabbix-server
上一篇: 洛谷·付公主的背包