zabbix配置 - 18965050/zabbix GitHub Wiki
zabbix的[配置基本流程为:Host group(主机组)-->Hosts(主机)-->Applications(项目组)-->Items(监控项)-->Trigger(触发器)-->Event(事件)-->Action(处理动作)-->User Group(用户组)-->User(用户)-->Medias(告警方式)-->Audit(日志审计)
Host Group用于对Host的分组管理.
Configuration-->Host groups-->Create host group

Host Group可以包含Host,也可以包含Template. 其数据保持在zabbix.groups表中
Template用于对Application,Item,Trigger,Graphs等进行归纳. 其可以归属到某个Host group中
Configuration-->Templates-->Create Template
模板还具有继承关系, 在"Create Tempate"的"Linked templates"Tab页面中设置

Template数据保存在zabbix.hosts表中(status=3)
Configuration-->Hosts-->Create host

在创建Host时还可以同时设置Template, 这样模板中的Item, Trigger等数据就会自动绑定到Host中

Host数据保存在zabbix.hosts表中(status=0)
Template和Host中可以配置Graph,便于将数据以图形化的形式显示
Configuration-->Hosts-->Graphs-->Create graph

在Items中可以选择要绘图的Item. 创建后可以点击"Preview"Tab页进行查看

当然, 也可以通过Monitoring-->Graphs, 选择Group,Host,Graph后进行查看
Screen可以在一个页面中显示多个资源信息(比如issue list, graph)等等
Configuration-->Screens-->Create screen

创建完后, 点击screen name连接,进行每个单元格的配置

当然, 我们也可以通过Monitoring-->Screens 来查看
Slide shows能以幻灯片的形式来展示Screen
Configuration--> Slide shows-->Create slide show

这样, 我们可以在Monitoring-->Screens页面中,选择Slide shows来进行幻灯片展示
Map用于配置和管理网络拓扑
Configuration-->Maps-->Create map

创建Map中的背景图可以在"Administration-->General"页面中选择"Images", 并在Type中选择"backgroud"来创建

创建Map后, 点击map name, 进行Map配置

可以在Monitoring-->Maps中查看网络拓扑情况
Web用于监控Web应用的, 比如返回状态码, 响应时间等. 其再Host中配置
Configuration-->Hosts列表页面中,选择Web,点击"Create scenario"

在创建页面中可以选择一个已存在的Application或指定一个新的Application, Variables可以设定变量给后面的step使用
在Step页面中添加步骤:

注意: 需要在zabbix-server所在的宿主机修改/etc/hosts,添加zabbix.xyz.cn域名
这样, 我们就可以在"Monitoring-->Web"中进行查看了

IT Services指的是服务治理水平(SLA)
Configuration-->IT Services页面中点击某个节点, 在弹出菜单中选择"Add Child"

这样, 在"Monitoring-->IT Services"中可以看到服务水平了

Item为定义的监控项. 其数据存在于zabbix.items表中.
Item可以添加到Host中, 也可以添加到Template中
Configuration-->Hosts/Templates-->Items,点击"Create item"

其中, key可以选择zabbix自带的或是自定义的. zabbix自带的key文档可访问zabbix 2.4 Item
对于key中以<>标示的变量表明此变量有默认值
可以通过zabbix_get来判断key设置是否正确, 比如
zabbix_get -s 192.168.56.1 -p 10049 -k vm.memory.size[total]
# 输出
17055715328item属性参数配置说明如下:

创建item时除了可以选择zabbix中自带的key, 还可以自定义key. 步骤如下:
-
修改zabbix_agent.conf配置文件
Include=K:\installed\zabbix\zabbix_agentd.conf.d\*.conf UnsafeUserParameters=1 # 允许包含特殊字符
-
在上述Include配置目录下创建子配置文件, 并定义
UserParameter=print_hello,echo "hello"自定义key的编写规则为:
UserParameter=key,command #不支持参数 UserParameter=key[*],command $1 $2 $3... # 支持参数
可编写多个子配置文件, 每个对应一个自定义key, 注意key不能重复, 否则zabbix_agent启动不起来
-
重启zabbix_agent, 并用
zabbix_get来判断自定义key是否生效zabbix_get -s 192.168.56.1 -p 10049 -k print_hello # 输出 hello
Macro用于Template,Item和Trigger中,其可分为:
-
全局宏: Administration-->General列表页中选择Macros,然后可添加或修改

-
模板宏: Configuration-->Templates列表页中,选择某个模板,在其修改页面中选择Macro

-
主机宏: Configuration-->Hosts列表页中,选择某个Host,在其修改页面中选择Macro

另外, zabbix有很多自带的宏, 可参考zabbix内置的宏
zabbix对于告警的流程为:

Configuration-->Template/Host-->Triggers--Create trigger

trigger配置选项说明:

"Expression"表达式可以使用单位:
- s: second
- m: minute
- h:hour
- d:day
- w:week
- K:kilo
- M:mega
- G:giga
- T:tera
- P:pera
- E:exa
- Z:zetta
- Y:yotta
比如,表达式为:
{host:zabbix[proxy,zabbix_proxy,lastaccess]}>120可以写成
{host:zabbix[proxy,zabbix_proxy,lastaccess]}>2m表达式的规范为:
{<server>:<key>.<function>(<param>)}<operator><constant>表达式中的函数说明可参见: [trigger function说明](http://pengyao.org/zabbix-triggers-functions.html,"trigger function说明"). 官方文档为 官方的trigger-function
告警依赖指的是此条trigger依赖其他trigger触发才有效

action为对trigger触发做出的响应. 比如告警通知或执行命令等. action可以对trigger, discovery, auto-registration,internal等事件源做出响应

Configuration-->Actions页面中,先选择某个事件源, 再点击"Create action"

创建action的参数配置说明如下:

action condition可配置action触发的条件逻辑关系

action opreations指的是具体触发干什么. 一般type选择为"send message"(需要配置media type)或"remote command"(远程执行命令)
当选择"send message"时,需要注意配置media type, 比如邮件, 短信等. zabbix默认的邮件media type不支持认证, 可参考[zabbix邮件配置](https://github.com/18965050/zabbix/wiki/zabbix%E9%82%AE%E4%BB%B6%E9%85%8D%E7%BD%AE zabbix邮件配置)一文.
当选择"remote command"时,需要注意:
- 远程命令不支持主动模式的agent, 必须是server发往agent
- 远程命令不支持代理模式
- 命令长度限制为255个字符
- 可执行多条命令
- 命令可包含宏
- zabbix用于必须对此命令具有执行权限
- agent防火墙允许数据包进入
- zabbix不检测命令是否执行成功
- 如果要在agent上执行远程命令, 则需要开启
EnableRemoteCommands=1
action创建并触发后, 可以在"Monitoring-->Events"中查看事件, 在"Administration-->Audit"页面中选择"action log",查看事件日志
告警升级: 指的是对告警结果进行梯度处理,逐步升级. 在"Operations"Tab页面中进行配置. 比如我们可以配置:
