zabbix 介绍
zabbix 是一个基于 WEB 界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案,在企业中有非常全面的应用。
zabbix 是由 Alexei Vladishev 开发的一种网络监视、管理系统,基于 Server-Client 架构。可用于监视各种网络服务、服务器和网络机器等状态。
使用各种 Database-end 如 MySQL,PostgreSQL,SQLite,Oracle或IBM DB2储存资料。Server端基于C语言、Web管理端 frontend 则是基于 PHP 所制作的。Zabbix 可以使用多种方式监控。可以只使用 Simple Check 不需要安装 Client 端,亦可基于 SMTP 或 HTTP...各种协定做死活监视。
在客户端如 UNIX,Windows 中安装 Zabbix Agent 之后,可监视 CPU Load、网络使用状况、硬盘容量等各种状态。而就算没有安装 Agent 在监视对象中,Zabbix 也可以经由 SMTP,TCP、ICMP、利用 IPMI、SSH、Telnet 对目标进行监视。
另外,Zabbix 包括 XMPP等各种 ltem 警示功能。
zabbix 的组成
zabbix 官网:https://www.zabbix.com
zabbix 主要由两个部分构成 zabbix server 和 zabbix agent
zabbix proxy 是用来管理其他的agent,作为代理
zabbix 的监控范畴
硬件监控:zabbix IPMI Interface
系统监控:zabbix Agent Interface
Java监控:zabbix JMX Interface
网络设备监控:zabbix SNMP Interface
应用服务监控:zabbix Agent UserParameter
mysql 数据库监控:percona-monitoring-pidlgins
URL 监控:zabbix Web 监控
为什么监控
在需要的时刻,提前提醒我们服务器出问题了。
当出问题之后,可以找到问题的根源
网站 / 服务器的可用性
网站可用性
在系统软件的高可靠性(也称为可用性,英文描述为HA,High Available)里有个衡量其可靠性的标准——X个9,这个X是代表数字3~5。X个9表示在软件系统1年时间的使用过程中,系统可以正常使用时间与总时间(1年)之比,我们通过下面的计算来感受下X个9在不同级别的可靠性差异。
1个9:(1-90%)*365=36.5天,表示该软件系统在连续运行1年时间里最多可能的业务中断时间是36.5天。
2个9:(1-99%)*365=3.65天,表示该软件系统在连续运行1年时间里最多可能的业务中断时间是3.65天。
3个9:(1-99.9%)*365*24=8.76小时,表示该软件系统在连续运行1年时间里最多可能的业务中断时间是8.76小时。
4个9:(1-99.99%)*365*24=0.876小时=52.6分钟,表示该软件系统在连续运行1年时间里最多可能的业务中断时间是52.6分钟。
5个9:(1-99.999%)*365*24*60=5.26分钟,表示该软件系统在连续运行1年时间里最多可能的业务中断时间是5.26分钟。
6个9:(1-99.9999%)*365*24*60*60=31秒,表示该软件系统在连续运行1年时间里最多可能的业务中断时间是31秒。
监控什么东西
监控一切需要监控的东西,只要能够想到,能够用命令实现的都能用来监控
监控范畴
硬件监控 |
(1)通过远程控制卡;Dell 的IDRAC,HP的ILO和IBM的IMM等。 (2)使用IPMI来完成物理设备的监控工作。通常必须要监控的就是温度、硬盘故障等。 (3)路由器,交换机(端口、光衰、日志),打印机,Windows等。 |
系统监控 | cpu,内存,硬盘使用率,硬盘IO,系统负载,进程数 |
服务监控 | apache,nginx,php-fpm,mysql,memcache,redis,tomcat,JVM,TCP连接数 |
性能监控 | 网站性能,服务器性能,数据库性能,存储性能 |
日志监控 | 系统会产生系统日志,应用程序会有应用的访问日志、错误日志,服务有运行日志等,可以使用ELK来进行日志监控。 |
安全监控 |
(1)Nginx+Lua 编写了一个WAF通过kibana可以图形化的展示不同的攻击类型的统计。 (2)用户登录数,passwd文件变化,本地所有文件改动。 |
网络监控 | 端口,web(URL),DB,ping包,IDC带宽网络流量,网络流量流出速率,网络入流量,网络出流量,网络使用率,SMTP,POP3 |
怎么来监控
远程管理服务器
如果想远程管理服务器就要有远程管理卡,比如Dell IDRAC,HP ILO,IBM IMM
监控硬件
查看硬件的温度/风扇转速,电脑有鲁大师,服务器有 ipmitool。
使用 ipmitool 实现对服务器的命令行远程管理
yum -y install OpenIPMI ipmitool # -> IPMI 在物理机可以成功,虚拟机不行
ipmitool sdr type Temperature
查看 CPU 相关
lscpu、uptime、top、htop vmstat mpstat
其中 htop 需要安装,安装依赖于 epel 源。
内存够不够
free
磁盘剩多少,写的快不快
df、dd、iotop
监控网络
iftop nethogs
iftop 监控主机间流量 -i 指定监控网卡
nethogs 监控进程流量
监控工具总览
mrtg 流量监控出图
nagios 监控
cacti 流量监控出图
zabbix 监控+出图