日常Zabbix报警案例中,大多都是报警发送邮件,场景里很少有需要报警后执行一个命令(启动服务、清空磁盘空间、关停服务器);而今天就给大家讲讲最近需要做的事:报警后执行远程命令

  刚好zabbix动作中有个远程命令功能,那么就通过它来解决问题。。

  远程命令整个过程: items - triggers - action - remote commands

  配置过程:

  1.创建一个mongodb items

  Configuration - Hosts Items

  wKioL1PN6SjB5IWmAAGqLQRk_Zg461.jpg

  spacer.gif

  2.配置mongodb triggers

  Configuration - Hosts Triggers

  wKioL1PN6U6yzifwAADLF5mn3xs708.jpg

  3.配置远程命令的actions

  Configuraction - Actions

  wKiom1PN6GbRPiw3AAGpMejev9A604.jpg

  条件选择触发器值为PROBLEM、触发器为上面的mongodb触发器spacer.gif

  wKiom1PN6H3iYRcnAAGGwNkM9JM812.jpg

  执行次数为5次,每次间隔60秒

  操作类型为:远程命令

  类型为:自定义脚本

  命令:具体的指令。内容将贴在下面。

  wKiom1PN6JrznY7mAAORPm0zyH8222.jpg

  至此整个过程都配完了,,但是现在mongodb挂了,actions会执行启动mongodb命令么。? 肯定不会。

  远程命令前提条件,需要在配置文件开启远程命令参数,并启动agentd。

  echo 'EnableRemoteCommands=1' /usr/local/zabbix/zabbix_agentd.conf

  /etc/init.d/zabbix_agentd restart

  #注意,远程命令不支持在zabbix agentd active模式。。切记。。

  脚本内容:

  cat /usr/local/mongodb/start_mongod.sh

  #!/bin/bash

  /usr/local/mongodb/mongod -f /usr/local/mongodb/mongod.conf /tmp/start.log

  #注意,zabbix启动用户,需要能执行上述命令,也就是需要sudo赋权

  那么现在,已经全部完成,总结一下配置过程

  1.在agentd配置文件中开启EnableRemoteCommands参数

  2.配置actions里的Remote Comand

  3.Commands里的脚本制作

  故障演示

  干掉mongodb

  #killall mongod

  过了采集时间,zabbix将会把triggers置为problem,同时触发actions。记录里显示如下

  Administration - Audit - Actions

  wKioL1PN6dbCLE6gAAC5ROXttiU457.jpg

  如果配置正确,那么audit一定会产生一条remote commnad记录。

  有误1,Audit无记录,查下配置文件、actions配置

  有误2,Audit有记录,但mongodb却未启动,脚本有问题,调试一下。。

Zabbix报警执行远程命令的更多相关文章

  1. 在地铁上看了zabbix 的书发现 "报警执行远程命令"

    在地铁上看了zabbix 的书发现 "报警执行远程命令" 远程命令整个过程:  items -> triggers -> action -> remote com ...

  2. (29)zabbix执行远程命令

    概述 监控,有的人只把他当做报警使用,出现问题之后打开跑回家打开电脑,巴拉巴拉的处理掉,大多数时候都是一些小问题,为何不让zabbix帮你把这些事情处理掉呢?和朋友具体,收到xx硬盘空间慢了.xx服务 ...

  3. zabbix配置通过远程命令来发送邮件

    1.安装好zabbix后,在/var/log/zabbix可以查看日志. 2.主机通过zabbix-get检查 yum install zabbix-get -y zabbix-get  -s 客户主 ...

  4. Ubuntu 14.10 下SSH执行远程命令

    有些时候需要在远程机器上执行命令,如果每次都等进去挺麻烦的,所以用脚本执行会方便很多.下面介绍一下在shell脚本中执行远程命令. 1,首先写好要运行的脚本 run-command.sh, 加上执行权 ...

  5. 如何使用 PsExec 执行远程命令

    前言 这紧紧只是一篇纯技术分享.我们的程序在运行时需要连接多台目标机器,并拷贝目标机器上特定文件夹中的文件.为了方便访问,要在每台目标机器上建立一个特定用户,所以 PsExec 成了实现此功能的一个方 ...

  6. psexec局域网执行远程命令

    执行远程命令的工具psexec.exe 下载 一.首先,被控制机器必须开启ipc$,以及admin$,否则无法执行 开启ipc$ net share IPC$ 开启admin$ net share A ...

  7. Python中使用os模块执行远程命令

    1. 使用os模块远程执行命令 服务端代码 1 import socket 2 import os 3 4 sh_server = socket.socket() #创建一个socket对象 5 sh ...

  8. Python网络编程03 /缓存区、基于TCP的socket循环通信、执行远程命令、socketserver通信

    Python网络编程03 /缓存区.基于TCP的socket循环通信.执行远程命令.socketserver通信 目录 Python网络编程03 /缓存区.基于TCP的socket循环通信.执行远程命 ...

  9. zabbix在执行docker命令是报错

    系统环境 ubuntu 14.04  x64 安装了zabbix,去监控docker的状态,安装zabbix见我的另外一篇文章 错误如下 WARNING: Error loading config f ...

随机推荐

  1. linux装sqlite3

    下载sqlite3源码包 tar xvfz sqlite-src-3.3.5 cd sqlite-3.3.5 ./configure –no-tcl make python继续一次. apt inst ...

  2. P3332 [ZJOI2013]K大数查询(线段树套线段树+标记永久化)

    P3332 [ZJOI2013]K大数查询 权值线段树套区间线段树 把插入的值离散化一下开个线段树 蓝后每个节点开个线段树,维护一下每个数出现的区间和次数 为了防止MLE动态开点就好辣 重点是标记永久 ...

  3. windows dhcp server

    windows7并没有自带dhcp server的功能,需要安装额外的软件,软件很小巧,只有几百K字节,下载地址http://www.dhcpserver.de/cms/download/ 假设解压路 ...

  4. windows下openssl编译

    昨晚,在编译rabbitmq-c时,使用cmake生成vs项目文件时遇到下列错误: CMake Error at C:/Program Files/CMake/share/cmake-3.6/Modu ...

  5. 03:git常见报错解决方法

    1.1 git常见报错解决方法 1.warning: LF will be replaced by CRLF in .idea/workspace.xml. 参考博客:https://www.cnbl ...

  6. ODAC(V9.5.15) 学习笔记(四)TMemDataSet (1)

    所有的数据集类组件都是从TMemDataSet继承下来的,该组件实现了内存中对数据的管理,其主要的属性.方法和事件如下. 1.数据更新 名称 类型 说明 CachedUpdates Boolean 数 ...

  7. k倍区间 前缀和【蓝桥杯2017 C/C++ B组】

    标题: k倍区间 给定一个长度为N的数列,A1, A2, ... AN,如果其中一段连续的子序列Ai, Ai+1, ... Aj(i <= j)之和是K的倍数,我们就称这个区间[i, j]是K倍 ...

  8. smbclient和mount -t cifs共享win的共享文件夹? autocad小记

    插入U盘没有反应? 首先,打开设备管理器, 发现usb大容量设备为黄色感叹号 其次, 将这个usb大容量设备先卸载, 然后点击"自动扫描硬件变化",就可以重新自动安装usb的驱动. ...

  9. Git 收集别名

    .gitconfig文件夹一般是在C:\Users\Administrator路径下,用于全局的git的配置 下面是git别名的设置: [alias] last = log -1 --stat a = ...

  10. 【做题】spoj4060 A game with probability——dp

    赛前做题时忽然发现自己概率博弈类dp很弱,心好慌.(获胜概率或最优解期望) 于是就做了这道题,续了特别久. 一开始列dp式子的时候就花了很长时间,首先搞错了两次,然后忘记了根据上一轮dp值直接确定选什 ...