mod_cluster removing/adding configured/new 节点
mod_cluster removing/adding configured/new node
我没有负载平衡软件方面的经验,我对文档和研究有点迷茫。
我正在寻找的是 mode_cluster 平衡器是否有 API 或某种编程方式来删除已配置的节点或添加新节点而无需重新启动 Apache 服务器。
回答
事实上,here are your examples 除了 jboss-cli 明显的例外,因为您使用的是 Tomcat。 mod_cluster 管理控制台 1 和 telnet 1 是有效的。
CONFIG
消息示例,例如:
{ echo "CONFIG / HTTP/1.1"; echo "Host: rhel7GAx86-64:8847"; echo "Content-Length: 115"; echo "User-Agent: Test"; echo ""; echo -e "JVMRoute=worker1&Host=192.168.1.1&Maxattempts=1&Port=8080&StickySessionForce=No&Type=ajp&ping=10&Aliases=default\c"; sleep 1;} | telnet rhel7GAx86-64:8847
其中 rhel7GAx86-64:8847
是您在 Apache HTTP Server 中启用 MCMP 的虚拟主机,192.168.1.1:8080
是您的工作节点。
在 CONFIG
消息之后,需要 STATUS
消息,例如:
{ echo "STATUS / HTTP/1.1"; echo "Host: rhel7GAx86-64:8847"; echo "Content-length: 26"; echo ""; echo -e "JVMRoute=worker1&Load=100/c"; sleep 1; sleep 1; } | telnet rhel7GAx86-64 8847
ENABLE-APP 消息后跟,如果你想配置上下文。
进一步阐述
现在,请解释一下您为什么需要它?这个说法是错误的:
I cannot use the default ping/pong way that mod_cluster uses to identify the nodes. – DonCorleone Oct 20 at 13:36
Cping/Cpong 逻辑仅与 AJP 协议一起使用,以便在将请求转发给已注册工作节点之前检查它们的适用性。它与使用 Apache HTTP Server 负载平衡器注册自己的工作节点无关。
Apache HTTP 服务器通过 UDP 多播消息通告其存在。然后,您的 Tomcat 工作节点向 Apache HTTP Server 注册它们自己和它们的应用程序上下文。当您 startup/shutdown 您的 Tomcat 或 deploy/undeploy 应用程序时,Apache HTTP 服务器 自动 更新其工作人员列表及其部署的应用程序,因此负载均衡器总是知道应该将新请求转发到哪里。
除非您正在编写某种测试套件,否则我无法理解您的用例。感谢分享您的想法。
干杯
我没有负载平衡软件方面的经验,我对文档和研究有点迷茫。 我正在寻找的是 mode_cluster 平衡器是否有 API 或某种编程方式来删除已配置的节点或添加新节点而无需重新启动 Apache 服务器。
回答
事实上,here are your examples 除了 jboss-cli 明显的例外,因为您使用的是 Tomcat。 mod_cluster 管理控制台 1 和 telnet 1 是有效的。
CONFIG
消息示例,例如:
{ echo "CONFIG / HTTP/1.1"; echo "Host: rhel7GAx86-64:8847"; echo "Content-Length: 115"; echo "User-Agent: Test"; echo ""; echo -e "JVMRoute=worker1&Host=192.168.1.1&Maxattempts=1&Port=8080&StickySessionForce=No&Type=ajp&ping=10&Aliases=default\c"; sleep 1;} | telnet rhel7GAx86-64:8847
其中 rhel7GAx86-64:8847
是您在 Apache HTTP Server 中启用 MCMP 的虚拟主机,192.168.1.1:8080
是您的工作节点。
在 CONFIG
消息之后,需要 STATUS
消息,例如:
{ echo "STATUS / HTTP/1.1"; echo "Host: rhel7GAx86-64:8847"; echo "Content-length: 26"; echo ""; echo -e "JVMRoute=worker1&Load=100/c"; sleep 1; sleep 1; } | telnet rhel7GAx86-64 8847
ENABLE-APP 消息后跟,如果你想配置上下文。
进一步阐述
现在,请解释一下您为什么需要它?这个说法是错误的:
I cannot use the default ping/pong way that mod_cluster uses to identify the nodes. – DonCorleone Oct 20 at 13:36
Cping/Cpong 逻辑仅与 AJP 协议一起使用,以便在将请求转发给已注册工作节点之前检查它们的适用性。它与使用 Apache HTTP Server 负载平衡器注册自己的工作节点无关。
Apache HTTP 服务器通过 UDP 多播消息通告其存在。然后,您的 Tomcat 工作节点向 Apache HTTP Server 注册它们自己和它们的应用程序上下文。当您 startup/shutdown 您的 Tomcat 或 deploy/undeploy 应用程序时,Apache HTTP 服务器 自动 更新其工作人员列表及其部署的应用程序,因此负载均衡器总是知道应该将新请求转发到哪里。
除非您正在编写某种测试套件,否则我无法理解您的用例。感谢分享您的想法。
干杯