使用有什么区别吗AWS OpsWorks,它在内部使用 Chef,并且使用我自己安装的 Chef?
我目前有自己的 Chef 服务器。用 OpsWorks 替换它有哪些优点或缺点?
答案1
如果您处于完全 AWS 环境中,使用 OpsWorks 具有一些优势:
- 由 AWS 测试和维护,因此在对底层 Chef 框架进行升级之前,AWS 团队将对常见的 AWS 场景进行测试。
- 您可以从 AWS 团队获得支持。
- OpsWorks 具有在 Chef 之上构建的适用于 AWS 环境的功能,例如堆栈和图层。堆栈允许您将资源组合在一起,组成一个逻辑实体,例如“一组 Web 服务器、两个负载均衡器和一个数据库”。层表示堆栈的组件,例如负载均衡器或一组 Web 服务器。单个实例或资源可以属于多个层。
- 借助 Stacks、Layers 和其他功能,OpsWorks 简化了编排配置管理的 /provisioning 方面。这可以通过 Chef 的独立实例在以下帮助下完成:厨师金属以及;查看更多这里。
- AWS 发布了自己的一套OpsWorks 手册它利用了 AWS 特定的功能。
- 很多以 AWS 为中心的文档由 AWS 提供。
还有一些缺点:
- 使用 OpsWorks 会增加您与 AWS 本身的联系,并且可能会使您以后更难将配置迁移到其他云提供商或数据中心。如果您依赖 OpsWorks 的 AWS 特定功能,那么您以后将无法在自己的 Chef 部署中使用它们。
- 您无法随时更新 Chef。OpsWorks 会在 Amazon 有时间测试和发布更新时收到更新。这可能是好事也可能是坏事——您使用的产品将经过充分测试,但您可能需要一段时间才能访问新版本中的最新功能。
- 随着时间的推移,OpsWorks 不可避免地会与主线 Chef 进一步分化,因此两种产品之间的不兼容性可能会增加。
- 由于 OpsWorks 仅在 AWS 内部运行,如果您有任何外部服务器,则将无法使用该服务来配置它们。
答案2
OpsWorks 的核心优势在于它是一种所谓的托管服务。您无需执行任何配置,AWS 已经为您完成了配置。您唯一需要做的就是定义您的堆栈并享受自动化。