部署Zabbix:
试验环境:将Zabbix web GUI、Zabbix database、Zabbix server放在一台主机上;
(1)zabbix-server、node1、node2、node3四台主机同步时间
(2)zabbix-server主机上:
zabbix的官方源是:http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/
zabbix-agent-3.4.4-2.el7.x86_64.rpm #被监控端使用的包
zabbix-get-3.4.4-2.el7.x86_64.rpm #server端连接别监控端,用于测试的包
zabbix-java-gateway-3.4.4-2.el7.x86_64.rpm #基于JMX监控的包
zabbix-sender-3.4.4-2.el7.x86_64.rpm #Agent端连接server端,用于测试的包
zabbix-server-mysql-3.4.4-2.el7.x86_64.rpm #mysql、pgsql选择性的安装一个
zabbix-server-pgsql-3.4.4-2.el7.x86_64.rpm
zabbix-proxy-mysql-3.4.4-2.el7.x86_64.rpm #Proxy使用的包选择性安装
zabbix-proxy-pgsql-3.4.4-2.el7.x86_64.rpm#Proxy使用的包选择性安装
zabbix-web-mysql-3.4.4-2.el7.noarch.rpm
zabbix-web-pgsql-3.4.4-2.el7.noarch.rpm#Zabbix使用web连接数据库的包
zabbix-web-3.4.4-2.el7.noarch.rpm #Zabbix web GUI核心包
zabbix-release-3.4-2.el7.noarch.rpm #Zabbix提供的源,建议先安装该包
wget http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm#获取源rpm包,该包提供了zabbix的repo仓库
rpm -ivh zabbix-release-3.4-2.el7.noarch.rpm#安装zabbix的源包
yum repolist#验证repo是否成功
注意:yum的epel源中也有zabbix包,可是比较老,不建议使用;
innodb_buffer_pool_size = 256M
mysql_secure_installation#建议跑一遍
(3)配置数据库(此处将数据库安装在zabbix主机上):
CREATE DATABASE zbxdb CHARACTER SET 'utf8';
GRANT ALL ON zbxdb.* TO 'zbxuser'@'%' IDENTIFIED BY 'zbxpass';
注意:zabbix-server-mysql包中提供了"/usr/lib/systemd/system/zabbix-server.service"服务启动脚本;"/usr/lib/zabbix/alertscripts、/usr/lib/zabbix/externalscripts"这两个目录下存放着脚本;"/usr/share/doc/zabbix-server-mysql-3.4.4/create.sql.gz"该文件提供了创建zabbix所需要的相关表的命令;
cp /usr/share/doc/zabbix-server-mysql-3.4.4/create.sql.gz ./
mysql -uzbxuser -h192.168.109.7 -pzbxpass zbxdb < create.sql
注意:将create.sql文本中的命令,导入到zbxdb数据库中;由于需要创建一百多张表,所以需要一点时间;
(4)编辑server的配置文件:
grep -i ^#### zabbix_server.conf
注意:zabbix_server.conf配置文件中有四大段:
ADVANCED PARAMETERS:扩展配置,不需要改动;
TLS-RELATED PARAMETERS:基于加密的配置,不建议使用加密策略;
systemctl status zabbix-server
显示active (running),表名zabbix_server配置OK
注意:zabbix服务是由zabbix用户来运行的;
SourceIP:是用来针对Agent收集采样数据后,发送给zabbix服务端,使用的IP;并不是server要监听的IP;
LogFile=/var/log/zabbix/zabbix_server.log:注意该文件很关键;
DBHost:数据库的地址,注意,要和数据库中所授权的一致;
DBName:数据库的名称,注意注意和授权是指定的数据库名称保持一致;
DBUser:数据库的用户,注意和授权是指定的用户保持一致;
DBPassword:数据库的密码,注意和授权是指定的用户密码保持一致;
DBSocket:有用到的话,注意需要配置Socket的地址;
(5)启动httpd服务:
less /etc/httpd/conf.d/zabbix.conf
# php_value date.timezone Europe/Riga
注意:/etc/httpd/conf.d/zabbix.conf配置文件中该项被注释掉了,原因是,zabbix认为php的配置中已经对时区做了配置;所以此处,并不需要修改,建议改动/etc/php.ini配置文件中的配置;
在浏览器中便可以访问,示例:http://172.17.252.75/zabbix
(6)将一台主机纳入到监控系统中去:
wget http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
rpm -ivh zabbix-release-3.4-2.el7.noarch.rpm
yum install zabbix-agent zabbix-sender
注意:zabbix-sender属于非必需的包;
grep -i ^#### zabbix_agentd.conf
GENERAL PARAMETERS:全局配置:
Passive checks related:主动监控;
Active checks related:主动监控;
ADVANCED PARAMETERS:扩展配置,不需要改动;
USER-DEFINED MONITORED PARAMETERS:用户自定义监控参数
LOADABLE MODULES:加载的模块
TLS-RELATED PARAMETERS:基于加密的配置;
grep -i ^[^#] zabbix_agentd.conf #查看开启的配置
systemctl start zabbix-agent.service
显示active (running),表名zabbix_server配置OK
ListenPort:Agent监听的端口,10050。server监听在10051;
EnableRemoteCommands:是否允许执行来自server主机的命令,默认关闭;
StartAgents:被监控项,默认是三个,可以根据需要设置;