提升我们的Chef基础设施:安全无干扰

提升我们的Chef基础设施:安全无干扰

💡 原文英文,约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小时至少运行一次,即使没有新信号,也能保持节点的预期配置状态。

➡️

继续阅读