带有负载均衡器的Apache tomcat部署

时间:2015-06-09 17:19:04

标签: apache tomcat load-balancing release-management

我正在尝试为生产部署提出一个简单的过程。我有2个tomcat节点,前端有2个apache节点,apache节点顶部有一个负载均衡器。出于某种原因,我无法在Tomcats上进行并行部署。我试图在部署期间使用平衡器管理器,我将确保在应用程序更改之前排空tomcat节点1。我想确保在将节点置于实时状态之前验证tomcat节点上的更改。我知道,此时,我可以从负载均衡器使apache节点1脱机并更改balancer-manager以仅将请求路由到tomcat节点1,并在我上线之前将我的所有请求指向Apache节点1进行验证。我认为这是一个复杂的实现过程,我想知道是否有更好的方法可以实现这一点。只是一个FYI我们在F5的两个apache节点之间加载平衡请求,我们使用Apache在2个tomcat节点之间加载请求。

有任何帮助吗?

1 个答案:

答案 0 :(得分:0)

有三种方法,我知道:

  1. 使用服务注册/服务发现工具,例如consul.io
  2. 在您的应用程序中实施运行状况检查,您可以在运行时控制该应用程序。 F5将访问健康检查资源并确定该节点是否健康。在部署之前,您将节点的运行状况更改为运行状况不佳,并且几秒钟后节点将从负载平衡中删除。
  3. 使用红色/蓝色部署:这意味着,每个主机都有两个tomcats(红色和蓝色tomcat)。您的Apache指向红色或蓝色。通过这种方法,您可以在红色tomcat上进行部署,并确保您的应用程序已启动。然后,您将Apache的配置切换为指向红色的配置并执行正常重启 - 不会丢弃任何请求。蓝色现在处于非活动状态,下次部署时,将部署到蓝色tomcat并重复此过程。
  4. 我使用了生产中的所有方法和大型ISP。取决于您的基础架构,应用程序以及您希望如何处理HA问题。

    HTH,马克