文章目录

[隐藏]

激活一个beacon

beacon监控间隔

增加beacon

安装pyinotify和启动event runner

设置一个beacon

到目前为止我们已经学习如何通过事件总线监控与salt相关的事件,以及激活一些其它的事件。这时候你可能会想“既然我已经设置了一个能监控和实时反馈事件的动态通信设施,那么我肯定可以利用它来监听其它事情,如系统登录,硬盘使用和数据库服务”。而beacons就是用来做这样的事情的。

beacons让你能够监控与salt无关的事情以及触发事件。beacon系统允许minion与各种系统进程挂钩并持续监控进程。当监控的系统进程活动发生时,minion就发送一个事件到salt事件总线。

salt beacons目前能对许多系统活动进行监控和发送事件,包括:

文件系统变动

系统负载

服务状态

shell活动,如用户登录

网络和硬盘使用情况

激活一个beacon

salt beacons的激活不需要对监控的系统进程进行任何更改,一切配置都可以使用salt来做。

在minion的配置文件中增加如下配置:

beacons:

inotify:

home/user/importantfile:

mask:

– modify

beacon监控间隔

beacons默认以1秒的间隔监控。可以增加一个interval参数来设置一个不同的间隔。如下是设置了5和10秒的间隔:

beacons:

inotify:

/etc/httpd/conf.d: {}

/opt: {}

interval: 5

load:

– 1m:

– 0.0

– 2.0

– 5m:

– 0.0

– 1.5

– 15m:

– 0.1

– 1.0

– interval: 10

如果一个beacon的更改可能引起重新触发这个beacon的话,设置disable_during_state_run为True以避免循环事件发生。

增加beacon

我们准备增加一个beacon来监控一个文件的更改。要配置这个,需要使用inotify beacon和安装python-pyinotify包。因为salt minions没有这个包,首先我们使用salt来安装它。

安装pyinotify和启动event runner

增加命令行终端进入salt-vagrant-demo目录,ssh到master:

vagrant ssh master

在minion1安装python-pyinotify:

sudo salt ‘minion1’ pkg.install python-pyinotify

输出类似如下:

vagrant@saltmaster:~$ sudo salt ‘minion1’ pkg.install python-pyinotify

minion1:

———-

python-pyinotify:

———-

new:

0.9.4-1build1

old:

python2.7-pyinotify:

———-

new:

1

old:

我们很快就会生成一个事件,在master启动一个event runner并保持登录:

salt-run state.event pretty=True

让它在终端中运行并继续。

设置一个beacon

打开另一个终端进入salt-vagrant-demo目录,ssh进minion1:

vagrant ssh minion1

编辑minion1的/etc/salt/minion文件,在底部添加如下内容:

beacons:

inotify:

/home/vagrant/importantfile:

mask:

– modify

保存文件重启salt minion服务:

sudo service salt-minion restart

现在beacon已经激活。下面我们创建将要监控的文件。在/home/vagrant/目录创建importantfile:

touch importantfile

echo "some content" > importantfile

回到salt master刚才运行event runnner的终端,你应该会看到如下输出:

salt/beacon/minion1/inotify//home/vagrant/importantfile {

"_stamp": "2016-02-03T22:32:09.592113",

"data": {

"change": "IN_MODIFY",

"id": "minion1",

"path": "/home/vagrant/importantfile"

},

"tag": "salt/beacon/minion1/inotify//home/vagrant/importantfile"

}

记得event runner必须在文件被更改前启动,否则你不会看到事件。

SaltStack事件驱动(3) – BEACONS

saltstack python3_SaltStack事件驱动(3) – BEACONS相关推荐

  1. saltstack常用操作(七)---beacons模块的使用

    简介 beacons模块是通过在minion机器上面配置beacons配置文件,实现对minion机器的文件,服务,VM状态,CPU,mem等状态的监控.在minion机器上面,一旦触发到定义的bea ...

  2. 【SaltStack官方版】—— EventsReactor系统—BEACONS

    Events&Reactor系统-BEACONS Beacons let you use the Salt event system to monitor non-Salt processes ...

  3. 安装SaltStack

    2019独角兽企业重金招聘Python工程师标准>>> 准备2台计算机: # 两台都安装 yum install https://repo.saltstack.com/yum/red ...

  4. 01_配置管理和SaltStack概述

    1.配置管理 1.1 puppet /'pʌpɪt/  木偶:傀儡:受他人操纵的人 使用自有的puppet描述语言,可管理配置文件.用户.cron任务.软件包.系统服务等. 问题: 学习曲线非常陡峭 ...

  5. SaltStack简介和安装

    1.SaltStack简介 1.1 自动化运维工具 自动化运维就是周期性.重复性.规律性的工作都交给工具去做,把过去的手工执行转为自动化操作.自动化是IT运维工作的升华,IT运维自动化不单纯是一个维护 ...

  6. saltstack高效运维简介和部署,SaltStack 与 Ansible 如何选择?

    1.SaltStack简介 1.1 自动化运维工具 自动化运维就是周期性.重复性.规律性的工作都交给工具去做,把过去的手工执行转为自动化操作.自动化是IT运维工作的升华,IT运维自动化不单纯是一个维护 ...

  7. SaltStack进阶

    SaltStack进阶 循环判断语句 判断语句 masterless 应用场景 masterless配置 修改配置文件minion 关闭salt-minion salt-call master高可用 ...

  8. SaltStack介绍及安装

    1.SaltStack介绍 SaltStack作用于仆从和主拓扑.SaltStack与特定的命令结合使用可以在一个或多个下属执行.实现这一点,此时Salt Master可以发出命令,如salt '*' ...

  9. Saltstack之Grains组件

    参考:刘天斯<Python自动化运维技术与最佳实践> grains是Saltstack最重要的组件之一,grains的作用是收集被控主机的基本信息,这些信息通常都是一些静态类的数据,包括C ...

最新文章

  1. 写在Flutter 1.0之前
  2. Zookeeper --笔记
  3. Vue的阻止冒泡与阻止默认
  4. redis 什么是冷数据_阿里Java三面凉凉:微服务,Redis,JVM一个都搞不懂
  5. Wince6.0编译错误经验总结
  6. 32岁被裁补偿N+2:“感谢裁我,让我翻倍!” 网友:求同款被裁!
  7. stc5 采集adc值越来越小_热敏电阻温度采集简述
  8. 利用百度Echarts.js生成雷达图
  9. VMware与Hyper-V不兼容
  10. 企业如何选择固定资产管理系统?
  11. MATLAB永久常数
  12. element中form表单输入非负数验证
  13. Java 8 effectively final
  14. 内容公链Contentos首席科学家不建议刚毕业的年轻人直接从事区块链开发
  15. 2009 Q.E.D
  16. 计算机本科毕业要求,计算机本科毕业论文要求.doc
  17. 工程伦理_慕课网_第十三讲参考答案
  18. 2D Conforming Triangulations
  19. 树莓派homebridge开机启动和后台运行
  20. 余弦相似度:通过计算两个向量的夹角余弦值来评估他们的相似度

热门文章

  1. 【强化学习】《Easy RL》- Q-learning - CliffWalking(悬崖行走)代码解读
  2. 经典语录,至理名言,人生百态
  3. 百度2016研发工程师在线编程题
  4. 【下载】Step7 V5.4 中文版【绝对能安装使用】
  5. Cardinality Estimation
  6. 叮叮 算法数据结构(一)
  7. 如何在12315网上投诉平台把内容复制粘贴到投诉内容那里的解决方法
  8. 人大金仓数据库添加substring_index函数
  9. 如何增加百度收录量和友好度
  10. windows7未能连接一个windows服务(无法连接网络)的解决方法