使用 mod_jk 将特定请求重定向到集群中的节点
Redirecting specific request to a node in cluster using modjk
我创建了一个集群(负载均衡器),它由两个节点 node1 和 node2 组成,现在我希望 node2 处理特定请求,例如 /context/heavyservice1、/context/vheavyservice 并且 node1 和 node2 都处理/context/service(工作正常),我的问题是如何配置 modjk 以便节点 2 处理一些服务。
以下是我的部分配置
worker.list= lbNode
worker.lbNode.type=lb
worker.node1.type=ajp13
worker.node1.port=8009
worker.node1.host=server1
worker.node2.type=ajp13
worker.node2.port=8009
worker.node2.host=server2
worker.lbNode.balance_workers=node1,node2
- 您可以设置额外的 VirtualHosts 以直接路由到特定节点。
例如:
NameVirtualHost *:80
<VirtualHost *:80>
ServerName node1.com
JkMount /application node1
</VirtualHost>
<VirtualHost *:80>
ServerName node2.com
JkMount /application node2
</VirtualHost>
你可以这样测试:
worker.list=lbNode,node1,node2
worker.node1.type=ajp13
worker.node1.port=8009
worker.node1.host=server1
worker.node2.type=ajp13
worker.node2.port=8009
worker.node2.host=server2
worker.lbNode.balance_workers=node1,node2
worker.lbNode.type=lb
然后您必须设置映射。您可以在同一虚拟主机(或在默认主机中,无需创建任何虚拟主机)中设置到不同节点的映射。只需使用 JKMount 和 JKUnMount 来满足您的要求
JKMount /context lbNode
JKMount /context/* lbNode
JKUnMount /context/heavyservice1 lbNode
JKUnMount /context/vheavyservice lbNode
JKMount /context/heavyservice1 node2
JKMount /context/vheavyservice node2
我创建了一个集群(负载均衡器),它由两个节点 node1 和 node2 组成,现在我希望 node2 处理特定请求,例如 /context/heavyservice1、/context/vheavyservice 并且 node1 和 node2 都处理/context/service(工作正常),我的问题是如何配置 modjk 以便节点 2 处理一些服务。
以下是我的部分配置
worker.list= lbNode
worker.lbNode.type=lb
worker.node1.type=ajp13
worker.node1.port=8009
worker.node1.host=server1
worker.node2.type=ajp13
worker.node2.port=8009
worker.node2.host=server2
worker.lbNode.balance_workers=node1,node2
- 您可以设置额外的 VirtualHosts 以直接路由到特定节点。
例如:
NameVirtualHost *:80
<VirtualHost *:80>
ServerName node1.com
JkMount /application node1
</VirtualHost>
<VirtualHost *:80>
ServerName node2.com
JkMount /application node2
</VirtualHost>
你可以这样测试:
worker.list=lbNode,node1,node2
worker.node1.type=ajp13
worker.node1.port=8009
worker.node1.host=server1
worker.node2.type=ajp13
worker.node2.port=8009
worker.node2.host=server2
worker.lbNode.balance_workers=node1,node2
worker.lbNode.type=lb
然后您必须设置映射。您可以在同一虚拟主机(或在默认主机中,无需创建任何虚拟主机)中设置到不同节点的映射。只需使用 JKMount 和 JKUnMount 来满足您的要求
JKMount /context lbNode
JKMount /context/* lbNode
JKUnMount /context/heavyservice1 lbNode
JKUnMount /context/vheavyservice lbNode
JKMount /context/heavyservice1 node2
JKMount /context/vheavyservice node2