zoukankan      html  css  js  c++  java
  • 020.Zabbix的Actions配置

    一 Action概述

    当产生Trigger后,即当触发器条件被满足时,采取一些操作,如发送事件通知,远程执行命令等,需要配置Action。
    95
     
    名称
    作用
    Trigger
    当Trigger的状态从OK变为PROBLEM
    Discovery
    当network discovery工作
    Auto registration
    主动模式的agent自动注册
    Internal
    当Items变成不被支持(unsupported)或者Trigger变为未知状态(unknown state)

    二 Action配置

    2.1 配置步骤

    1. Configuration---->Actions
    2. 在Event source中选择事件来源
    3. Create action
    4. 设置Action参数
    5. Conditions,设置执行动作

    2.2 具体配置

    Action条件配置:
    96
    97
     
    参数
    描述
    Name
    唯一的Action名字
    Type of calculation
    条件之间的关系,且或非
    Conditions
    维护周期
    触发器状态为PROBLEM
    New condition
    添加新的更多的条件
    具体操作配置:
    98
    操作配置参数
    参数
    描述
    Default operation step duration
    默认时间间隔为1小时
    Default subject
    默认报警通知主题,可以包含宏,如{TRIGGER.NAME}
    Default message
    默认通知内容,可以包含宏,如{HOST.NAME}
    Pause operations while in maintenance
    维护周期时间内暂时此告警操作
    Operations
    操作内容
    Operation details
    具体操作细节
    Steps:执行操作的起始次数,0结束表示无限制
    Step duration:每次操作的时间间隔
    Operation type:操作形式,发送信息,发送远程命令
    Send to User groups:发送信息所接受的用户组
    Send to Users:发送信息所接受的用户
    Send only to:发送信息通知的介质,如邮件、即使讯息
    Default message:默认信息内容
    解释:
    默认的步骤是1-1,也即是从1开始到1结束。一旦故障发生,就是执行sendEmail.sh脚本发生报警邮件给Admin用户和zabbix administrator组。
    假如故障持续了1个小时,它也只发送一次。如果改成1-0,0是表示不限制.无限发送
    间隔就是默认持续时间60秒。那么一个小时,就会发送60封邮件。
    相关参考参数:
    • 告警主机:{HOST.NAME}
    • 主机IP: {HOST.IP}
    • 告警时间:{EVENT.DATE} {EVENT.TIME}
    • 告警等级:{TRIGGER.SEVERITY}
    • 告警信息:{TRIGGER.NAME}
    • 问题详情:{ITEM.NAME}:{ITEM.VALUE}
    • 事件ID: {EVENT.ID}
    恢复操作配置:
    99
    恢复操作配置参数
    参数
    描述
    Default subject
    默认报警通知主题
    Default message
    默认通知内容
    Operations
    事件恢复后执行的操作内容
    Operation details
    具体操作细节
    Steps:执行操作的起始次数,0结束表示无限制
    Step duration:每次操作的时间间隔
    Operation type:操作形式,发送信息,发送远程命令
    Send to User groups:发送信息所接受的用户组
    Send to Users:发送信息所接受的用户
    Send only to:发送信息通知的介质,如邮件、即使讯息
    Default message:默认信息内容
    保存后
    100

    三 发送消息中的宏配置

    宏配置是在消息主题和消息内容中完成的。
    示例一:
    消息:{TRIGGER.NAME}:{TRIGGER.STATUS}
    接受内容后变为:Processor load is too high on server zabbix.zabbix.com:PROLEM
    示例二:
    消息:Processor load is:{zabbix.zabbix.com:system.cpu.load[avg1].last(0)}
    接受内容后变为:Processor load is:1.45
    示例三:
    消息: Latest value:{{HOST.HOST}:{ITEM.KEY}.last(0)}
    MAX for 15 minutes:{{HOST.HOST}:{ITEM.KEY}.max(900)}
    MIN for 15 minutes:{{HOST.HOST}:{ITEM.KEY}.min(900)}
    接受内容后变为:Latest value:1.45
    MAX for 15 minutes:2..44
    MIN for 15 minutes:1.01
    示例四:
    消息: Problem:
    Event ID:{EVENT.ID}
    Event value:{EVENT.VALUE}
    Event status:{EVENT.STATUS}
    Event time:{EVENT.TIME}
    Event date:{EVENT.DATE}
    Event age:{EVENT.AGE}
    Event acknowledgement:{EVENT.ACK.STATUS}
    Event acknowledgement history:{EVENT.ACK.HISTORY}
    Recovery:
    Event ID:{EVENT.RECOVERY.ID}
    Event value:{EVENT.RECOVERY.VALUE}
    Event status:{EVENT.RECOVERY.STATUS}
    Event time:{EVENT.RECOVERY.TIME}
    Event date:{EVENT.RECOVERY.DATE}
    接受内容后变为:
    Problem:
    Event ID:21874
    Event value:1
    Event status:PROBLEM
    Event time:13:04:30
    Event date:2016.06.03
    Event age:5m
    Event acknowledgement:Yes
    Event acknowledgement history:2016.06.03 13:04:30 "John Smith (Admin)"
    Recovery:
    Event ID:21896
    Event value:0
    Event status:OK
    Event time:13:10:07
    Event date:2016.06.03

    四 Conditions(条件)配置

    4.1 条件的逻辑运算

    AND:所有的条件必须同时满足
    OR:满足条件中的一个即可
    AND/OR:两个关系的组合,AND用于不同条件的关系,OR用户相同条件的关系
    运算符
    描述
    运算符
    描述
    =
    条件等于
    like
    部分匹配
    >=
    条件大于或等于
    not like
    部分不匹配
    >=
    条件小于或等于
    in
    在范围内
    <>
    排除
    not in
    不在范围内

    4.2 触发器的状态

    如果Trigger从OK---->PROBLEM,则状态变为PROBLEM
    如果Trigger从PROBLEM---->OK,则状态变为OK
    对Trigger创建一个新的Action时,会自动添加以下两个条件
    Trigger value = PROBLEM:任何问题都会发送消息,如果没有配置条件,则会发送所有事件消息
    Maintenance status = not in maintenance:在维护时间段将不会发送消息

    五 Operation type(操作类型)

    5.1 动作有以下两种

    • 发送消息(send message)
    • 执行远程命令(Remote command)

    5.2 配置发送消息的步骤

    1. 配置消息发送介质,步骤为:Administration---->Media types
    2. 配置一个对需要发送消息设备的用户,步骤为:Administration---->Users---->Create User
    3. 配置Action中的消息发送
    注意:配置的用户必须对需要发送消息的主机的Trigger具备可读权限。

    5.3 远程命令配置

    • 通过远程命令可以执行以下操作:
    • 若服务无响应,自动重启应用(Web服务、中间件、CRM)
    • 通过IPMI协议远程重启服务器
    • 清空磁盘无用文件,释放空间
    • 当CPU负载过高,从一个物理机迁移VM到另一台物理机
    • 当CPU资源不足时,为云环境增加一个节点资源CPU(磁盘、内存及其他)等
    注意:
    • 远程命令不支持主动模式的Agent,是从Server向Agent执行,即被动模式
    • 远程命令不支持代理模式
    • 命令的长度被限制为255个字符
    • 可以在一个操作中执行多条命令,添加新的远程命令即可
    • 远程命令可以包含宏
    • Zabbix用户必须对该命令具有执行权限,或可以无密码模式sudo
    • Agent的防火墙允许从数据包进来的命令
    • Zabbix不会检测命令是否执行成功,只是执行命令
    配置过程:
    1 开启Agent对远程命令的支持
    [root@imxhy02 ~]# vi /etc/zabbix/zabbix_agentd.conf
    EnableRemoteCommands=1
    [root@imxhy02 ~]# systemctl restart zabbix-agent.service
    2 web添加对remote command
    101
    102
    即当Zabbix-ClientCentOS-02登录用户超过2的时候,发送信息给administrator用户组和admin用户,并且执行pkill -kill -t pts/2命令。
    注意:当Zabbix用户执行root命令的时候,需要先设置此命令的权限,visudo。

    六 discovery配置

    6.1 自动发现discovery有以下8种

    • 增加主机(add host)
    • 删除主机(remove host)
    • 开启主机监控(enable host)
    • 关闭主机监控(disable host)
    • 增加到组(add to group)
    • 从一个组中删除(delete from group)
    • 链接到模板(link to templates)
    • 取消模板链接(unlink from template)

    6.2 自动注册auto-registration动作有以下6种

    • 发送消息(send message)
    • 远程命令(remote command)
    • 增加主机(add host)
    • 关闭主机监控(disable)
    • 增加到组(add ro group)
    • 链接到模板(link to template)
  • 相关阅读:
    Python学习记录——Ubuntu(四)计划任务、grep、正则表达式、sed、awk
    Python学习记录——Ubuntu(三)文件操作
    Python学习记录——Ubuntu(二)用户和用户组、环境变量
    Python学习记录——Ubuntu(一)基本配置、快捷键和系统启停命令行
    【转】Pycharm常用快捷键
    Python学习记录——文件操作
    闭包详解
    关于django中前端表单提交那点事
    Django+celery+redis 异步发送邮件功能
    Nginx
  • 原文地址:https://www.cnblogs.com/itzgr/p/9962955.html
Copyright © 2011-2022 走看看