记录关于Devops运维,虚拟化容器云计算,数据库,网络安全等各方面问题。
zabbix执行远程命令(41) 概述监控,有的人只把他当做报警使用,出现问题之后打开跑回家打开电脑,巴拉巴拉的处理掉,大多数时候都是一些小问题,为何不让zabbix帮你把这些事情处理掉呢?和朋友具体,收到xx硬盘空间慢了、xx服务器高负载等问题,你要回家处理?多扫兴瞧瞧zabbix远程执行命令可以做些什么吧:重启应用(Apache、nginx、MySQL等等)使用IPMI接口重启服务器自动释放磁盘空间(删除老文件,清除/tmp目录等等)CPU过载时讲一个虚拟机迁移到另外一台物理服务器云环境下,一台服务器CPU\硬盘\内存\其他硬件资源不足的情况下,可以自动添加过去创建一个报警,记得使用邮件报警吗?呵呵,实际上,我们把发送邮件的操作改成执行远程命令就行了备注:zabbix代理不支持远程命令远程命令最大长度为255字符,同时支持多个远程命令,如需要执行多条命令,只需要另起一行写命令即可,还有,远程命令可以使用宏变量。接下来我将一步一步告诉大家如何设置远程命令配置首先我们需要在zabbix客户配置文件开启对远程命令的支持,编辑zabbix_agentd.conf,修改EnableRemoteCommands = 11EnableRemoteCommands = 1重启客户端备注:Aive zabbix不支持远程命令然后配置action,Configura...
报警信息将会使用系统自带的sendmail发送,配置比较简单配置媒介EmailAdministration→Media types->Click on Create media typemedia_email 选项描述 Name 媒介名称,看着起名 Type 选择Email SMTP serverSMTP服务器 SMTP heloSMTP helo值, 通常情况下是顶级域名 SMTP email这个邮件地址会显示到收件人的From里可用邮箱地址:zabbix@company.com (只包含邮箱地址,不需要尖括号括起来)Zabbix HQ <zabbix@company.com> (显示名和邮箱地址,邮箱地址使用尖括号)∑Ω-monitoring <zabbix@company.com> (显示名称为UTF8格式)不可用的邮箱地址Zabbix HQ zabbix@company.com (需要尖括号)"Zabbix\@\<H(comment)Q\>" <zabbix@company.com>不支持转义使用媒介定义好了媒介之后,我们需要把这媒介指定给用户。Administration->Users->打开用户配置->media type里面添加刚增加的媒介email参数说明选项描述Type选择媒介名称,此处选EmailSend to 发邮件给谁,例如support@ttlsa.com,也可以使用显示名When active发送时间,只有在这个时间段内才会发邮件Use if severity发送邮件的触发器级别St...
老板抠门不给买SMS短信猫,投错胎导致没有美国/加拿大手机号码,根本搞不清楚jabber是个什么玩意儿,sendmail又不靠谱,那都不是事,想要轻轻松松报警,那么用上自定义脚本媒介。zabbix会将信息传递给脚本,接下来你在脚本里面随意处理,一共会传递三个参数,按顺序接受也就是$1,$2,$3了,为了方便记忆,一般分别给他们赋值到To\Subject\body.配置AlertScriptsPath在server的配置文件中配置,这是用来定义脚本目录,这样一来zabbix就能找到脚本了# cat /usr/local/zabbix-2.2.1/etc/zabbix_server.conf | grep AlertScriptsPath ### Option: AlertScriptsPath AlertScriptsPath=/usr/local/zabbix-2.2.1/alertscripts# mkdir /usr/local/zabbix-2.2.1/alertscripts1234# cat /usr/local/zabbix-2.2.1/etc/zabbix_server.conf | grep AlertScriptsPath ### Option: AlertScriptsPath AlertScriptsPath=/usr/local/zabbix-2.2.1/alertscripts# mkdir /usr/local/zabbix-2.2.1/alertscripts 创建发邮件脚本# cat /usr/local/zabbix-2.2.1/alertscripts/mail.sh#!/bin/shto=$1subject=$2body=$3/usr/local/bin/sendEmail -f support@ttlsa.com -t "$to"...
zabbix自定义用户key与参数User parameters 为什么要自定义KEY有时候我们想让被监控端执行一个zabbix没有预定义的检测,zabbix的用户自定义参数功能提供了这个方法。我们可以在客户端配置文件zabbix_angentd.conf里面配置UserParameter.语法如下:UserParameter=key,command1UserParameter=key,command用户自定义参数包含一个key和一个命令,key必须整个系统唯一,配置好之后,重启客户端。然后配置item,在key的位置填上我们自定义的key即可。用户自定义参数里指定的脚本由zabbix agent来执行,最大可以返回512KB的数据.用户自定义key实例简单点的命令示例:UserParameter=ping,echo 1如果调用ping这个key,将会收到返回值1.更复杂的命令示例:UserParameter=mysql.ping,mysqladmin -uroot ping|grep -c alive如果返回1表示MySQL运行中,如果返回0表示MySQL挂了灵活的自定义key:如下为灵活的用户自定义参数UserParameter=key[*],command1UserParameter=key[*],command 参数描述Key唯一. [*]表示里面可以传递多个参数Command需要执行的脚本,key的[]里面的参数一一对应$1到$9,一共9个参数。$0表示脚本命令.注意事项1. 如果需要使用命令行里面出现$2这种变量,那么你要使...
zabbix如何选择适合的监控类型 zabbix提供十几种监控类型,包括:Zabbix agent, Simple checks, SNMP, Zabbix internal, IPMI, JMX monitoring等等,那我们应该如何选择呢?凉白开在此给大家一一作一个说明zabbix监控类型zabbix agentzabbix自带的客户端程序(被动模式),zabbix server主动向它收集监控数据。agent提供丰富的key,包括不限于cpu、内存、网络、磁盘、web等等。如果你不介意或者系统支持安装此程序,那么他是首选的。需要注意的是,server检索数据有超时限制,最大超时时间30秒,如果检索数据经常超过30秒,那么,不建议你使用主动模式的agent,可以使用如下类型agent activezabbix agent(active)也需要安装agent(主动模式),和上一个相同。但是数据由zabbix agent主动提交至zabbix server参考文章:simple check基本的检测,可以检测网络、端口、fping这些,功能很少并且无需安装客户端。snmp checksnmp v1 check、snmp v2 check、snmp v3 check的功能都是一样的。推荐如下场景:客户基于安全考虑,不同意安装agent路由器、打印机等等设备无法安装,但是支持snmp协议不喜欢频繁对agent升级zabbix internalzabbix系统内部用,比如趋势数据记录数了、历史记...
zabbix监控mysql性能 今天来看看zabbix如何监控mysql性能,这边使用mysql自带的模板,可以监控如下内容:OPS(增删改查)、mysql请求流量带宽,mysql响应流量带宽,最后会附上相应的监控图!编写check_mysql.sh脚本用于获取mysql性能指标数据,你需要修改相应的数据库信息# vim /usr/local/zabbix-2.4.4/scripts/chk_mysql.sh1# vim /usr/local/zabbix-2.4.4/scripts/chk_mysql.sh脚本如下:#!/bin/bash# -------------------------------------------------------------------------------# FileName: check_mysql.sh# Revision: 1.0# Date: 2015/06/09# Author: DengYun# Email: dengyun@ttlsa.com# Website: www.ttlsa.com# Description: # Notes: ~# -------------------------------------------------------------------------------# Copyright: 2015 (c) DengYun# License: GPL# 用户名MYSQL_USER='zabbix'# 密码MYSQL_PWD='123456'# 主机地址/IPMYSQL_HOST='127.0.0.1'# 端口MYSQL_PORT='3306'# 数据连接MYSQL_CONN="/usr/bin/mysqladmin -u${MYSQL_USER} -p${MYSQL_PWD} -h${MYSQL_HOST} -P${MYSQL_PORT}"# 参数...
RHEL 6.5安装 subversion (Linux 搭建SVN服务器) SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。 其实,我们只需要了解一点就好了,SVN是用于版本控制的一个服务软件。 二 、 搭建步骤下面是安装过程: 2.1 安装前的准备 Subversion 需要使用源友安装,而且与subversion 配套的,需要安装其他的一些依赖包,或者称为运行环境。在安装subversion前需要编译安装以下几种软件包: 软件包版本下载地址apr1.5.1http://apr.apache.org/apr-util1.5.4http://apr.apache.org/zlib1.2.8http://www.zlib.net/openssl1.0.1jhttp://www.openssl.org/expat2.1.0http://sourceforge.net/projects/expat/files/expat/2.1.0/serf1.2.1 http://download.csdn.net/detai...
shell调用sqlplus各种情况示例shell调用sqlplus各种情况示例测试平台:RHEL5.5一、最简单的shell里调用sqlplus.$ vi test1.sh #!/bin/bash sqlplus-s acctmp/acctmp@newtest>/dev/null<<EOF set serveroutput on; exec ngoss.PROC_LOAD3GGROUPUSER; exit; EOF $ chmod +x test1.sh$ ./test1.sh二、把sqlplus执行结果传递给shell方法一注意sqlplus段使用老板键`了, 赋变量的等号两侧不能有空格.$ vi test2.sh #!/bin/bash #1) 优惠标识列字段为空 preferencetypenull=`sqlplus-s acctmp/acctmp@newtest<<END set pagesize 0 feedback off verify off headingoff echo off SELECT COUNT (*) FROMinfo.t_ci_wocardinfo WHERE preferencetype IS NULL ANDTO_CHAR (insertdate, 'yyyymmdd') = TO_CHAR (SYSDATE,'yyyymmdd'); exit; END` echo "本次csm所给沃家庭电子券优惠文件中优惠标识列为空总数为:"$preferencetypenull#若本次csm所给沃家庭电子券优惠文件中优惠标识列为空总数不为0需要特殊处理:打...
1,创建新表gps-sq ,保存查询出来表名的rownum 值。#: create table gps_sq as select * from (select rownum sq , tname from tab where tname like 'GPS_HT_%' order by tname)2,新建存储过程。create or replace procedure p_del_gps_ht(a in number,b in number) is t_sql varchar2(2000);begin for c in (select tname from gps_sq where sq >= a &nb...
select * into target_table from source_table;insert into target_table(column1,column2) select column1,5 from source_table; 以上两句都是将源表source_table的记录插入到目标表target_table,但两句又有区别。第一句(select into from)要求目标表target_table不存在,因为在插入时会自动创建。第二句(insert into selectfrom)要求目标表target_table存在,由于目标表已经存在,所以我们除了插入源表source_table的字段外,还可以插入常量,如例中的:5。 例如:需要将user_city表中的部分字段值拷贝到dim_pub_county_act表中(字段名不同),则语句如下:INSERTINTO SUI1.DIM_PUB_COUNTY_ACT ( CITY_ID, COUNTY_ID, BEGIN_TIME, END_TIME, COUNTY_NAME, ACTIVE_FLAG,  ...
最新评论