首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Chef,用于在windows中进行大规模web部署

Chef,用于在windows中进行大规模web部署
EN

Stack Overflow用户
提问于 2016-10-06 19:14:32
回答 2查看 161关注 0票数 0

我正在尝试和chef一起做MSI web部署。我有大约400个相同配置的web服务器。我们将在两个插槽中进行部署,每个插槽有200台服务器。

对于新版本,我将遵循以下步骤。

1)增加食谱版本。

2)将食谱上传到服务器。

3)将cookbook版本更新为role和run列表。

我将从食谱中做很多步骤,如安装7MSI,更新IIS设置,更新web.configure文件和添加注册表项。一旦部署完成,我们需要更新测试团队,以便他们可以开始测试。我的问题是如何确保在所有机器上成功完成部署?如果一台机器上没有安装一个MSI,或者一个web.config文件没有正确更新,我怎么知道?

我的理解是chef客户端将默认每30分钟运行一次,因此我必须等待下一个30分钟才能完成部署。有没有其他方式使用push (我不能使用push job,因为chef已经从chef High Availability servers中删除了push job支持),比如工作站上的刀厨客户端?

如果有人分享他们在大规模windows部署中使用chef的经验,那就好了。

提前谢谢。

EN

回答 2

Stack Overflow用户

发布于 2016-10-06 20:39:21

我个人使用rundeck来触发按需厨师运行。

根据您的描述,我将使用2个prod env,每个组一个,其中您将分别突破每个组的食谱版本限制。

对于报告,考虑购买许可来获取chef-manage和chef- report,这样您就会有一个完整的概述,下一个选项是使用处理程序报告运行状态,如果在运行过程中出现错误,则发送邮件。

票数 2
EN

Stack Overflow用户

发布于 2016-10-06 20:58:49

这里没有什么是特定于Windows的,所以您更多地是在问如何在高流失率的环境中使用Chef。我强烈推荐使用新的Policyfile工作流程,尽管它有一些明显的局限性,但我们已经取得了很大的成功。我在https://yolover.poise.io/有个导游。在食谱/数据发布方面的另一个解决方案是移动大量的可调参数(例如,要部署的东西的版本)从食谱中走出来,放到某个地方的小web服务中,而不是让您的配方代码从中读取,以获得它们的调优数据。至于推与拉的问题,大多数人最终都选择了混合动力车。正如@Tensibai提到的,RunDeck是一个流行的基于推送的选项。通常,您仍然会让后台间隔运行较长的周期(可能是1到2个小时),以捕获配置漂移,并使用推送系统执行更具体的部署任务。除了RunDeck之外,您还可以查看Fabric、Capistrano、MCollective和SaltStack (您可以在不使用CM的情况下使用它的远程执行层)。Chef也有自己的Push Jobs项目,但我想我可以放心地说,你应该在这一点上避免它,因为它从来没有获得足够的社区动力来真正走向任何地方。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39894502

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档