youbo1 发表于 2018-8-1 11:32:55

用Saltstack的returners实现批量监控和数据存储

  没有saltstack基础的朋友
  看下我以前的教程 saltstack 入门教程。。。。嘿嘿
  大家很多时候都用cmd.run跑命令,查看结果,然后根据返回的dd,做点其他的东西。
  比如把结果插入数据库,我们可以在页面中,看到他的执行的结果,状态,jobid等等。。。
  关于监控,虽然zabbix的监控做的挺不错的,他的接口也很完全,我用过这个写过批量增加和批量删除的接口,挺不错的。
  然而 如果咱们只是用来做一个临时的监控,又不想麻烦的用zabbix 做item action的麻烦过程。
  这个时候 ,大家可以用用 ,我的方法。。。。
  因为我这段时间在写写saltstack的功能,现在做到日志的展示了。我突然发现可以做个临时的小监控啥的。 理由就像我刚才说的。。。xiaorui.cc
  总之,就想临时搞搞数据监控,迅速实现大批量的监控。
  用到的是 Saltstack Returners
  Returners是minion返回数据到达后被调用的模块。不将返回数据传递给salt master,而是调用Returner模块来将数据发给其他服务,通常是数据库。Salt目前支持的returner,可以连接cassandra, mongo, redis和mysql. 也可以很容易的用Python脚本为其他服务写一个returner。   xiaorui.cc
  官方的例子
  https://github.com/saltstack/salt/tree/develop/salt/returners
  实现的过程:
  1   创建分组,或者直接用 * 表示全部主机
  2   写个returner规则
  3   写个modules规则
  4   走起~
  主要提23 。。。。
  这个是modules
  我测试用的是 系统已经写过的cmd.run
  大家可以根据自己的情况写
  监控服务
  监控进程数
  监控连接数
  监控流量
  监控队列系统
  监控邮件的待发队列,延迟队列
  监控某种bug
  来自 xiaorui.cc
  这个是returner
  最近被盗链的厉害~暂时先图片,等他们抓完了后,再上代码。。。

  走起:

  结果:

  总结:
  用salt实现快速的监控,需要大家有saltstack的基础,不然有一头雾水的感觉。还有就是大家需要掌握 模块的写法和returner的简单操作。。。
  这两天给大家讲讲 saltstack 的 pillargrains
页: [1]
查看完整版本: 用Saltstack的returners实现批量监控和数据存储