SaltStack – 事件系统

SaltStack – 事件系统


Salt 中的事件系统是一个本地 ZeroMQ PUB 接口,它会触发 salt 事件。它由以下组件执行。

  • 事件套接字– 用于发布事件。

  • 事件库– 用于侦听事件并将事件发送到盐系统。

盐大师活动

Salt master 提供不同类型的事件,下面详细解释 –

  • 认证事件
  • 开始活动
  • 关键事件
  • 工作事件
  • 跑者活动
  • 出席活动
  • 云事件

让我们详细了解每种事件类型。

认证事件

当 minion 与 master 执行身份验证检查时,会触发这些身份验证事件。它由salt/auth 表示。

开始活动

每当一个 minion 连接到 Salt Master 时都会触发 start 事件,它由 salt/minion//start 表示。

关键事件

当 salt master 接受和拒绝 Salt minion 上的密钥时,会触发 Key 事件。您可以使用 salt-key 命令访问此事件。

工作事件

每当要开始新作业时都会触发 Job 事件。它由salt/job//new 表示在这里,JID – 作业 ID 新 – 新作业

跑者活动

当跑步者开始执行时,会触发跑步者事件。它用 salt/run//new 表示。

出席活动

当 Minion 连接或新连接或断开连接时,此事件会定期触发。它由 – salt/presence/presentsalt/presence/change 表示这里,

  • Present – 表示 Salt Master 当前连接到 Minions 列表。

  • Change – 用于检测新的 minion – 已连接或已断开连接。

云事件

盐云事件在虚拟机上触发。除非发生其他事件,否则不会在 minion 上执行。您可以使用 – salt/cloud//creating访问它当 Salt 云启动虚拟机执行过程时会触发它。

活动工具

现在,让我们来看看事件工具和脚本。您可以使用 CLI 访问事件总线。它通过以下命令访问。

salt-run state.event pretty = True

在这里,运行器旨在与来自外部工具和 shell 脚本的事件总线进行交互。Salt 的事件总线可以通过REST API远程访问它由 –(示例 URL)表示。

curl -SsNk https://salt-api.example.com:8000/events?token = 05A3.

同样,您也可以从 Python 脚本访问事件。

觉得文章有用?

点个广告表达一下你的爱意吧 !😁