一 环境背景
二 监控目标及测试结果
     主机 A监测主机B上以下信息:  
  • 正在运行的容器数量 (黄)
  • 已经定义的容器数量 (绿)
  • 崩溃的容器数量        (红)
     
三 整体步骤
  • B主机采集docker容器信息
  • 监控主机A获取B主机上采集所采集信息
  • 自定义cacti数据输入方式
  • 自定义cacti数据模板
  • 自定义cacti图形模板
  • 应用Graph Template
四  具体实现
1    主机B,采集Docker信息脚本如下:DockerMonitor.sh
  • # cd /home
  • # vim DockerMonitor.sh
  • # chmod +x DockerMonitor.sh
      
     ps : 
     总容器数:ALL_FUNCTION_N
     正在运行的容器数:RUNNING_FUNCTION
     崩溃容器数据: CRASHED_FUNCTION
     执行结果如下:
     
 
2 主机A,获取主机B上所采集信息
  • #cd /var/www/html/cacti/scripts
  • #vim testDocker.sh
     
     运行结果:
     
     ps:host为被监控主机ip:192.168.24.231
 
3 自定义Data Input Method
 (1)Console->Collection Methods->Data Input Method->Add 
  ps 
  • 其中<ip> :被监控主机IP :192.168.24.233
  • Input Type 应选择Script/Command ,因为是运行自定义脚本
  • DockerMonitor.sh即为步骤2中所定义脚本
( 2 ) 弹出页面 Input Fields ==>Add
ps:
  • hostname,也可以不填写,如果填写的话,ip参数默认为Device Id
  • Field[Input] 为输入参数
(3)弹出页面 Output Fields ==>Add
  ps:
  • 框图图分应和脚本中输出参数相同,有多个输出参数,继续点Add 添加,且脚本中输出格式为:”RUNNING_FUNCTION:数量  CRASHED_FUNCTION:数量  ALL_FUNCTION:数量“
4   自定义Data Template
(1)  Console->Templates->Data Templates =>Add
ps
  • Name 即这个模板的名字
  • Data Source里的Name是指这个数据源的名字,这里一般会采用“|host_description| - 名称”的格式,在应用模板时,host_description会被替换为监控机器的名字
  • Data Input Method这里选我们刚才创建的Data Input Method即可,如果有多个的话,保存了以后,右上角会出一个New的链接,点击可以继续创建
  • 如果有多个输入的话,下面会出现Custom Data 区域,这里是指输入参数区域,你可以在这里给输入的参数给一个值,也可以让它在应用模板时输入
  • 至此,Data Input Method和Data Template联系起来了。
5  自定义Graph Template
(1)  Console->Templates->Graph Templates =>Add
具体添加Graph Template Items如下:
 
ps
  • Consolidation Function 应选择AVERAGE,否则会不出图形
  • 这 里第一个是Data Source选择我们之前创建的Data Template,因为可能有多个输出,因此它也可能有多个,我们一一创建即可,注意这里Color是用于显示的颜色,Graph Item Type是显示的类型,比如Area就是显示成块即可,Text Format就是给这个输出一个名字
  • 创建后,如果你还想为这个输出 创建一个Legend,那就是再Add选择Graph Item Type->Legend即可,注意上面的Graph Item Inputs是自动创建的,一般不用处理,到此,Graph Templates已经完成,接下来就是应用了。
6 应用Graph Templates
   选择Console->Management->Devices创建你要应用到的机器,定义输入参数等,以下步骤,略

Cacti自定义脚本,监测Docker信息(Script/Command方式)的更多相关文章

  1. zabbix 获取不到自定义脚本的值解决

    agent端: zabbix 自定义脚本 [root@localhost script]# cat check_ping.sh #!/bin/bash result=$(/usr/local/nagi ...

  2. Centos 配置开机启动脚本启动 docker 容器

    Centos 配置开机启动脚本启动 docker 容器 Intro 我们的 Centos 服务器上部署了好多个 docker 容器,因故重启的时候就会导致还得手动去手动重启这些 docker 容器,为 ...

  3. Linux笔记 #10# 用于支持Web应用开发&部署&配置的一些自定义脚本

    索引 一.本地开发与测试相关脚本 1.startup.sh 2.shutdown.sh 3.catalina-out.sh 4.localhost_access_log.sh 5.上传本地文件到服务器 ...

  4. 适用于 Windows 的自定义脚本扩展

    自定义脚本扩展在 Azure 虚拟机上下载并执行脚本. 此扩展适用于部署后配置.软件安装或其他任何配置/管理任务. 可以从 Azure 存储或 GitHub 下载脚本,或者在扩展运行时将脚本提供给 A ...

  5. Zabbix的通知功能以及自定义脚本告警

    本节内容: Zabbix的通知功能 定义接收告警的用户 定义Action Zabbix自定义脚本发送报警邮件 一.Zabbix的通知功能 在配置好监控项和触发器之后,一旦正常工作中的某触发器状态发生改 ...

  6. (48)zabbix报警媒介:自定义脚本Custom alertscripts

    自定义脚本媒介.zabbix会将信息传递给脚本,接下来你在脚本里面随意处理,一共会传递三个参数,按顺序接受也就是$1,$2,$3了,为了方便记忆,一般分别给他们赋值到To\Subject\body 配 ...

  7. 在nagios中使用nrpe自定义脚本

    nrpe的安装    tar xvfz nrpe-2.13.tar.gz cd nrpe-2.13 ./configure make all make install-plugin make inst ...

  8. [系统集成] RT(Request Tracker)执行自定义脚本及发送微信、短信的实现方法

    RT(Request Tracker)是一个基于 Perl 语言的开源状态跟踪和工作流系统,支持审批.权限管理等功能,中文化支持的也不错,可以作为企业的流程审批系统使用.可惜的是,该系统在国内使用的不 ...

  9. monkey自定义脚本实践

    自定义脚本的稳定性测试 常规Monkey测试执行的是随机的事件流,但如果只是想让Monkey测试某个特定场景这时候就需要用到自定义脚本了,Monkey支持执行用户自定义脚本的测试,用户只需要按照Mon ...

随机推荐

  1. 小程序开发-13-小程序wxs的应用

    内容简介的换行 问题:因为微信的<text></text>标签能够转义\n,所以从服务器加载来的数据我们可以直接放到这个标签中,\n就会自己换行了.问题是服务器返回来的数据多了 ...

  2. 利用.NET Code Contracts实现运行时验证

    .NET的Contract类库是Declarative Programming实践的一部分,可以对日常编程带来很多好处: 提高代码可读性,使用者一看Require, Ensure就知道这方法接受什么输 ...

  3. 北京Uber优步司机奖励政策(10月12日~10月18日)

    用户组:优步北京人民优步A组(适用于10月12日-10月18日) 滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万 ...

  4. Spring源码分析——JdbcTemplate执行批量insert操作

    最近用到一个方法: @Override public int[] batchUpdate(String sql, final BatchPreparedStatementSetter pss) thr ...

  5. (转)Gmail,你必须了解的12个邮件编码问题

    转载地址:http://www.maildesign.cn/archives/1537 1.Gmail 不支持style=” display:none”2.Gmail不支持内嵌式CSS样式3.Gmai ...

  6. STM32堆栈指针疑问

    1. 下面的代码看的不是很明白,百为stm32开发板光盘\测试程序\CortexM3\Mode_Privilege\project,堆是程序员分配和使用的,栈是编译器指定的,存放函数参数,临时变量. ...

  7. 虚拟机安装win7 64位-完美解决-费元星

    安装虚拟机是为了安装一个oracle ,在本机安装 ,本机会卡死,不是每次启动电脑都用oralce,而且有时候服务是关不干净的,所以安装在虚拟机里,需要的时候在开启,特做此记录! 费元星版权Q[971 ...

  8. svn 撤销 已提交的修改

    1.保证我们拿到的是最新代码:  svn update  假设最新版本号是28.  2.然后找出要回滚的确切版本号:  svn log [something]  假设根据svn log日志查出要回滚的 ...

  9. hdu1176免费馅饼(动态规划,数塔)

    免费馅饼 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submis ...

  10. 适配chrome65最新selenium-chromedriver

    网盘地址:https://pan.baidu.com/s/1BmdwRgD96IL32-3FTFxPSg 密码: 2vg6