【问题标题】:How apply chef cookbook/recipes to multiple nodes?如何将厨师食谱/食谱应用于多个节点?
【发布时间】:2015-02-05 20:22:22
【问题描述】:

Here 是如何使用 Chef 将食谱应用于节点的示例。但是没有任何关于多个节点的信息。例如我有一个 akka 应用程序,它传递了akka.cluster.seed-nodes 参数。所以算法应该是:

  1. 使用 IP 地址定义数组“IP”,例如 [192.168.1.1]、[192.168.1.2]、[192.168.1.3]
  2. 使用引导的 IP 地址定义空数组“引导”
  3. 通过“IP”开始迭代
  4. 使用当前 ip 调用 knife bootstrap 并使用“bootsrapped”值“通过”-Dakka.cluster.seed-nodes
  5. 在第二个数组中存储增强的 ip
  6. 转到3

所以目标是编写一个脚本,可以从服务器应用到多个节点。厨师如何做到这一点?

【问题讨论】:

    标签: ruby chef-infra knife


    【解决方案1】:

    您不会在服务器端执行此操作。事实上,服务器甚至不会将配方应用于单个节点。如果您希望在其上运行具有相同食谱的多个厨师节点,您只需创建多个厨师节点并为它们提供所有相同的 run_list。您可以将这些配方打包成一个角色,但这并不会改变单独定义每个配方的需要。

    如果你想写这个,你可以在工作站(你运行刀的节点)上这样做。您可以使用一个小脚本迭代一组 IP 并引导每个 IP,或者您可以使用 Vagrant 之类的工具在单个 DSL 文件中定义整个节点集群。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-01-29
      • 2021-11-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-19
      • 1970-01-01
      相关资源
      最近更新 更多