使用capistrano和负载均衡器

时间:2013-09-02 16:58:45

标签: capistrano load-balancing capifony

我们在Rackspace上有一个站点,有2台服务器和一台负载均衡器,与Capistrano(实际上是Capifony)一起部署。我想:

  1. 在负载均衡器上禁用服务器1
  2. 将服务器1升级为新代码
  3. 暂停并让我通过登录到其IP地址来测试服务器1
  4. 重新启用服务器1;在负载均衡器上禁用服务器2(用户现在将获得该站点的新版本)
  5. 将服务器2升级为新代码
  6. 暂停并让我测试服务器2
  7. 在负载均衡器上重新启用服务器2.
  8. 数据库托管在其他地方,不受此升级的影响。

    Capistrano似乎非常擅长一次部署到多个服务器(尽管我希望看到this question的答案),但目前尚不清楚如何执行上述操作。在一个非常常见的情况下,这似乎是一种安全的升级方式。

    我想如果我添加规则来执行负载均衡器,我可以使用this回答来连续运行部署,而不是一次性运行。

    一个很好的选择是,如果capistrano可以完成所有部署,但不能更改两个服务器上的当前符号链接。然后我可以手动执行负载平衡并自己更新符号链接。

    This question类似,但给出的答案不适用于PHP,因为不需要重新启动服务器 - 新代码将在您上传后立即开始执行。

0 个答案:

没有答案