我正在寻找厨师功能,在部署工作之下。
配置:
1) 特定环境下部署节点机器的配置
2) 将服务实例的数量配置为始终在环境中处于活动状态
部署:
现在,只需进行上述配置。当我触发部署 N 个服务时。它将从部署环境中随机选择节点并启动总共 N 个服务。
多项服务:
如果我有 2 个节点并且我想启动 4 个服务,它应该在每个节点上启动 2 个服务。
服务故障恢复:
如果任何机器出现故障或任何节点中的任何服务出现故障。它将在任何环境节点中启动一个新服务。
我正在寻找厨师功能,在部署工作之下。
配置:
1) 特定环境下部署节点机器的配置
2) 将服务实例的数量配置为始终在环境中处于活动状态
部署:
现在,只需进行上述配置。当我触发部署 N 个服务时。它将从部署环境中随机选择节点并启动总共 N 个服务。
多项服务:
如果我有 2 个节点并且我想启动 4 个服务,它应该在每个节点上启动 2 个服务。
服务故障恢复:
如果任何机器出现故障或任何节点中的任何服务出现故障。它将在任何环境节点中启动一个新服务。
我在 stackexchange 上回答了这个问题,然后在这里看到了这个帖子,所以也在这里回答了这个问题。
你应该看看BOSH。它是 CloudFoundry 使用的工具,它的服务和一个名为 Kubo 的 Kubernetes 发行版用于安装、管理和“第 2 天”操作。
它基本上是一个声明性的、与云无关的编排工具,具有滚动更新、金丝雀部署、扩展、监控和自我修复功能。它可以监视虚拟机(即服务)上的进程以及虚拟机本身,并确保部署按照您在部署清单中指定的方式运行。
为了完成所有这些工作(尤其是监控和自我修复位),它有一个客户端-服务器架构,该架构部署了 BOSH 本身的缩减版本,称为bosh bootloader或bbl
简称。您可以使用它来部署 BOSH 控制器。brew install bosh-cli
您通过安装 bosh-cli(在 Mac 上)与 bosh 主管交谈。
对于您的部署,您首先需要创建所谓的 BOSH 版本,诚然,如果您不熟悉 BOSH,这可能有点令人生畏,但作为 CF,它的服务和 Kubo 都是开源的,那里有大量的参考资料. 还有许多预先支持的版本和干细胞 (OS)。
创建发布后,您将其上传到您的 bosh 导演和bosh deploy
. 要升级它,您上传下一个版本的版本和bosh deploy
. 要修补安全漏洞,您可以从 bosh.io 和bosh deploy
. 我相信你明白了。
如果您想更上一层楼,那么这里有一个很好的入门指南。
Chef 不进行多节点编排。