Zabbix分布式监控系统从理论到实践
Zabbix介绍
Zabbix是一个企业级的分布式开源监控方案。Zabbix是一款能够监控各种网络参数以及服务器健康性和完整性的软件。Zabbix使用灵活的通知机制,允许用户为几乎任何实践配置基于邮件的告警。这烟花可以快速反馈服务器的问题,基于已存储的数据,Zabbix提供了出色的报告和数据可视化功能。
Zabbix是一个高度集成的网络监控解决方案,一个简单的安装包中提供多样性的功能。
Zabbix结构
Zabbix由几个主要的软件组件构成,这些组件的功能如下。
1、Server
Zabbix server 是监控代理程序报告系统可用性、系统完整性和统计信息的核心组件。Zabbix Server是所有配置信息、统计信息和操作数据的核心存储器。
2、数据库存储
所有配置信息和Zabbix收集到的数据都被存储在数据库中。
3、Web界面
为了在任何地方和任何平台都能够轻松访问Zabbix,Zabbix提供了基于Web的界面。该界面是Zabbix Server的一部分,通常跟Zabbix Server运行在同一台物理服务器上。
如果使用SQLite,Zabbix Web界面必须要跟Zabbix Server运行在同一台物理服务器上。
4、Proxy代理服务器
Zabbix Proxy可以替Zabbix Server收集性能和可用性数据。proxy代理服务器是Zabbix软件可选择部署的一部分。Proxy代理服务器可以帮助单台Zabbix Server分担负载压力。
5、Agent监控代理
Zabbix Agents监控代理部署在监控目标上,能够主动监控本地资源和应用程序,并将收集到色数据报告给Zabbix Server。
Zabbix架构体系
实战案例——Zabbix分布式监控系统
学习目标
了解Zabbix分布式监控系统;
搭建Zabbix分布式监控系统;
使用Zabbix分布式监控系统。
前期准备
1、Zabbix分布式监控系统的节点规划
2、基础准备
登录openstack平台,使用提供的CentOS_7.2_x86_64_XD.QCOW2镜像,flavor使用4vCPU/8GB/100GB硬盘创建云主机。YUM源使用提供的zabbix文件夹。
实施操作
1、基础环境配置
(1)主机名配置(两个节点)
(2)YUM源配置
将提供的CentOS-7-x86_64-DVD-1511.iso镜像和zabbix文件夹上传至zabbix-server节点的/opt目录下。
在zabbix-server节点创建挂载目录
将CentOS-7-x86_64-DVD-1511.iso镜像挂载到/opt/centos目录下
挂载好后,将/etc/yum.repo.d目录下的所有文件移动到/media下。
在/etc/yum.repo.d目录下创建local.repo文件夹,内容如下:
测试YUM源是否安装成功。
至此,Zabbix-server的YUM源配置完成。
在zabbix-server节点上安装vsftpd服务。
执行yum install -y vsftpd命令 进行安装。
接着,修改vsftpd服务的配置文件vsftpd.conf,添加”anon_root=/opt“这行代码,保存退出即可。命令如下:
启动vsftpd服务,并设置成开机自启。命令如下。
在zabbix-agent节点上,将/etc/yum.repo.d/目录下的所有配置文件移动到/media目录下,在次目录下创建local.repo文件,配置内容如下:
测试zabbix-agent节点上的YUM源配置是否成功。
自此,zabbix-agent节点上的YUM源配置成功。
(3)安装LAMP+Zabbix服务(在zabbix-server节点上执行操作)
安装httpd服务
[root@zabbix-server ~]# yum install -y httpd
安装数据库服务,命令如下
[root@zabbix-server ~]# yum install -y mariadb mariadb-server
安装Zabbix服务,命令如下。
[root@zabbix-server ~]# yum install -y zabbix-server-mysql zabbix-web-mysql zabbix-agent mariadb-server
升级trousers服务,命令如下
[root@zabbix-server ~]# yum install -y trousers
至此,Zabbix服务所需要的软件包已经安装完毕!
2、配置并启动Zabbix服务
(1)启动httpd服务
使用命令启动httpd服务,并设置开机自启动。
(2)启动并配置数据库服务
启动数据库服务,并设置开机自启动
登录数据库,创建zabbix库(中文编码格式),命令如下
授权zabbix用户的访问权限,命令如下。
进入到/usr/share/doc/zabbix-server-mysql-3.4.15/目录下,导入数据库文件,命令如下。
至此,数据库配置完毕。
(3)设置时区
编辑/etc/php.ini文件,设置时区,在[Date]字段下,设置date.timezone-PRC,命令如下。
[root@zabbix-server ~]# vi /etc/php.ini
[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = PRC
编辑etc/httpd/conf.d/zabbix.conf文件,修改时区,修改php_value date.timezone Europe/Riga 为Asia/Shanghai,命令如下。
[root@zabbix-server ~]# vi /etc/httpd/conf.d/zabbix.conf
修改为:
保存退出,重启httpd服务
(4)修改Zabbix配置文件并启动
启动Zabbix服务,命令如下。
查看端口号,验证zabbix-server的服务端口10051是否存在,命令如下:
至此,Zabbix监控服务的server端配置完毕,接下来需要在Web界面操作。
3、使用Zabbix服务
(1)登录界面
使用浏览器访问172.16.51.5/zabbix(注意:因在openstack中172.16.51.5这一IP地址绑定了浮动IP地址192.168.200.6,所以使用192.168.200.6/zabbix进入Web界面即可。),进入Zabbix安装导向,单击”Next step“按钮,进入下一步操作。
检查先决条件,显示PHP版本等内容,然后单击右下角”Next step“按钮,进入下一步操作。
填写连接数据库的必要信息,Password为zabbix,具体填写内容如下,填写完毕,单击”Next step“按钮,进行下一步操作。
填写zabbix服务段的详细信息,内容如下所示,Name字段自定义填写,是给监控平台起的名字,填写完成后,单击”Next step“按钮,进行下一步操作。
检查前面的平台配置概况,确定后单击”Next step“按钮。
安装Zabbix,安装成功,界面如下,单击”Finish“按钮,结束安装。
单击”Finish“后,进入登录界面,使用默认的用户名和密码Admin/zabbix进行登录。(注意:用户名首字母大写!!!)
进入Zabbix主页,如图所示。
(2)语言设置
单击右上角的头像按钮,进入设置界面,如图所示
将”Language“一栏修改为”Chinexe(zh CN)“,然后单击”Update“按钮,如图所示。
至此,Zabbix监控界面的中文界面配置完成。
(3)添加被监控机器
在zabbix-agent节点上,安装zabbix-agent服务,命令如下:
[root@zabbix-agent ~]# yum install -y zabbix-agent
修改/etc/zabbix/zabbix_agentd.conf配置文件,配置zabbix-agent没修改结果如下:
[root@zabbix-agent ~]# vi /etc/zabbix/zabbix_agentd.conf
启动zabbix-agent服务,并查看10050端口是否存在,命令及结果如下
回到Web界面,选择菜单栏”配置“——>“主机”——>”创建主机“,如图所示。
填写相关信息,将zabbix-agent节点添加到监控机器,具体填写信息如图所示,然后单击下方”添加“按钮。如图所示。
添加完毕后,如图所示。
添加监控项,单击”zabbix-agent“名称,然后单击”模板“标签,进行添加模板操作界面,如图所示。
单击”选择“按钮,进行监控模板添加,在跳转界面勾选用户想要监控的复选框,然后单击”选择“按钮,如图所示。
单击”添加“按钮,显示链接的模板,然后单击”更新“按钮,如图所示。
单击”更新“按钮后,zabbix-agent节点被添加到监控中去了,
如图所示。
(4)监控机器
在最上面的选择菜单栏中,”监测中“——>”图形“命令,群组选择”Linux server“,主机选择zabbix-agent,图形选择需要显示的监控项,此处选择的是CPU jumps,如图所示。