设为首页 收藏本站
查看: 2123|回复: 0

[经验分享] zabbix工具使用:部署监控

[复制链接]

尚未签到

发表于 2018-1-1 08:12:20 | 显示全部楼层 |阅读模式
一、添加监控主机及设置

1.创建主机 DSC0000.png

DSC0001.png

Agent可以干一些SNMP无法干的事情,例如自定义监控项

DSC0002.png

这里我们先不着急点add,还需要设置其他选项

DSC0003.png

点击监控模板
  zabbix监控是由监控项组成(cpu使用率监控就是一个监控项/内存使用率就是一个监控项),如果是100台服务器就需要监控模板了。只需要将监控项和模板关联起来即可
  举个例子:我们上面主机使用的是SNMP,就可以直接搜索SNMP。提示:有的模板需要自己定义

DSC0004.png

温馨提示:请点击下面的小add 然后在点大的。否则会出现问题哦

DSC0005.png

  
IPMI如果有的话,需要在这里写上用户名和密码

DSC0006.png

宏定义,这个宏其实就是一个变量。我们给可以给变量附一个值

DSC0007.png

因为我们设置的是SNMP,SNMP有一个团体名。并且可以设置定义
  

[iyunv@localhost ~]# cat /etc/snmp/snmpd.conf  
rocommunity abcdocker 192.168.56.11
  


DSC0008.png
值:{$SNMP_COMMUNITY}

DSC0009.png

主机资产设置分为3种
  1、关闭 Disabled
  2、手动 Manual
  3、自动 Automatic (自动代表的是你在定义监控项的时候,他有一个小箭头,勾上之后监控项的值就会填写在这里)
  我们这设置好模板就可以选择add了

DSC00010.png

等SNMP变绿就好了

DSC00011.png

现在的状态是用SNMP进行监控了,我们只是添加了一个SNMP OS LINUX的模板,但是出现了4个。这4个链接。可以和多个模板连起来用

DSC00012.png

进入监控项,下面这个菜单是过滤搜索用的

DSC00013.png

下面全都是模板
  我们可以随便点击一个,这里我们新建一个监控项

DSC00014.png

点击创建
  类型选择
  Zabbix agent 被动
  Zabbix agent (active主动模式)
  Simple check 简单检测
  SNMPv1 agent ......

DSC00015.png

在Key这行点击Select 可以进行选择

DSC00016.png

我们随便选择一个,例如agent.version。查看agent的版本
  Numeric是无符号整数型

DSC00017.png


2.图形说明

Configuration----hosts----Graphs

DSC00018.png

绘图靠的是监控项,我们可以随便打开一个看看

DSC00019.png

颜色等都是可以随意设置

3、聚合图形screens设置

DSC00020.png
提示:因为咱们用的版本是3.0当2.4的时候需要在Configuration----下面来创建screens
创建Screens

DSC00021.png

我们创建一个2*2 命名为test screens的screens

DSC00022.png

然后我们点进去
  点击编辑

DSC00023.png

点击Change进行设置

DSC00024.png

DSC00025.png


多添加几个之后就是以下结果

DSC00026.png


二、监控案例[自定义监控项]

例如:我们自己添加一个监控项来进行监控当前的活动连接数 [Nginx 安装请看上一篇]
  Nginx状态模块配置如下,过于简单不说了
  

[iyunv@localhost ~]# cat /usr/local/nginx/conf/nginx.conf  
listen 8080;
  
location /status {
  
stub_status on;
  
access_log off;
  
allow 192.168.56.0/24;
  
deny all;
  
}
  


修改nginx端口并重启
  测试:http://192.168.56.11:8080/status

DSC00027.png

  解释说明:使用zabbix来监控活动连接数,通过status状态模块为前提
  我们现在命令取出我们想要的值,例如:
  

[iyunv@localhost ~]# curl -s http://192.168.56.11:8080/status|grep Active|awk -F "[ ]" '{print $3}'  
1
  


因为我们是监控他的活动连接数,他的活动连接数为1
  

[iyunv@linux-node1 ~]# vim /etc/zabbix/zabbix_agentd.conf  
Include=/etc/zabbix/zabbix_agentd.d/
  


#提示: 如果想要加自定义监控项,不要在配置文件中写入,可以在Include里面定义的目录写上
  只要我们写在Include目录下,都可以识别到
  

[iyunv@linux-node1 ~]# cd /etc/zabbix/zabbix_agentd.d/  
[iyunv@linux-node1 zabbix_agentd.d]# ls
  
userparameter_mysql.conf
  
#默认有一个MySQL的,我们可以参考MySQL的进行操作
  
UserParameter=mysql.ping,HOME=/var/lib/zabbix mysqladmin ping | grep -c alive
  
#提示,前面是key的名称 后面的key的命令
  
UserParameter=mysql.version,mysql -V
  


我们自己编辑一个文件
  

[iyunv@linux-node1 zabbix_agentd.d]# cat nginx.conf  
UserParameter=nginx.active,/usr/bin/curl -s http://192.168.56.11:8080/status|grep Active|awk -F "[ ]" '{print $3}'
  
#提示,此处配置文件的名字可以随便起
  


  如果是多个命令可以写一个脚本,命令最好写绝对路径!这个过程其实就是我们定义监控的过程,前面是key的名字,后面是命令
  修改完配置文件之后需要重启zabbix-agent
  

[iyunv@linux-node1 zabbix_agentd.d]# systemctl restart zabbix-agent  


  配置完成之后先在server端测试,是否可以获取到agent上的值。不要着急添加
  我们现在只用了1台服务器,本机是server也是agent。然后使用zabbix-get进行测试
  

[iyunv@linux-node1 zabbix_agentd.d]# yum list|grep zabbix  
zabbix-agent.x86_64 3.0.4-1.el7 @zabbix
  
zabbix-release.noarch 3.0-1.el7 installed
  
zabbix-server-mysql.x86_64 3.0.4-1.el7 @zabbix
  
zabbix-web.noarch 3.0.4-1.el7 @zabbix
  
zabbix-web-mysql.noarch 3.0.4-1.el7 @zabbix
  
python-pyzabbix.noarch 0.7.3-2.el7 epel
  
uwsgi-stats-pusher-zabbix.x86_64 2.0.13.1-2.el7 epel
  
zabbix-get.x86_64 3.0.4-1.el7 zabbix
  
查看zabbix_get
  
[iyunv@linux-node1 zabbix_agentd.d]# yum install -y zabbix-get
  


zabbix-get使用参数如下:
  

[iyunv@linux-node1 zabbix_agentd.d]# zabbix_get -s 192.168.56.11 -p 10050 -k "nginx.active"  
-s 指定我们要查看的服务器
  
-p 端口,可以不加。默认是10050
  
-k 监控项的名称(根据上面的配置来定义的)
  
更多参数:zabbix_get --help
  


错误案例:

如果出现如下错误,大致意思是拒绝连接
  

[iyunv@linux-node1 zabbix_agentd.d]# zabbix_get -s 192.168.56.11 -p 10050 -k "nginx.active"  
zabbix_get [24234]: Check access restrictions in Zabbix agent configuration
  


解决方法:
  

[iyunv@linux-node1 ~]# vim /etc/zabbix/zabbix_agentd.conf  
Server= 192.168.56.11
  


因为我们当时只允许本机127.0.0.1进行连接。所以会出现这样问题
  

[iyunv@linux-node1 ~]# systemctl restart zabbix-agent  


修改完配置文件都要重启
  提示: zabbix-agent的配置文件中指定允许那个server连接,那个才可以进行连接。
  

[iyunv@linux-node1 zabbix_agentd.d]# zabbix_get -s 192.168.56.11 -p 10050 -k "nginx.active"  
1
  


正确结果如上!
  提示:如果在zabbix-agent上面修改了,还需要在网页上进行修改

DSC00028.png

在/etc/zabbix/zabbix-agent.conf上面指定的Server是谁,就只会允许谁通过。如果有多个ip可以使用逗号进行分割

添加item

DSC00029.png
找到一个安装zabbix-agent,点击

DSC00030.png

点击items

DSC00031.png

然后添加Create item(创建item)

DSC00032.png

DSC00033.png

  
Data type:数据类型,这里我们选择Decimal。其他的基本上用不上
  Units:单位 超过1千就写成1k了。 可以在这里做一个单位的设置。默认就可以
  Use custom multiplier:如果这里面设置了一个数,得出来的结果都需要乘以文本框设定的值

DSC00034.png

  Update interval(in sec) 监控项刷新时间间隔(一般不要低于60秒)
  Custom intervals 创建时间间隔(例如:1点-7点每隔多少秒进行监控)格式大致为:周,时,分
DSC00035.png

  History storage period 历史数据存储时间(根据业务来设置,默认就可以)
  Trend storage period 趋势图要保存多久
  New application 监控项的组
  application 选择一个监控项组
  Populates host inventory field 资产,可以设定一个监控项。把获取的值设置在资产上面
DSC00036.png

描述!必须要写。 要不你就是不负责任

DSC00037.png


添加自定义监控项小结:

   1、添加用户自定义参数(在/etc/zabbix/zabbix.agent.d/定义了一个nginx.conf步骤如上)
   2、重启zabbix-agent
   3、在Server端使用zabbix_get测试获取(命令如上)
   4、在web界面创建item(监控项)

自定义图形

DSC00038.png
  
Name:名字
  Width:宽度
  Height:高度
  Graph type:图形类型
  其他默认即可

DSC00039.png

然后我们点击Add添加Items监控项,找到我们刚刚设置的服务器

DSC00040.png

然后找到我们刚刚添加的监控项

DSC00041.png

还可以选择颜色,添加其他的很多设置。不细说

DSC00042.png

点击Prewview可以进行预览,如果出现字符乱码可以阅读我们另一篇文章(zabbix默认不支持中文)
  确定没有问题,选择下方Add即可

DSC00043.png

出现我们添加的

DSC00044.png

需要在Monitoring--->Graphs--->选择我们添加的主机即可
  接下来我们需要进行测试:
  测试前:

DSC00045.png

  使用ab测试工具进行测试,设置100万并发进行访问
  

[iyunv@linux-node1 ~]# ab -c 1000 -n 1000000 http://192.168.56.11:8080/  
This is ApacheBench, Version 2.3 <$Revision: 1430300 $>
  
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
  
Licensed to The Apache Software Foundation, http://www.apache.org/
  
Benchmarking 192.168.56.11 (be patient)
  


测试后:
DSC00046.png
  我们可以查看zabbix监控图标

DSC00047.png

我们中间设置了间隔60秒,说明每隔60秒我们进行获取一次
  我们可以设置它的方式显示
  找到Graph选择类型,Stacked是堆叠显示,其他的大家可以自行百度。不细说
  堆叠显示如下:

DSC00048.png

如果我们想加多个图形都显示在一张图上,可以进行如下操作

DSC00049.png

  找到Graphs

找到我们设置的图形


点击添加即可
我们可以让多个图标显示在一个图片上


点击我们创建一个聚合图形(screens)


点击进去


点击编辑


选择item添加的地方,因为上面创建聚合图形的时候我们选择了2X2 所以这里会显示2个


找到相对应的添加即可
  我们可以多添加几个


  结果如上图显示
  除了显示图片还可以显示其他内容

  

Action log:日志  
Clock:时间
  
Data overview:数据概述
  
Graph:图形
  
History of events:历史事件
  
Host group issues:主机组问题
  
Host issues:主机问题
  
Hosts info:主机信息
  
Plain text:文本
  
Map:架构图
  
Screen:屏幕
  
Server info:服务器信息
  
Simple graph:简单的图
  
Simple graph prototype:简单的原型图
  
System status:系统状态
  
Triggers info:触发器信息
  
Tiggers overview:概述
  
URL:URL地址
  

  


例如我们输入一个URL:



我们还可以自定义一个Maps,一张架构图。操作如下:



第二步:选择编辑Edit map


因为他默认图片比较小,我们可以点击下方,进行调整图片大小。


点击右上角编辑,然后我们点中图中的服务器即可


我们模拟有2台服务器



然后我们选中新添加的服务器进行修改



点击Apply就可以了。
  按住Ctrl点中zabbix server和另一台服务器



然后我们点击左上方的Link:他们就连接起来了



温馨提示:修改完成后需要点击保存[update]如果不点后果就是从新在做一遍~


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-430433-1-1.html 上篇帖子: Centos7 Zabbix添加主机、图形、触发器 下篇帖子: lnmp源码编译安装zabbix
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表