Zabbix简介:
* Zabbix是一个基于Web界面的分布式系统监控与网络设备监控系统,与Cacti,Nagios类似,提供分布式监控以及集中的Web管理界面。被监控对象只要支持SNMP协议或者运行Zabbix_agent代理程序即可。Zabbix的官方网站为http://www.zabbix.com/,软件可以自由下载使用。
* 能够监控各种网络参数,并提供灵活的通知机制,以使管理员能快速定位故障并解决。
* 由zabbix server 端与zabbix agent组成。
* 可通过SNMP、zabbix、agent 、ping、端口监视等方法实现对远程主机与网络设备的监控。
Zabbix与Cacti,Nagios的比较:
* 都是基于SNMP协议进行管理;SNMP:简单网络管理协议(SNMP),由一组网络管理的标准组成,包含一个应用层协议(application layer protocol)、数据库模型(database schema)和一组资料物件
* Cacti: 小型监控软件 十几台服务器可以,优点是图像化处理监控比较突出;
* NAGIOS:优点具有报警机制,在系统或服务状态异常时会发出emai或短信报警第一时间通知网络运维人员,在状态恢复后会发出正常的电子邮件或短信通知,但是搭建比较麻烦;
* Zabbix: 结合前两者优点,搭建简便,既可以有很好的图像处理界面,也可以进行短信,邮件报警机制;
zabbix特点:
* 主机性能监控,网络设备性能监控,数据库性能监控,ftp等通用协议的监控
* 能够利用灵活的可定制警告机制,允许用户对事件发送基于E-mail的警告,保证相关维护人员对问题作出快速响应;
* 还可以利用存储数据提供杰出的报表及实时的图形化数据处理,实现对linux,windows主机的7*24小时集中监控;
* 监控的项目可包括CPU,内存,磁盘,网卡流量,服务可用性等各种资源。
Zabbix的工作模式:
* Zabbix通过C/S模式采集数据,通过B/S模式在web端展示和配置。其中Zabbix_Server可运行在CentOS,RHEL,SUSE,Ubuntu等linux系统上,还需要使用LAMP平台来承载数据库和web界面。
* 被监控端运行zabbix_agent服务获得host数据,然后把收集到的数据发送给Server(主动模式)或者是Server主动来拿取数据(被动模式)。
环境部署:
主机 | 操作系统 | IP地址 | 服务 |
---|---|---|---|
Zabbix监控端 | CentOS7 | 192.168.72.128 | lamp架构、zabbix server |
Zabbix被监控端 | CentOS7 | 192.168.72.163 | zabbix_agentd |
部署Zabbix监控端:
1.首先安装配置LAMP环境,以满足zabbix的代码部署要求;
* 关闭防火墙,selinux,yum安装httpd,mariadb,php等相关软件包
* systemctl stop firewalld.service
* setenforce 0
* yum install -y httpd mariadb-server mariadb php php-mysql php-gd libjpeg* php-ldap php-odbc php-pear php-xml php-xmlrpc php-mhash
2.安装完成后修改httpd配置文件:
* vim /etc/httpd/conf/httpd.conf
ServerName www.yun.com:80
<IfModule dir_module>
DirectoryIndex index.html index.php
</IfModule>
3.修改为中国时区:
* vim /etc/php.ini
date.timezone = PRC
4.开启httpd服务,开启mariadb服务:
* systemctl start httpd.service
* systemctl start mariadb.service
* netstat -antp | egrep '80|3306' #查看httpd,mariadb服务端口
5.初始化mariadb配置:
* mysql_secure_installation #初始化mariadb安全配置,进行交互配置,配置帐户root的登录密码,后面的选择n,最后选择y;
6.进入数据库给zabbix用户设置管理权限:
* create database zabbix character set utf8 collate utf8_bin; #创建zabbix数据库
* grant all privileges on zabbix.* to 'zabbix'@'%' identified by 'abc123'; #给zabbix用户授权
* flush privileges; #更新数据库设置
7.数据库中会含有一些空白用户,会影响zabbix连接数据库,所以需要将这些空白用户删除掉:
如果有空白用户的话 如下图(转载别人的):
8.在web站点编写php网页文档,测试连接数据库:
* vim /var/www/html/index.php
<?php
$link=mysql_connect('192.168.72.128','zabbix','abc123');
if($link) echo "<h2>ok!!</h2>";
else echo "<h2>failed!!</h2>";
mysql_close();
?>
9.浏览器测试数据库连接:
接下来部署安装Zabbix服务端:
1.使用yum安装zabbix服务端及需要的软件包:
* yum install php-bcmath php-mbstring -y
* rpm -ivh http://repo.zabbix.com/zabbix/3.5/rhel/7/x86_64/zabbix-release-3.5-1.el7.noarch.rpm #生成含有zabbix包的yum源
* yum install zabbix-server-mysql zabbix-web-mysql -y #安装zabbix服务
2.将zabbix相关数据导入数据库中:
* zcat /usr/share/doc/zabbix-server-mysql-4.0.0/create.sql.gz | mysql -uzabbix -p zabbix
3.接下来修改zabbix配置文件,添加密码设置:
* vim /etc/zabbix/zabbix_server.conf
* grep -n '^'[a-Z] /etc/zabbix/zabbix_server.conf
4.修改时区:
* vim /etc/httpd/conf.d/zabbix.conf
php_value date.timezone Asia/Shanghai
5.将字体修改为楷体,防止页面中文乱码问题:
* vim /usr/share/zabbix/include/defines.inc.php
6.将下载好的字体文件复制到 /usr/share/zabbix/fonts 目录中注意字体名称要对应文件:
7.开启zabbix服务,并设置为开启自启项:
* systemctl start zabbix-server
* systemctl enable zabbix-server
* systemctl restart httpd.service #重启httpd服务
* netstat -antp | grep zabbix #查看端口
8.使用浏览器安装zabbix监控软件:
* 浏览器输入:http://192.168.72.128/zabbix/
* 进行安装,安装完成后输入默认用户:Admin 密码:zabbix;
* 点击用户,设置中文界面;
安装被监控端:zabbix_agentd
1.关闭防火墙,selinux,并使用yum安装zabbix-agent:
* systemctl stop firewalld.service
* setenforce 0
* rpm -ivh http://repo.zabbix.com/zabbix/3.5/rhel/7/x86_64/zabbix-release-3.5-1.el7.noarch.rpm #安装zabbix的yum源
* yum install -y zabbix-agent #安装zabbix客户端
2.安装完成之后修改配置文件:
* vim /etc/zabbix/zabbix_agentd.conf
Server=192.168.195.147
ServerActive=192.168.195.147
Hostname=agent
* grep -n '^'[a-Z] /etc/zabbix/zabbix_agentd.conf #查看刚修改的配置文件
3.开启服务:
* systemctl enable zabbix-agent.service
* systemctl restart zabbix-agent.service
* netstat -anpt | grep zabbix
4.在web界面配置添加被监控端主机及监控项:
5.给被监控主机添加模板,选择监控项:
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。