Zabbix安装-创建主机-监控项目-触发器- 示警媒介类型
Zabbix 很强大,很全面,但相对来说,Nagios 要更轻量、灵活,特别是它的插件机制,你可以用自己熟悉的语言实现几乎任何自己想要实现的监控。Nagios 在图表方面相对较弱,如果只是希望实现监控及报警,Nagios 是个不错的选择,至于图表,你可以交给 cacti实现。
Zabbix维护相对困难,Nagios维护相对容易,Cacti也是一样。但是Cacti的数据存储方式不是太好,过去的数据太模糊。Nagios的监控相对独立(插件机制,每次执行一条命令),而Zabbix的监控相对集中。
Cacti 是一个用 rrdtool 来画图的网络监控系统,cacti 则是集成了各种数据收集功能,然后用 rrdtool 画出监控图形. 其本身界面比起同类系统要漂亮不少,Cacti 和 nagios 是不同功用的系统, nagios 适合监视大量服务器上面的大批服务是否正常, 重点并不在图形化的监控, 其集成的很多功能例如报警,都是 cacti 没有或者很弱的. cacti 主要用途还是用来收集历史数据和画图, 所以界面比 nagios 漂亮很多.
那有没有图形界面好看,而且报警机制极强的监控系统呢,有,我们今天来看一下zabbix(分布式监控系统),zabbix集合了nagios报警功能和Cacti画图功能,我们看一下zabbix的优点:
首先什么是zabbix:zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。Zabbix相比其他监控软件有如下优点:
-安装与配置简单,学习成本低
- 支持多语言(包括中文,系统自带不需要额外安装插件)
- 自动发现服务器与网络设备
- 分布式监视以及WEB集中管理功能 (这一点相比其他监控软件有明显优势)
- 用户安全认证和柔软的授权方式(如ldap认证)
- 通过WEB界面设置或查看监视结果(图像化配置)
- email,短信等报警功能
Zabbix安装(RPM):
我这里使用rpm方法安装zabbix,一般环境中,最好搭建LAMP或者是LNMP环境中搭建zabbix,我提前mysql,php,httpd已经装好,mysql,php,httpd都可以使用rpm方法安装,zabbix官网下载zabbix rpm包
安装直接把包复制到zabbix服务器上yum localinstall *.rpm即可yum会自动安装依赖的包,或者提前安装依赖包yum -yinstall iksemel libssh fping zabbix-server-implementation libodbc.so.2 在执行依赖包的时候前把zabbix yum库安装一下rpm -ivh http://repo.zabbix.com/zabbix/2.4/rhel/6/x86_64/zabbix-release-2.4-1.el6.noarch.rpm
安装zabbix完成后的包:
接下来修改zabbix配置文件:
/etc/zabbix/zabbix_server.conf 修改这个文件(zabbix 配置文件)
修改以下内容即可:
DBHost=127.0.0.1
DBName=zabbix
DBUser=zabbix
DBPassword=123456
DBSocket=/tmp/mysql.sock
DBPort=3306
现在应该做最主要的事情,创建zabbix数据库,为了mysql的安全我们应该给zabbix创建一个用户和zabbix通信:
#create database zabbix;
#grant all on zabbix.* to 'zabbix'@192.168.77.%' identifiedby '123456';
#flush privileges;
Zabbix的一些模块和数据导入到我刚才新建的zabbix数据库:
# \./usr/share/doc/zabbix-server-mysql-2.4.6/create/schema.sql
# \./usr/share/doc/zabbix-server-mysql-2.4.6/create/images.sql
# \. /usr/share/doc/zabbix-server-mysql-2.4.6/create/data.sql
安装zabbix的条件都已经完成启动服务器打开zabbix网页来完成安装
Service zabbix-server start (监控tcp/10051端口)
在游览器输入:http://IP/zabbix
这是zabbix安装界面我们选择下一步
检查php的模块都已经支持(很多新手总是在这里有很多模块加载不起来)
连接数据库我们把刚才在配置文件用户名和密码添加进去即可
安装完成后这个界面就是已经安装全部搞定(是不是很简单)
服务端安装完成我们再客户端也就是agent安装:
客户端安装这两个rpm包即可,安装好以后直接修改配置文件指定一个zabbix服务端IP即可,agent配置文件:/etc/zabbix/zabbix_agentd.conf à Server=192.168.77.101 这样即可然后启动agent监控的是tcp/10051端口
创建主机:
安装完成后我们添加主机进行简单的体验(我这里切换到中文,zabbix支持很多语言),创建主机也和简单点击组态-主机-右上角创建主机即可(群组可以提前定义好)
创建监控项:
监控项听名称也知道差不多意思,有了主机我们是监控不到任何参数的,我要自己定义主机监控什么参数,那么我们来创建一个监控项,监控一下网卡流量出站的情况,组态-主机-右上角创建监控项
这样的一个监控项就创建好了,我们查看刚才监控的监控项可以再监控中-最新数据监控我刚才添加的监控项
触发器:
什么叫做触发器呢,顾名思义就是当我定义好监控项以后然后给设定的某个值,只要监控项的值大于我设定的值就会触发我设定的触发器,那么我们来给刚才网卡出站流量设定一个触发器
图形:
Zabbix 图形的这个功能很不错,可以把多个相同类型的监控项合并成一张图来查看,刚才我定义了一个出站一个进站的网卡流量,那我现在使用图形把两张图合成一张来查看,这样可以很清楚看出很多问题的存在
用户和组:
创建用户第一可以报警的时候是已那个用户发送,第二可以使用登录zabbix查看监控项等
示警媒介类型(报警类型):
媒介指的是我们触发器之后动作是什么以什么报警,我们目前测试时以邮件报警,我们以我们现在本地的localhost的邮箱报警,我现在创建一个本地邮件媒介
动作:
动作是满足了什么条件才会发报警,发给谁,第一次发给谁第二次发给谁或者是问题没有解决我们要不要反映到CTO哪里等等,这是动作,那么我们创建一个动作,只要触发器的值等于动作中的条件就会发邮件
组态-动作-创建动作
这是简单的发送内容和接收人
这是发送的次数和发件人和媒介
这里是升级报警只要1-9次没人解决或者是没有解决只要发送到CTO邮件中
这样zabbix 监控流程全部完成我们可以找很多主机ping192.168.77.150看看我们zabbix会不会收到报警邮件,测试开始
7是报警邮件 8是恢复正常邮件
到现在所有的一切都很正常,这些都只是一些基础,以后的路很长我们会慢慢的走,成功的路上不要急,要一步一步一个坑。