centos7基于lnmp架构安装zabbix 5.0
zabbix 5.0 版本于2020年 5 月 11 日正式发布,是最新的 LTS(长期支持)版本,5.0 带来很多功能和特性,接下来,我们先把它部署上
![a1b76a00be1cc6b1b3631c9be2f76f2c.png](https://i-blog.csdnimg.cn/blog_migrate/24dbc6ddda61ce4840296a503d97e667.jpeg)
1.环境要求
一个软件刚刚更新发布新版本没多久,这时候不要去百度搜索什么的,资料很少的,我们直接去看官方文档,你想要的官方文档里都有,我们先看看官方文档上 zabbix 5.0的安装要求
REQUIRED SOFTWARE
Zabbix is built around modern web servers, leading database engines, and PHP scripting language.
DATABASE MANAGEMENT SYSTEM
| Software | Version | Comments |
| *MySQL* | 5.5.62 - 8.0.x | Required if MySQL is used as Zabbix backend database. InnoDB engine is required. MariaDB (10.0.37 or later) also works with Zabbix. We recommend using the [MariaDB Connector/C](https://downloads.mariadb.org/connector-c/) library for building server/proxy regardless of whether you use a MySQL or MariaDB database server. |
| *Oracle* | 11.2 or later | Required if Oracle is used as Zabbix backend database. |
| *PostgreSQL* | 9.2.24 or later | Required if PostgreSQL is used as Zabbix backend database. It is suggested to use at least PostgreSQL 8.3, which [introduced much better VACUUM performance](https://www.postgresql.org/docs/8.3/static/release-8-3.html). |
| *TimescaleDB* | 1.0 or later, OSS (free) version | Required if TimescaleDB is used as Zabbix backend database. |
| *SQLite* | 3.3.5 or later | SQLite is only supported with Zabbix proxies. Required if SQLite is used as Zabbix proxy database. |
FRONTEND
The minimum supported screen width for Zabbix frontend is 1200px.
| 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官方文档
从这段资料中可以看出,zabbix 5.0最大的变化,就是php版本要求 7.2以上,而centos7的默认源php版本是5.4,所以这里我们就要使用第三方php的yum源了
2:安装php 7.2以及zabbix 所需的php扩展模块
安装php第三方源
yum install epel-release.noarch -yrpm -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 = apachegroup = apache修改为user = nginxgroup = nginx
修改nginx的配置文件
vim /etc/nginx/nginx.confworker_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 /html; index index.php index.html index.htm; } location ~ .php$ { root /html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /html$fastcgi_script_name; include fastcgi_params; } }}
启动nginx和php-fpm
systemctl start nginxsystemctl enable nginxsystemctl start php-fpmsystemctl enable php-fpm
3:安装zabbix-web
cd /opt/#下载源码包wget https://cdn.zabbix.com/zabbix/sources/stable/5.0/zabbix-5.0.4.tar.gztar xf zabbix-5.0.4.tar.gzmkdir /html#拷贝zabbix-web到站点目录cp -a zabbix-5.0.4/ui/* /html#修改站点目录属主和属组chown -R nginx:nginx /html
使用浏览器访问http://
![c1f9b5e23e5fea964847660b06cb2523.png](https://i-blog.csdnimg.cn/blog_migrate/0b34ecb31d0fd82b4fe1b631f761a5d1.jpeg)
发现页面打不开,不要慌,我们看下日志
[root@zabbix-5 opt]# cat /var/log/nginx/error.log 2020/10/08 10:29:01 [error] 12403#0: *1 FastCGI sent in stderr: "PHP message: PHP Warning: session_start(): open(/var/lib/php/session/sess_f8b4d79c68b0ec44a225bd3419783d60, O_RDWR) failed: No such file or directory (2) in /html/include/classes/core/CSession.php on line 45PHP message: PHP Warning: session_start(): Failed to read session data: files (path: /var/lib/php/session) in /html/include/classes/core/CSession.php on line 45PHP message: PHP Fatal error: Uncaught Exception: Cannot start session. in /html/include/classes/core/CSession.php:46Stack trace:#0 /html/setup.php(66): CSession::start()#1 {main} thrown in /html/include/classes/core/CSession.php on line 46" while reading response header from upstream, client: 192.168.2.8, server: localhost, request: "GET /setup.php HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "192.168.2.121"
从这段日志分析来看,php执行函数session_start出错,原因是没有目录/var/lib/php/session
[root@zabbix-5 opt]# ls /var/lib/php/sessionls: cannot access /var/lib/php/session: No such file or directory#这里可以发现,确实没有这个目录解决方法:mkdir /var/lib/php/sessionchown -R nginx:nginx /var/lib/php/session
再次刷新浏览器,问题解决
![0a991c898099fb5466793bc96d004e55.png](https://i-blog.csdnimg.cn/blog_migrate/5aa205876cbe92f8bd629860500993c8.jpeg)
接下来,点击Next step
![d24185d64407db3230c30fe3d1a5a525.png](https://i-blog.csdnimg.cn/blog_migrate/7cb17d3776d4d38cdccb60aa37577ecf.jpeg)
这里有几个警告,我们处理下
vim /etc/php.inipost_max_size = 8M修改为post_max_size = 16Mmax_execution_time = 30修改为max_execution_time = 300max_input_time = 60修改为max_input_time = 300;date.timezone =去掉注释,并修改为date.timezone = Asia/Shanghai#重启php-fpm,并刷新浏览器systemctl restart php-fpm.service
![9a6d22c177e2e7fe555299128d6c7cb9.png](https://i-blog.csdnimg.cn/blog_migrate/846463ad4e9b70686622e46a9cca0f75.jpeg)
干干净净,这下舒服了
继续点击Next step
![cc324a8a7874b1861fb7e1eee2de1ad4.png](https://i-blog.csdnimg.cn/blog_migrate/ea022b4e5a02bf6667b83f66c159a736.jpeg)
到这里,我们先等一等,先安装下数据库和zabbix-server
4:安装zabbix-server
安装数据库
yum install mariadb-server.x86_64 -y systemctl start mariadb.service systemctl enable mariadb.service #建议执行下mysql_secure_installation#为zabbix创库授权[root@zabbix-5 opt]# mysql -uroot -pEnter 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 zabbix@localhost identified by '123456';Query OK, 0 rows affected (0.00 sec)MariaDB [(none)]> quit
安装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.rpmyum 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=localhostDBName=zabbixDBUser=zabbixDBPassword=123456
启动zabbix-server
systemctl start zabbix-server.service systemctl enable zabbix-server.service#检查zabbix-server启动情况[root@zabbix-5 opt]# netstat -lntup|grep 10051tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 13190/zabbix_server tcp6 0 0 :::10051 :::* LISTEN 13190/zabbix_server
5:最后的安装
继续访问浏览器
![2808cca30d03595980b57d74e6168175.png](https://i-blog.csdnimg.cn/blog_migrate/a8501009dc4160f434698844a5ccf03d.jpeg)
下一步
![31d7f15814f66c1e872cb56d104e4787.png](https://i-blog.csdnimg.cn/blog_migrate/34b977cf8ecb9a2a0608dbd6ca7c513b.jpeg)
继续下一步
![1277784d6043510ca5c0706fb026072b.png](https://i-blog.csdnimg.cn/blog_migrate/60c7fb8b03a62be5773fe3091ef0272a.jpeg)
继续下一步
![479bf0ee08d9a93fff9041e90badc6ae.png](https://i-blog.csdnimg.cn/blog_migrate/893f775f4d5bf8137bbdcd4b451f43f8.jpeg)
点击完成,会自动跳转到登陆页面
![34df2bda150a6278b6abec1d6bc291c8.png](https://i-blog.csdnimg.cn/blog_migrate/9c9d3c44df9b4c49cfde3966de8f5ccd.jpeg)
初始的用户是Admin,密码zabbix(注意大小写)
登录成功之后的页面
![9727bf2e1203b267f96c4419ad8d3e96.png](https://i-blog.csdnimg.cn/blog_migrate/d2ec1de562d159df6fff6151280ed21d.jpeg)
这个web界面和之前的版本变化很大
关于zabbix 5.0的其他使用技巧,后续再更新
原文链接:https://mp.weixin.qq.com/s/K4A1WA4zyGzZwvO1JO_vBw