Zabbix基本介绍:
zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。它能监视各种网络参数,保证服务器系统的安全运营;并提供柔软的通知机制以让系统管理员快速定位/解决存在的各种问题。
zabbix由2部分构成,zabbix server与可选组件zabbix agent。
zabbix server:可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux, Solaris, HP-UX, AIX, Free BSD, Open BSD, OS X等平台之上。
zabbix agent:需要安装在被监视的目标服务器上,它主要完成对硬件信息或与操作系统有关的内存,CPU等信息的收集。zabbix agent可以运行在Linux ,Solaris, HP-UX, AIX, Free BSD, Open BSD, OS X, Tru64/OSF1, Windows NT4.0, Windows 2000/2003/XP/Vista等系统之上。
Server:指安装zabbix服务的服务器(以下简称服务器端),是最重要的部份,主要安装在linux系统上(支持多种操作系统),采用mysql存储监.控数据并使用apache+php的方式呈现。
Agent:指安装在被监.控设备上的zabbix代理(以下简称代理),被监.控设备上的数据由代理收集后统一上传到服务器端由服务器端收集、整理并呈现。
SNMP:也是agent的一种,指支持SNMP协议的设备(也可以是服务器),通过设定SNMP的参数将相关监.控数据传送至服务器端(大部份的交换机、防火墙等网络设备都支持SNMP协议)。
IPMI:Agent的另一种方式,主要应用于设备的物理性能监.控,例如设备的温度、风扇的转速等。
1.实验环境:
server11:172.25.66.11 rhel7.3
server1:172.25.66.1 rhel6.5
2.安装
##安装相关依赖
[root@server11 ~]# yum install -y zabbix-agent-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 zabbix-server-mysql-3.4.6-1.el7.x86_64.rpm php-mbstring-5.4.16-42.el7.x86_64.rpm php-bcmath-5.4.16-42.el7.x86_64.rpm fping-3.10-1.el7.x86_64.rpm iksemel-1.4-2.el7.centos.x86_64.rpm
##安装数据库
[root@seerver11 ~]# yum install mariadb mariadb-server -y
##启动数据库并配置
[root@seerver11 ~]# systemctl start mariadb
[root@server11 ~]# mysql
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin; ##建库
Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost identified by 'westos'; ##授权
Query OK, 0 rows affected (0.00 sec)
[root@server11 zabbix-server-mysql-3.4.6]# pwd
/usr/share/doc/zabbix-server-mysql-3.4.6
[root@server11 zabbix-server-mysql-3.4.6]# zcat create.sql.gz | mysql -uzabbix -p zabbix ##文件导入数据库
Enter password:
[root@server11 zabbix-server-mysql-3.4.6]# cd /etc/zabbix/
[root@server11 zabbix]# vim zabbix_server.conf ##编辑zabbix-server配置文件
添加密码 DBPassword=westos
[root@server11 zabbix]# cd /etc/httpd/conf.d/
[root@server11 conf.d]# vim zabbix.conf
配置时区 php_value date.timezone Asia/Shanghai
[root@server11 conf.d]# systemctl restart zabbix-server zabbix-agent httpd
[root@server11 conf.d]# systemctl enable zabbix-server zabbix-agent httpd
浏览器访问测试:
http://172.25.66.11/zabbix
帐号Admin
密码zabbix
3.微信提示
建立客户端
[root@server1 ~]# yum install zabbix-agent-3.4.6-1.el6.x86_64.rpm -y
[root@server1 ~]# cd /etc/zabbix/
[root@server1 zabbix]# vim zabbix_agentd.conf
Server=172.25.66.11 ##监控主机(zabbix服务器)ip
ServerActive=172.25.66.11 ##监控主机的ip
Hostname=server1 ##自己的hostname
添加本地解析(两边)
[root@server1 zabbix]# vim /etc/hosts
172.25.66.11 server11
[root@server11 conf.d]# vim /etc/hosts
172.25.66.1 server1
[root@server1 zabbix]# /etc/init.d/zabbix-agent start
浏览器设置
1.添加动作
2.添加发现
1.手动
配置–》主机–》创建主机。。。。。
2.自动
配置–》自动发现
等待+刷新
nginx监控
之前server1中安装有nginx
[root@server1 nginx-1.12.0]# vim /usr/local/nginx/conf/nginx.conf
location /status {
stub_status on;
access_log off;
}
浏览器访问
http://172.25.66.1/status
[root@server1 zabbix_agentd.d]# pwd
/etc/zabbix/zabbix_agentd.d
[root@server1 zabbix_agentd.d]# vim userparameter_mysql.conf
Zabbix服务端下载数据获取工具zabbix-get
[root@server11 ~]# yum install zabbix-get-3.4.6-1.el7.x86_64.rpm
zabbix_get -s 172.25.66.1 -p 10050 -k nginx.status|accept|active ##测试结果如下图
zabbix浏览器作点击主机名server1
点击右上角,创建监控项
可以找到这条
创建监控图形
微信云告警,首先保证zabbix服务器可以上网
真机上配置iptables规则
[root@foundation66 Desktop]# iptables -t nat -I POSTROUTING -s 172.25.66.0/24 -j MASQUERADE
Zabbix监控服务器添加路由设置dns
[root@server11 ~]# route add default gw 172.25.66.100
[root@server11 ~]# vim /etc/resolv.conf
测试是否联通
[root@server11 ~]# cd /usr/lib/zabbix/alertscripts/
[root@server11 alertscripts]# wget http://www.onealert.com/agent/release/oneitsm_zabbix_release-1.2.0.tar.gz
[root@server11 alertscripts]# tar zxf oneitsm_zabbix_release-1.2.0.tar.gz
[root@server11 alertscripts]# cd oneitsm/bin/
[root@server11 bin]# bash install.sh 0079671b-3575-3a2c-9959-ad26887158ac
key在网页应用中生成
启动报警设置
接下来在zabbix端设置
[管理—报警媒介类型]启用第三个oneitsm media
[管理–用户–oneitsm media–报警媒介]查看已经添加
在服务端关闭zabbix-server
[检测中–问题]会显示问题,zabbix尝试去修复,失败
过一段时间微信会接受到通知