💡
原文英文,约3000词,阅读约需11分钟。
📝
内容提要
Slack通过将单一Chef生产环境拆分为多个独立环境,提高了部署的安全性和可靠性。新方法支持独立更新,降低风险,并引入Chef Summoner服务以基于信号触发Chef运行,确保合规性和配置状态。未来,Slack将推出新的EC2生态系统Shipyard,支持服务级别部署和自动回滚。
🎯
关键要点
- Slack通过将单一Chef生产环境拆分为多个独立环境,提高了部署的安全性和可靠性。
- 新方法支持独立更新,降低风险,确保合规性和配置状态。
- Slack的基础AMI中包含Poptart Bootstrap工具,用于创建Chef对象和设置DNS条目。
- 通过将生产环境分为多个桶,新的节点不再从单一共享环境中获取配置,增加了安全性。
- prod-1作为金丝雀环境,定期接收更新,以便早期发现生产问题。
- Chef的触发方式从固定的cron调度转变为基于信号的触发,提高了安全性和效率。
- Chef Summoner服务负责检查S3中的新版本并调度Chef运行,确保节点保持在预期配置状态。
- 引入的回退cron作业确保即使Chef Summoner失败,Chef仍能每12小时运行一次。
- Slack正在构建新的EC2生态系统Shipyard,支持服务级别部署和自动回滚,计划在本季度软启动。
❓
延伸问答
Slack是如何提高Chef部署的安全性和可靠性的?
Slack通过将单一Chef生产环境拆分为多个独立环境,支持独立更新,降低风险,并引入Chef Summoner服务以基于信号触发Chef运行,确保合规性和配置状态。
什么是Chef Summoner服务,它的作用是什么?
Chef Summoner服务负责检查S3中的新版本并调度Chef运行,确保节点保持在预期配置状态,并在没有新信号时每12小时运行一次Chef。
Slack的新EC2生态系统Shipyard有什么特点?
Shipyard是Slack新构建的EC2生态系统,支持服务级别部署、指标驱动的发布和完全自动化的回滚,旨在改善现有系统的管理和安全性。
Slack是如何处理Chef运行的触发方式的?
Slack将Chef的触发方式从固定的cron调度转变为基于信号的触发,以提高安全性和效率。
分割Chef环境的好处是什么?
分割Chef环境可以防止新节点从单一共享环境中获取配置,增加安全性,并允许独立更新,降低风险和影响范围。
Slack如何确保Chef运行的合规性?
Slack通过Chef Summoner服务确保Chef每12小时至少运行一次,即使没有新信号,也能保持节点的预期配置状态。
➡️