gpt4 book ai didi

salt-stack - 在 Master 上触发事件并在 Salt Minion 上等待 "response event"

转载 作者:行者123 更新时间:2023-12-04 15:51:00 25 4
gpt4 key购买 nike

我想要的是由 Minion 调用的类似 RPC 的行为放入某种脚本中,然后可以由任何(非 Salt、非 Python)应用程序和服务调用:

  • 在 Master 上触发事件(有效负载对应于命令行参数)
  • Reactor 系统接管、处理事件并(取决于事件的发送者和有效负载)发送响应事件。
  • 响应事件可能包含敏感负载,并且可能不会被任何其他 minion 看到(或至少解密)
  • Minion 收到响应事件

  • 我知道我可以使用 salt-call 向主服务器发送事件和 salt.modules.event.fire_master模块。

    那么如何等待响应事件呢?

    以及如何确保其他 Minions 在事件总线上看不到响应事件(afaik 所有从 Master 发送的事件都是公开的,并且过滤发生在 Minion 端)?我想到了 gpg渲染器,但这可能太复杂了——需要有一种方法,因为 Master 需要将敏感的 Pillar 数据发送给具有类似要求的 Minions。

    最佳答案

    我也被困在这个问题上,但我设法偶然发现了你需要的东西。答案就在 salt 的恰当命名中:saltmod.wait_for_event

    但是,如果您注意到该状态被标识为仅适用于 salt-master。这实际上意味着它可以在一个仆从上使用,但你必须更改 node='master' kwarg 到 node='minion'。这是一个示例状态文件,它发送一个事件(它触发一个 react 器来触发一个运行者),然后等待 60 秒让 salt-master 将一个事件发送回 minion(运行者在成功运行时发回):

    salt/custom/trigger_runner:
    event.send

    wait_for_event_runner_return:
    salt.wait_for_event:
    - name: salt/custom/runner_complete
    - timeout: 60
    - id_list:
    - {{ grains.id }}
    - node: minion

    关于salt-stack - 在 Master 上触发事件并在 Salt Minion 上等待 "response event",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49252768/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com