【发布时间】:2010-12-22 04:34:29
【问题描述】:
我在负载平衡器后面有 4 台服务器,还有一个登台服务器、一个数据库服务器和一个实用程序服务器,用于托管多个网站的 Web 应用程序。
我应该跳转到Chef 来管理这些服务器还是应该手动维护它们?服务器是使用sprink 构建的,但当时只有两个。现在有四个维护变得越来越成为一个问题。
我想听听经验以及厨师和其他类似厨师的工具的优缺点。
谢谢!
【问题讨论】:
我在负载平衡器后面有 4 台服务器,还有一个登台服务器、一个数据库服务器和一个实用程序服务器,用于托管多个网站的 Web 应用程序。
我应该跳转到Chef 来管理这些服务器还是应该手动维护它们?服务器是使用sprink 构建的,但当时只有两个。现在有四个维护变得越来越成为一个问题。
我想听听经验以及厨师和其他类似厨师的工具的优缺点。
谢谢!
【问题讨论】:
我们转移到 Chef,现在我们可以在 1 分钟内重新部署我们的应用程序。所以它肯定有回报。
但是,我们花了很长时间(几个月)才对 Chef 部署策略感到满意。事后看来,我们应该有几个备用盒子来尝试“从头开始”部署。我当然不建议在没有设置的精确镜像和大量测试的情况下在生产环境中尝试使用 chef,我也不建议在没有从头开始“cheffed”的设置上使用 chef。
话虽如此,Chef 比我们看到的其他选项要好得多,现在我们已经不在另一边了,在多台服务器上部署新版本的应用程序是轻而易举的事。将来我会将它用于我拥有的任何暂存或生产环境。
总而言之,是的,但前提是您的客户/雇主意识到他们可能需要一些时间才能看到好处,这将是相当可观的。
【讨论】:
Chef 的学习曲线陡峭,因此需要一段时间(至少几周)才能熟悉如何使用它。
但是,一旦您掌握了基础知识,它就会是一个非常方便的系统,并且可以简化任意数量的任务——即使是最小的基础设施。
开始时的一些注意事项。
您将设置和拆除云服务器数十次,只是为了掌握其中的窍门。实验。
标准操作码说明书 (github.com/opscode/cookbooks) 非常有用。但是您需要针对您的特定情况扩展/自定义其中的许多。您需要在网络中搜索 opscode/cookbooks 存储库中缺少的说明书。
阅读操作码说明书,也阅读 37signals 说明书。
application 和 database 手册适用于使用 MySQL 和 Memcached 的标准 Rails 应用程序。就这描述的你而言,你很幸运。
【讨论】: