gpt4 book ai didi

salt - 执行模块和状态模块之间的最大区别是什么

转载 作者:行者123 更新时间:2023-12-04 17:07:19 24 4
gpt4 key购买 nike

最近,我正在从它的文档中学习 salt 。但是,我对执行模块和状态模块感到很困惑。为什么有两种类型的模块?为什么不能统一?如果我们只有一种可以在命令行和 sls 文件中使用的模块,那不是更简单更好吗?

最佳答案

简而言之:

  • 执行模块:执行任务
  • 状态模块:尝试进入某个状态/配置。

  • 执行模块:

    它们被设计为在一个仆从上执行任务。例如: mysql.query将查询指定的数据库。执行模块不检查是否需要查询数据库。它只是执行它的任务。
    查看完整的模块列表,您会发现它们只会为您执行一项任务。 https://docs.saltstack.com/en/latest/ref/modules/all/index.html

    状态模块:

    它被称为状态模块。
    状态模块也是一个模块。但它是一个特殊的。使用 states 模块,您可以为 Minions 创建状态(/srv/salt 下的 sls 文件)。
    例如,您可以创建一个状态,以确保 Minion 具有为 www.example.com 配置的 Web 服务器。

    创建状态后,您可以使用 states 模块应用它: salt <minion> state.apply example_webserver example_webserver state 指定 Minion 需要拥有的东西。如果 Minion 已经处于正确的状态,它什么也不做。如果 Minion 的状态不正确,它会尝试到达那里。
    状态模块可以在这里找到: https://docs.saltstack.com/en/latest/ref/states/all/salt.states.module.html

    关于salt - 执行模块和状态模块之间的最大区别是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44453092/

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