一、安装
1、前期安装准备
前期准备一个大一点的分区准备用于zabbix 数据库的存放,为方便后期扩容,我们在这里选择新加一个磁盘并以LVM的方式进行挂载(此处省略虚拟机添加硬盘等操作)
# df -h \看到新盘已经挂载到VAR/LIB/MYSQL目录了
替换yum源
刚安装好的Centos自带的yum源是无法使用的,要替换成国内的YUM源
# mv /etc/yum.repos.d/ /etc/yum.repos.d.bak \备份自带的yum源
# mkdir /etc/yum.repos.d \创建新的yum源存放目录
# cd /etc/yum.repos.d \切换到新的yum源存放目录下
# wget http://mirrors.163.com/.help/CentOS7-Base-163.repo \下载Centos7的Yum源 # ls \查看是否下载成功
2、安装zabbix RPM源
2.1下载zabbix RPM源包
# wget https://repo.zabbix.com/zabbix/4.2/rhel/7/x86_64/zabbix-release-4.2-2.el7.noarch.rpm \下载Zabbix4.2yum源
# ls
2.2安装zabbix RPM源包
# rpm -i zabbix-release-4.2-2.el7.noarch.rpm \安装Zabbix4.2源码包
安装时会出现告警,原因是因为GPG Keys版本不对,解决方法如下
(参考文档 :https://www.cnblogs.com/tijun/p/8651709.html)
# rpm --import /etc/pki/rpm-gpg/RPM* \导入新密钥
# rpm -e zabbix-release \卸载刚才装的zabbix RPM源
# rpm -qa|grep zabbix \查询是否已经卸载
# rpm -i zabbix-release-4.2-2.el7.noarch.rpm \再安装上就没有警告了,并且安装成功
3、安装zabbix组件(zabbix-server、zabbix-web-mysql、zabbix-agent)
# yum install zabbix-server-mysql.x86_64 zabbix-web-mysql.noarch zabbix-agent.x86_64 安装Zabbix4.2组件
因显示数目过多,中间省略一部分
因显示数目过多,中间省略一部分
4、安装mysql数据库,导入zabbix数据库
4.1安装mysql数据库
我们的系统中没有安装MYSQL,需要先安装一个MYSQL(ZABBIX官方默认已安装)
4.1.1下载mysql repo源
# wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
4.1.2安装mysql repo源
# rpm -i mysql-community-release-el7-5.noarch.rpm
4.2安装mysql-server
# yum install mysql-server
4.3安装完成后启动服务,并将mysql服务设置为开机启动。
4.4初始化mysql
# mysql_secure_installation
4.5创建zabbix数据库,并授权
#mysql -u root -p \使用root用户登录mysql数据库 Enter password: P@ssw0rd \输入密码 Mysql >create database zabbix character set utf8 collate utf8_bin;
Mysql > grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
(赋予来自localhost的zabbix用户对zabbix数据库的所有表拥有所有操作的所有权限,并设定密码为zabbix。如grant all privileges on A.* to B@C identified by ‘D’;的意思即为赋予来自C主机的B用户对A数据库的所有表=*拥有所有操作的所有权限=all,并设定密码为D)
4.6导入zabbix数据库
将zabbix制作好的数据库导入mysql数据库中
# zcat /usr/share/doc/zabbix-server-mysql-4.2.6/create.sql.gz |mysql -uzabbix -p zabbix
# mysql -u zabbix -p
Enter password: zabbix 输入zabbix密码 mysql>use zabbix; \切换到zabbix数据库 mysql>show tables;
此时数据库已经配置完成了
5、配置zabbix
5.1配置zabbix配置文件
# vim /etc/zabbix/zabbix_server.conf
DBPassword=zabbix \添加一行
修改zabbix服务器时区
# vim /etc/httpd/conf.d/zabbix.conf
php_value date.timezone Asia/Shanghai \新加一行
5.2启动服务
# systemctl start zabbix-server.service
5.3排错
参考文档 https://www.cnblogs.com/awakenedy/articles/9134242.html
首先我们查看当前selinux级别
# getenforce \查看当前selinux级别
我们将selinux临时设置为permissive模式
# setenforce 0 \修改目前selinux级别为permissive # getenforce \查看当前selinux级别
# systemctl start zabbix-server.service \再次启动zabbix-server服务,查看是否是selinux的影响
这里可以得知是selinix影响了zabbix-server服务的启动
# reboot \重启服务器
# systemctl start zabbix-server.service
那么我们查看selinux的日志
tail -n 1 /var/log/messages \查看系统日志的最后一行
按照selinux提供的建议我们执行以下2个命令(需要仔细看日志,命令可能不一样)
# ausearch -c 'httpd' --raw | audit2allow -M my-httpd # semodule -i my-httpd.pp
将Selinux改成enforcing模式
启动服务 systemctl start zabbix-server systemctl start zabbix-agent systemctl start httpd
systemctl enable zabbix-server.service zabbix-agent.service httpd.service
二、配置zabbix web
登录zabbix
在浏览器输入host IP/zabbix
组件检查
配置数据库
配置zabbix服务器资料
验证配置
登录初始化
进行汉化设置
中文设置完成
汉化完成
2、排错
在汉化过程中你会发现一直有一个错误
先考虑是否是selinux的问题
现将selinux设置为pervissive
# setenforce 0 # getenforce
再次刷新网页
报错消失页面恢复正常
我们看看selinux的日志记录
# tail -n 5 /var/log/messages
按照selinux提供的建议我们执行以下2个命令
# ausearch -c 'httpd' --raw | audit2allow -M my-httpd # semodule -i my-httpd.pp
重启三个服务
# systemctl restart zabbix-server.service zabbix-agent.service httpd.service
将selinux还原
# setenforce 1 # getenforce
再次重启服务
# systemctl restart zabbix-server.service zabbix-agent.service httpd.service
重新登录web
页面正常