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

[经验分享] zabbix的安装及监控系统组件的应用

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2014-5-14 22:31:26 | 显示全部楼层 |阅读模式
主机(host)===============
     一个你想监控的网络设备(需要知道IP/DNS)
主机组(host group)======================================
    一个逻辑的主机组,它包含主机和模板。 主机和模板在同一个主机内的话模板不能被link到其他上.机组通常用于给不同的用户组创建访问权限
监控项(item)=============================================
    你想从主机中收集到的数据
触发器(trigger)==========================================
       一个逻辑表达式,用来表达从监控项获取的数据达到了预设的问题阀值,当接收到的监控值达到了预设的阀值,则触发器状态由’OK’变更为’Problem’,当收到的监控值低于阀值,则状态保持/变更为’OK’.
事件(event)=============================================
       一个事情发生如触发器状态变更或一个自动发现(discovery)/agent自动注册等
动作(action)============================================
      当一个事件发生时预设的处理过程,一个动作(action)包括操作(operations,如发送告警)和条件(当指定的操作完成)
告警升级(escalation)====================================
      在动作中一个自定的操作执行过程,一个发送告警/执行远程命令的队列
媒介(media)=============================================
      发送告警的渠道
告警(notification)======================================
      通过媒介(media)渠道发送事件的消息
远程命令(remote command)================================
      当监控主机达到某些条件(condition)后预设的自动执行的命令
模板(template)==========================================
      一组包含监控项、触发器、绘图、面板(screen)、应用、低级别自动发现规则等并且能被其他主机应用的实体.模板能够提升主机部署监控任务的速度,同时也非常容易对监控任务做批量(mass)更新。模板被主机链接(link).
应用(application)======================================
      监控项逻辑组
web方案(scenario)======================================
      对一个web站点可用性进行检查的一个或多个http请求
前端(frontend)=========================================
      Zabbix提供的web接口
Zabbix API=============================================
      Zabbix API允许通过JSON RPC协议去创建、更新、获得Zabbix对象(如主机、监控项、绘图等等)以及完成自定义任务
Zabbix server==========================================
      Zabbix软件中心进程,用于连通Zabbix proxy及agent完成监控、评估触发器、发送告警以及中心数据存储
Zabbix agent===========================================
      部署在监控主机上的进程,用于监控本地资源和应用
Zabbix proxy===========================================
      替代Zabbix server完成数据收集的进程,通常用于降低中心Zabbix Server的负载
节点(node)=============================================
      一套完整的Zabbix server配置,通常位于分布式系统中,用于负责本区域的监控

  主机                  角色
172.16.24.1             mysql
172.16.24.2            zabbix服务器端 (安装mysql)
172.16.24.3            zabbix被监控端



24.1
一、确保myaql已安装,并在安装好的mysql服务器端创建数据库并授权.(172.16.24.1)
mysql> grant all on *.* to 'root'@'172.16.24.%' identified by 'mypass' with grant option;
Query OK, 0 rows affected (0.01 sec)

mysql> create database zabbix;
Query OK, 1 row affected (0.00 sec)

mysql> grant all on zabbix.* to 'zaxuser'@'172.16.24.%' identified by 'zaxpass';
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)


二、安装zabbix:
zabbix-2.0.8-3.el6.x86_64.rpm         
zabbix-web-2.0.8-3.el6.noarch.rpm
zabbix-server-2.0.8-3.el6.x86_64.rpm      
zabbix-web-mysql-2.0.8-3.el6.noarch.rpm
zabbix-get-2.0.8-3.el6.x86_64.rpm  
zabbix-server-mysql-2.0.8-3.el6.x86_64.rpm

[iyunv@node2 ~]# yum localinstall *.rpm
三、(先装上mysql-server)
[iyunv@node2 create]# mysql -uroot -pmypass -h172.16.24.1 zabbix < /usr/share/doc/zabbix-server-mysql-2.0.8/create/schema.sql
[iyunv@node2 create]# mysql -uroot -pmypass -h172.16.24.1 zabbix < /usr/share/doc/zabbix-server-mysql-2.0.8/create/images.sql
[iyunv@node2 create]# mysql -uroot -pmypass -h172.16.24.1 zabbix < /usr/share/doc/zabbix-server-mysql-2.0.8/create/data.sql


四、修改zabbix配置文件并启动zabbix
[iyunv@node2 create]# cd /etc/zabbix/
[iyunv@node2 zabbix]# vim zabbix_server.conf

DBHost=172.16.24.1
DBUser=zaxuser
DBPassword=zaxpass

[iyunv@node2 zabbix]# service zabbix-server start
Starting Zabbix server:                                    [  OK  ]

wKiom1NyC62RNWI_AARNjSSZHHY402.jpg
wKioL1NyC7-wQAWZAAqO8vFC6aI623.jpg
wKiom1NyDAzCUtoEAALr4tN_LAY724.jpg
wKioL1NyDAXSvQN-AAKvVvpKK1o742.jpg

wKiom1NyDEvgTv8lAAHkqIBMcbI353.jpg

wKiom1NyDG6hEXA0AAFsGh2S5MI894.jpg

wKioL1NyDHajpedvAAWldWnPrJQ249.jpg

配置了解
Hosts
zabbix中的hosts就是指你想监控的设备,如服务器、工作站、交换机等等。如果你想监控某个主机X的某个变量,你必须先创建一个主机X,然后再给该主机添加监控items。hosts可以被有组织的安排进host group中。
通过zabbix的前端web界面配置hosts:
Configuration->Hosts->Create Host
此页面中有5个表单:Host、Template、IPMI、Macros、Host inventory。
wKioL1Ny4T6hTie9AADcZ8th6Jk837.jpg
Host表单中包含了一般的host属性
wKioL1Ny4a3TyeOIAAJ5BtmQyBc762.jpg

host name    必须是一个唯一的名称,在zabbix agent的配置文件中hostname参数的值必须和这里的一致
visible name  这个名称是该hosts显示在lists、map中的名称,支持utf8
groups        该hosts属于那个host group,一个hosts至少属于一个host group
new host group    创建一个新的group,并把该hosts包含进去,如果是空的,则被忽略
agent interfaces    zabbix支持多种host接口,例如:agent、snmp、jmx、ipmi等,使用agent interface
ip address        hosts的ip地址
dns name          hosts的dns名称
connect to        是一个单选的按钮,这个告诉zabbix server使用那种方式检索agent的数据
port              tcp方式,agent默认是10050端口
default           因为可以添加多个agent interfaces,该单选的default按钮可以选择默认使用那个接口
monitored by proxy   hosts可以被zabbix server或者zabbix proxy监控,no proxy表示使用zabbix server监控
status           monitored表示host已经准备好了被监控,not monitored表示host还没准备好。
Templates表单允许你连接一个templates到该host上面,所有该templates的items、triggers、graphs等等都会得到继承。点击add可以链接一个templates过来,点击unlink则会删除该模版。
wKioL1Ny4kaje3sVAAIQEGfQCVA125.jpg
Host groups
通过zabbix的前端web界面设置host group:
Configuration->Host groups->Create host group
该页面有一个表单:host group
group name    group的名称,必须是唯一的
hosts         选择哪些hosts属于该group,一个host group可以有0个或者多个hosts


Items

   items表示从host中收集哪些数据项,一旦你配置了一个host,你就需要开始监控一些items以获取真实数据,所有的item都是单独的个体,你可以把很多items附加到一个templates上面,然后把该templates附加到一个hosts上面。在单个的item中你可以指定哪些数据是你想收集的,例如:一个item key名称是system.cpu.load,它会收集cpu的负载,一个item key名称是net.if.in,它会收集进入网卡的信息。你可以给key指定更进一步的参数,就是使用方括号紧跟在key后面.

通过zabbix的前端web界面创建一个item:
Configuration->Hosts->items->create item

wKioL1Ny5FiDfr7AAAJkDxfX9cY968.jpg
host    可以选择一个host或者一个templates
name    这个显示item的名称,在下面的macros会用到
type    监控客户端的方式,主要分析zabbix agent和zabbix agent(active)两种方式
key     item key,支持的item keys可以在单独的item type中查看,在一个host中key必须是唯一的
host interface    选择一个host inserface,可以在host level中编辑它
type of information    采集到的数据在数据库中存储的格式
numeric(unsigned) 64位无符号整型
numeric(float)    浮点数
character         字符型
log               log文件类型
text              text类型没有限制大小
date type         用在整型的items中,用来指定确切的数据类型
boolean           0/1
octal            八进制
decimal          十进制
hexadecimal      十六进制
units    如果设置了units,zabbix会对收到的数据进行处理,在显示数据时会使用units后缀,默认的原始数据是除以1000不是1024,如果使用B(byte)units,则会使用1024进行分割,如果设置units为B,zabbix会这样显示:1 1B,1024 1KB,1536 1.5KB。如果是unmeric(unsigned)的则可以使用unixtime转化为时间类型,uptime则会转化为可读的时间
use custom multiplier    如果使用了该参数,则对于收到的数据会乘以一个整型或者浮点数,可以用这个选项把KB MBps转化为B Bps类型
update interval    多少秒刷新一次该item
flexible intervals    针对update interval你可以设置例外的情况,可以设置在某个时间段每隔几秒刷新一次,而在其余时间则按照update的设置来刷新,如果有多个flexible设置,则以刷新时间最小的为准。
keep history   在数据库中保存多少天的数据,过期的数据会被清除,
keep trends    保存一些聚合的数据在数据库中的天数,过期数据会被清除,
store value   
as is 不进行预处理
delta(speed per second)  评估这些数据(value-prev_value)/(time-prev_time)
delta(simple change)  评估这些数据(value-prev_value)
log time format    log的时间格式
new application    设置该item属于那个新的application中
applications    把该item连接到已存在的application中,可以是一个或者多个application中
Populates host inventory field   你可以选择一个host信息域存放该item的值,如果设置了
description    输入该item的描述
status   
        enable    该item会被执行
        disable    不会被执行
        not supportes    不支持该item
Item types
  item types是zabbix提供的各种检查方式,下面主要看zabbix agent类型,这种类型主要通过zabbix agent来收集数据,检查又分为主动检查和被动检查,item key是需要分不同平台的.
History and trends
   History and trends是两种保存zabbix收集来的数据的方法,history保存每一个收集来的数据,trends保存一些基于小时的平均、最大、最小值信息。
Mass update
   如果你有时候需要一次修改一个item的多个属性值,不用打开每一个单独的item去修改,可以使用mass update,可以选择多个items,然后选择mass update
Value mapping

   为了使收到的数据更为人们可读,我们可以使用value maps,它包含了numeric valus到string的映射,value map可以用在zabbix的前端和后端,以及例如email SMS的消息提醒上面,例如0可以表示false,1可以表示true,设置value map:

Administration->General->value mapping->create value map
wKiom1Ny5aqj1MtSAAHOKvCUwAk672.jpg
ame 一个唯一的名称。

  mapping  中设置各个独立的mappings,设置好value mapping后可以在item的配置界面的show value选项中选择

Applications

   applications 用在本地group的group items中,在使用applications之前,你必须创建一个applications,并且link items过去。创建applications:
Configuration->Hosts->Applications->Create application
Configuration->Templates->Applications->Create application

也可以在创建item的时候直接创建application

Queue
   queue显示items还剩几分钟刷新,queue只是数据库中数据的逻辑表现,统计很好的显示了zabbix server的性能。 Administration-Queue可以查看,如果有delay的可以通过右上角的details查看具体信息。

Triggers
Triggers是一个本地的逻辑表达式,用来评估items收集到的数据并表示当前系统的状态。当items收集数据的时候,它会非常不切实际的遵循这些数据直到碰到一个报警状态,这个评估数据的任务就由trigger来处理。
触发器允许设置一个阈值来决定什么数据是可以接收的,如果进入的数据超过可接受的状态,触发器则会被触发。触发器有两种状态OK/PROBLEM,如果该值是触发器表达式的一部分,在zabbix server每次收到新的值,触发器的状态会被重复计算。配置trigger:
Configuration->Hosts->Triggers->Create trigger
该页面包含了两个表单:trigger、dependencies
wKioL1Ny5oODyI2yAAHGIvwKFuI970.jpg
trigger表单属性:
name  trigger name,这个名称可能包含macros,$1..$9可以被用来关联表达式的常量。
expression  逻辑表达式用来收集触发器的状态
Multiple PROBLEM events generation   通过设置该选项,你可以在触发器产生problem的时候触发一个事件
comments   关于该触发器的信息
url    如果不为空,则该url被用到screen
serverity   设置触发器的严重程度
enabled   选择激活该触发器

Trigger experssion

   触发器表达式在触发器中是很灵活的,可以组合出各种复杂的表达式。简单的表达式模式如下:{:.()}
parameter 许多数值型函数接收参数,有些函数会返回多个值,可以通过在参数前加#,来获取特定的值。

Trigger severity names and colours是可以修改的:

Administration->General->Trigger severities
wKiom1Ny5z_BfPM4AAHu0-eBk1I419.jpg
Events

   events在zabbix有三个地方可以用到:triggers、discovery、auto registration。events可以是基于时间戳的,也可以是基于actions的,例如邮件报警。关于events的详细信息可以在 Monitoring-Events中查看,可以通过点击时间查看更详细的信息。

Visualisation

   Graphs内建有简单的simple graphs和复杂的custom graphs两种形式。

   Simple graphs提供items收集到的数据的可视化的数据图,在simple graphs中不需要用户进行配置,他们都是由zabbix自动生成,可以通过Monitoring->Latest data进行查看,点击具体的item的graph link,就会显示数据图,在图形上面有滑动按钮可以选择查看那个时间的数据,还有右边可以设置时间段来显示数据,左边可以设置图形中显示几个小时的数据量。
  Custom graphs 提供一些用户定制的图形。Simple graphs可以用来查看单个item的数据,它没有提供用户定制的功能,如果你想改变图形的风格、线条显示的样式、或者想显示多个items的数据,这时就需要costom graphs,需要手动配置,可以创建针对一个主机、多个主机、或者一个templates的图形。创建custom graphs:

Configuration->Hosts->graphs->create graph
该页面包含两个表单:graph、preview
wKioL1Ny56ygxp_ZAAILrV89AQQ651.jpg
graph表单:
name     数据图的唯一名称
width    数据图的像素宽度
height   数据图的像素高度
graph type    图像类型,normal 正常图形,数据以线条显示。stacked 叠加式图形。pie 饼状图形。exploded 分解的饼状图形。
show lengend         显示该图利的说明
show working time    如果选择该选项,则未工作的时间段会以灰色背景显示,该选项不支持pie和exploded
show triggers        如果选择该项,触发器会以红线显示,不支持pie和exploded
precentile line(left)    显示左边Y轴的百分比,
precentile line(right)    显示右边Y轴的百分比
Y axis MIN value    Y轴的类型,calculated Y轴的值会自动计算,fixed 固定Y轴的最大值和最小值,不支持pie和exploded
Y axis MAX value
items        显示哪个items的数据图,点击add按钮增加items,graphs items可以配置以下属性:
name         item的名称,会被显示出来
function     显示哪些值,有all、min、max、avg
draw style   回吐的样式,只支持normal graphs
Y axis side  元素值显示在那个Y轴旁边
color        颜色

Network maps
用来创建网络拓扑图,在创建网络map之前,你必须先创建一个map,它包含了一些基础的元素,然后才能制作maps。你可以用一个hosts、host group、trigger、image来填充一个map。icons代表map的元素,你可以定义一些icons显示的信息,出问题的时候显示的内容,已有的maps可以在Monitoring->Maps上查看,创建一个map:

Configuration->Maps->create maps
wKiom1Ny6Fui5FmhAAJ5tBpz_ks762.jpg
map属性如下:
name    map的名称
width    map像素的宽度
height    map像素的高度
background image    背景图,no image 没有背景图,image 可以选择一个背景图
icon highlight    图标高亮,如果element有个主动的trigger,则可以使用高亮图标表示,
mark elements on trigger status   
expand single problem    如果一个map元素有一个问题,这个选项控制是否显示该问题的名称,如果选择,problem的名称会被使用
advanced labels    可以让你定义一个分开的标题为分开的element type
icon label type    icons的标题类型,label icon的label,ip address ip地址,element name element的名称,status only 状态,nothing 不显示labels
icon label location    label的位置,bottom 下方,left 左边,right 右边,top 顶部
problem display    显示故障问题,full 所有的问题都会被显示,separated 未被确认的问题占左右问题的比重,unacknowledged only 只显示未确认的问题

emplates

   一个templates可以设置一个实体,让这个实体方便的应用到一组hosts上面,这个实体可以是items、triggers、graphs、applications、screens、low-level。
当一个templates连接到一个host,则该templates包含的所有实体都会添加到该host,templates经常被用到一组含有相同服务或者应用的机器上。配置template,在创建template的时候,需要你定义几个常用的参数,然后增加一些实体(items、graphs):

Configuration->Templates->Create template
该页含有三个表单:template、linked templates、macros
wKiom1Ny6TGCnNykAADsrNPAUJ8936.jpg

template name    一个唯一的template名称
visible name    如果你设置该名称,则在lists、maps中显示该名称
groups    哪个hosts/templates属于该template
new group    可以在此新建一个group属于该template,如果是空的,则忽略host/templates    List of hosts/templates the template is applied to


linked templates表单允许你连接一个或者多个已经存在的templates到新建的template里面,连接过来的templates中的所有实体都会得到继承

macros表单,允许你定义template-level,底下按钮的意思:
  save   保存该template
  clone    创建一个template基于目前的template
  full clone    创建一个template基于当前的template,包括当前template继承的其他template的实体
  delete    删除一个template,template的实体仍然会连接到hosts上
  delete and clear    删除一个template并且清除所有的实体
  cancel    忽略

  linking/unlinking template通过linking应用到hosts,通过unlinking从hosts中脱离
  linking一个template:Configuration → Hosts-点击hosts-切换到template表单-点击add按钮
  linking一个template到多个hosts:Configuration → Templates-点击template表单, 从group中选择hosts
Notifications upon events
   为了可以向zabbix发送消息,或者从zabbix收到通知信息,我们需要:
       1 定义一些媒介
       2 定义一些行为向我们定义的媒介上发送信息。
  行为由条件和操作构成,当条件达成的时候,操作开始执行,两个重要的操作是发送信息和执行远程命令
   媒介类型包括多种:email、sms、jabber、Custom alertscripts等等,主要了解一下email、sms、alertscripts
配置email媒介:

Administration→Media-Create media type
该页只包含一个表单:media
wKiom1Ny6iTwCyVuAAGrL3j_7bM049.jpg
description    媒介类型的名称
  type    选择一个媒介类型 email
  smtp server    设置smtp server用来发送邮件
  smtp helo    设置正确的smtp helo值,一般是domain name
  smtp email    一个邮件地址,会显示在邮件的from前面,表示从哪里发出来的邮件
  enable    开启emai
然后配置用户媒介,给用户分配指定的地址:Administration→Users-点击具体用户-选择media表单-单机add按钮增加媒介。在new media表单中包含以下属性:
  type    选择email作为type类型
  send to    定义给哪个邮件地址发邮件
  when active    可以定义发送信息的时间段
  use if serverity    选择哪些级别的trigger信息将被发送
  status    是否使用

Actions  

   如果你希望值事件发生后执行某些动作,你就需要配置actions,可以在三个地方给相应的事件定义actions:triggers、discovery、auto registration。配置actions:

Configuration->Actions->Event source(选择类型)->Create action
一般有三个表单:action、conditions、operations,以triggers类型为例
wKiom1Ny6uKASHstAAKggFQ_h0c092.jpg
name    唯一的action名称
  Default operation step duration    默认的升级周期
  default subject    默认的消息主题,可以包含macros
  default message    默认的消息主体,可以包含acros
  recovery message    如果开启该选项,zabbix会发送恢复后的信息
  recovery subject    恢复消息的主题
  recovery message    恢复消息的主体
  enable    是否开启该action













运维网声明 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-19151-1-1.html 上篇帖子: linux--监控系统之Zabbix简介 下篇帖子: Linux下Zabbix_Server的安装-源码安装 监控系统
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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