Rhel7.5下 zabbix 4.4 的安装与部署
一、实验环境(rhel7.5版本)
1.selinux和firewalld状态为disabled
2.各主机信息如下:
主机 | ip |
---|---|
server2(zabbix-agent) | 172.25.63.2 |
server3(zabbix-agent) | 172.25.63.3 |
server4(zabbix-server) | 172.25.63.4 |
二、zabbix-server的部署
1.安装zabbix
下载zabbix软件包及其对应依赖性对应的包,并进行安装
[root@server4 4.4]# yum install zabbix-server-mysql-4.4.1-1.el7.x86_64.rpm zabbix-web-mysql-4.4.1-1.el7.noarch.rpm zabbix-web-4.4.1-1.el7.noarch.rpm php-* fping-3.10-1.el7.x86_64.rpm -y
2.配置zabbix-database
安装数据库,对数据库安全初始化启动数据库,登陆数据库,并对数据库进行配置
[root@server4 4.4]# yum install mariadb-server -y
[root@server4 4.4]# systemctl start mariadb
[root@server4 4.4]# mysql_secure_installation
##输入回车 然后y 之后输入新密码,这里输入redhat,之后全部回车
登陆数据库,并对数据库进行配置:
[root@server4 4.4]# mysql -uroot -predhat
#创建zabbix数据库,因为之后要在web界面进行操作,为了防止乱码,这里创建的数据库要求格式为utf-8
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;
Query OK, 1 row affected (0.00 sec)
#创建zabbix用户,并对其进行授权
MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost identified by 'redhat';
Query OK, 0 rows affected (0.00 sec)
3.导入数据库
<1>先找到数据库要导入的位置:
[root@server4 4.4]# find / -name create.sql.gz
/usr/share/doc/zabbix-server-mysql-4.4.1/create.sql.gz
<2>导入数据库
[root@server4 4.4]# zcat /usr/share/doc/zabbix-server-mysql-4.4.1/create.sql.gz | mysql -uzabbix -p zabbix
Enter password: #这里的密码是zabbix用户的密码,输入之后,等待,不要ctrl+c
这里的第一个zabbix是用户,第二个zabbix是要创建数据库的名字
登陆数据库查看:
[root@server4 4.4]# mysql -uroot -predhat
MariaDB [(none)]> use zabbix;
MariaDB [zabbix]> show tables;
可以看到zabbix数据库中共有149张表
4.编辑zabbix配置文件
编辑zabbix配置文件,并启动zabbix-server与zabbix-agent服务
<1>先找到zabbix-server配置文件所在的位置
[root@server4 4.4]# rpm -ql zabbix-web | head
<2>编辑zabbix-server的配置文件(编辑vim /etc/zabbix/zabbix_server.conf)
[root@server4 4.4]# vim /etc/zabbix/zabbix_server.conf
124 DBPassword=redhat #zabbix用户的密码
<3>启动zabbix-server和zabbix-agent服务
[root@server4 4.4]# systemctl start zabbix-server
5.编辑zabbix-web配置文件
[root@server4 4.4]# vim /etc/httpd/conf.d/zabbix.conf
20 php_value date.timezone Asia/Shanghai
#更改时区
[root@server4 4.4]# systemctl start httpd #打开web服务器
6.访问测试
访问http://172.25.63.4/zabbix
,进行监控项配置即可
点击Next step
点击Finish,完成安装
输入Username:Admin和Password:zabbix。进入登陆界面(注意Admin的首字母需要大写
成功进入监控界面:
更改语言:
说明zabbix server配置成功。
三、监控zabbix-server
为了监控zabbix-server,为其本身安装zabbix-agent:
安装之前可以看出有错误:
1.安装并启动zabbix-agent
[root@server4 4.4]# yum install zabbix-agent-4.4.1-1.el7.x86_64.rpm -y
[root@server4 4.4]# systemctl start zabbix-agent
之后刷新网页就可以发现安装成功:
四、配置手动添加zabbix agent
现在开始为zabbix server配置一个真正的zabbix agent:
在server2:
1.安装zabbix-agent
下载zabbix-agent对应软件包:zabbix-agent-4.0.5-1.el7.x86_64.rpm,并进行安装
[root@server2 4.4]# rpm -ivh zabbix-agent-4.4.1-1.el7.x86_64.rpm
2.在网页端创建主机
下图表示添加成功:
可以看出此时server2并没有监控模板(即监控的策略),接下来就为server2添加模板:
点击server2:
点击更新后,可以看出模板已经添加成功:
3.配置zabbix-agent
配置zabbix-agent,并启动zabbix-agent服务
<1>先找到zabbix-agent配置文件所在的位置
[root@server2 4.4]# rpm -ql zabbix-agent
/etc/logrotate.d/zabbix-agent
/etc/zabbix/zabbix_agentd.conf
/etc/zabbix/zabbix_agentd.d
/etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf
/usr/lib/systemd/system/zabbix-agent.service
/usr/lib/tmpfiles.d/zabbix-agent.conf
/usr/sbin/zabbix_agentd
/usr/share/doc/zabbix-agent-4.4.1
/usr/share/doc/zabbix-agent-4.4.1/AUTHORS
/usr/share/doc/zabbix-agent-4.4.1/COPYING
/usr/share/doc/zabbix-agent-4.4.1/ChangeLog
/usr/share/doc/zabbix-agent-4.4.1/NEWS
/usr/share/doc/zabbix-agent-4.4.1/README
/usr/share/man/man8/zabbix_agentd.8.gz
/var/log/zabbix
/var/run/zabbix
<2>编辑zabbix-agent的配置文件
[root@server2 4.4]# vim /etc/zabbix/zabbix_agentd.conf
98 Server=172.25.63.4 #被动模式,表示哪些主机可以到本机取数据
139 ServerActive=172.25.63.4 #主动模式的server IP地址(客户端主动发送数据给服务端)
150 Hostname=server2 #客户端的hostname(在web界面上显示的名字)
#在这里,139行可写,可不写。因为现在配置的是被动模式(服务端来找客户端要数据)。要想开启主动模式,还要结合StartAgents这一行(#StartAgents=3 #客户端agent模式,设置为0表示禁止被动模式)
<3>启动zabbix-agent服务
[root@server2 4.4]# systemctl start zabbix-agent
之后在网页端刷新网页:
发现server2已经显示可用,表示zabbix-agent配置成功
五、配置自动发现zabbix agent
1.zabbix监控配置自动发现
自动发现规则主要针对企业批量添加主机,如果使用传统方法去单个添加设备、分组、项目、图像…,这是一个任务量巨大的工程,由此引入自动发现规则。
自动发现规则由服务端主动发起,Zabbix Server开启发现进程,定时扫描局域网中的IP、服务器、设备,实现自动发现主机,自动将主机添加到主机组、自动加在模板、自动创建项目、自动创建图像等功能
2.实验准备
首先需要将上个实验中手动添加的zabbix agent(server2)删除掉:
3.配置自动发现动作
4.配置自动发现规则
5.自动发现主机
配置完规则后等待几十秒刷新页面即可发现zabbix agent (server2):
从图上可以看出此时主机server2并不可用,等待一会再刷新页面就好了,如果不想等待,也可以在server2重启 zabbix agent服务,之后刷新页面就可以看到server就可以使用了:
[root@server2 ~]# systemctl restart zabbix-agent
六、配置zabbix agent 自动注册
1.zabbix 自动注册
Zabbix的自动注册规则主要用于Agent主动且自动向Server注册,适用于当前云环境下的监控。
Zabbix-Server在收到Zabbix-Agent的注册请求时,如果没有收到IP地址的值,则使用Zabbix-Agent和Zabbix-Server建立TCP连接时的IP地址。
2.配置zabbix agent
再增加一台zabbix agent主机:server3
安装zabbix agent:
[root@server3 4.4]# rpm -ivh zabbix-agent-4.4.1-1.el7.x86_64.rpm
编辑配置文件并启动服务:
[root@server3 4.4]# vim /etc/zabbix/zabbix_agentd.conf
98 Server=172.25.63.4 #被动模式,表示哪些主机可以到本机取数据
139 ServerActive=172.25.63.4 #主动模式的server IP地址(客户端主动发送数据给服务端)
150 Hostname=server3 #客户端的hostname(在web界面上显示的名字)
[root@server3 4.4]# systemctl start zabbix-agent
3.实验准备
由于上个实验配置过自动发现规则,因此server3已经被自动发现,需要关闭自动发现规则并且删除server3:
4.添加自动注册规则
创建动作:
编辑动作:
编辑操作:
添加第一个操作:
之后再添加两个操作:
最后选择添加则自动注册规则以成功添加:
5.查看主机
等待一会后刷新页面查看主机:
可以发现server3已经成功添加,但是并不可用,再等待一会再刷新就发现已经可用:
表示server3自动注册成功。