一、初始Zabbix
zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
zabbix由2部分构成,zabbix server与可选组件zabbix agent。
zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。
Zabbix由几个主要的软件组件构成,这些组件的功能如下。
Server
Zabbix server 是agent程序报告系统可用性、系统完整性和统计数据的核心组件,是所有配置信息、统计信息和操作数据的核心存储器。
数据库存储
所有配置信息和Zabbix收集到的数据都被存储在数据库中。
Web界面
为了从任何地方和任何平台都可以轻松的访问Zabbix, 我们提供基于Web的Zabbix界面。该界面是Zabbix
Server的一部分,通常(但不一定)跟Zabbix Server运行在同一台物理机器上。如果使用SQLite,Zabbix Web界面必须要跟Zabbix Server运行在同一台物理机器上。
Proxy代理服务器
Zabbix proxy 可以替Zabbix
Server收集性能和可用性数据。Proxy代理服务器是Zabbix软件可选择部署的一部分;当然,Proxy代理服务器可以帮助单台Zabbix Server分担负载压力。扫描二维码关注公众号,回复: 2813734 查看本文章
Agent监控代理
Zabbix agents监控代理 部署在监控目标上,能够主动监控本地资源和应用程序,并将收集到的数据报告给Zabbix Server。
数据流
此外,了解Zabbix内部的数据流同样很重要。监控方面,为了创建一个监控项(item)用于采集数据,必须先创建一个主机(host)。告警方面,在监控项里创建触发器(trigger),通过触发器(trigger)来触发告警动作(action)。
因此,如果你想收到Server XCPU负载过高的告警,你必须: 1. 为Server
X创建一个host并关联一个用于对CPU进行监控的监控项(Item)。 2. 创建一个Trigger,设置成当CPU负载过高时会触发 3.
Trigger被触发,发送告警邮件
虽然看起来有很多步骤,但是使用模板的话操作起来其实很简单,Zabbix这样的设计使得配置机制非常灵活易用。
二、Zabbix安装配置
1.安装zabbix监控
环境配置:redhat7.2 :server11:172.25.7.11
所需要的软件包
fping-3.10-1.el7.x86_64.rpm
iksemel-1.4-2.el7.centos.x86_64.rpm
php-bcmath-5.4.16-36.el7_1.x86_64.rpm
php-mbstring-5.4.16-36.el7_1.x86_64.rpm
一定要和自己系统中的php版本保持一致
zabbix-agent-3.4.6-1.el7.x86_64.rpm
zabbix-server-mysql-3.4.6-1.el7.x86_64.rpm
zabbix-web-3.4.6-1.el7.noarch.rpm
zabbix-web-mysql-3.4.6-1.el7.noarch.rpm
2、安装并配置数据库
[root@server11 ~]# yum install mariadb-server -y
[root@server11 ~]# systemctl start mariadb
[root@server11 ~]# mysql_secure_installation ^C
[root@server11 ~]# mysql -p
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;
MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost identified by 'redhat';
3.导入zabbix数据库
[root@server11 ~]# cd /usr/share/doc/zabbix-server-mysql-3.4.6/
[root@server11 zabbix-server-mysql-3.4.6]# ls
AUTHORS ChangeLog COPYING create.sql.gz NEWS README
[root@server11 zabbix-server-mysql-3.4.6]# zcat create.sql.gz |mysql -u zabbix -p zabbix
# 导入zabbix数据库
Enter password: ##键入密码,等待,不要Ctrl+c
4.配置zabbix
[root@server11 zabbix-server-mysql-3.4.6]# cd /etc/zabbix/
[root@server11 zabbix]# ls
web zabbix_agentd.conf zabbix_agentd.d zabbix_server.conf
[root@server11 zabbix]# vim zabbix_server.conf
125 DBPassword=redhat ##数据库密码
133 DBSocket=/var/lib/mysql/mysql.sock ##连接数据库的sock
修改时区
[root@server11 zabbix]# cd /etc/httpd/conf.d/
[root@server11 conf.d]# vim zabbix.conf
[root@server11 conf.d]# systemctl restart zabbix-server zabbix-agent httpd
#确保firewalld,iptables,selinux都处于关闭
5.访问zabbix
http://172.25.62.11/zabbix
(1)进入zabbix界面
(2)将zabbix与数据库连接,密码是设置的mariadb数据库密码
(3)成功登陆zabbix监控平台
账号为Admin,密码为zabbix
(4)进入zabbix平台后,可以修改监控语言和登陆密码(点击右上方的人头标志,开始修改密码和语言)
点击配置,主机,以停用的,即可开启zabbix-server的监控
三、利用zabbix监控server2
安装zabbix-agent
[root@server2 el6]# yum install zabbix-agent-3.4.6-1.el6.x86_64.rpm -y
[root@server2 el6]# cd /etc/zabbix/
[root@server2 zabbix]# ls
zabbix_agentd.conf zabbix_agentd.d
[root@server2 zabbix]# vim zabbix_agentd.conf
[root@server2 zabbix]# /etc/init.d/zabbix-agent restart
[root@server2 zabbix]# netstat -antlp
# 默认开启10050端口
进入zabbix监控系统,使server1监控主机监控server2主机
1.自动发现
打开自动发现动作
接着选择填写自动发现监控主机的网段
自动发现规则建立后填写发现主机的主机名
2.手动添加
添加模板
添加server2成功