9.2. 代理集群的配置方式
您可以通过为集群的每个成员 创建一个代理实例 来配置代理集群,然后将集群设置添加到每个代理实例中。
集群设置由以下内容组成:
- 发现组
- 对于动态发现,发现组定义代理实例如何发现集群中的其他成员。发现可以使用 UDP 或 JGroups。
- 广播组
- 为了与动态发现搭配使用,广播组定义代理实例如何将群集相关信息传输到群集中的其他成员。广播可以使用 UDP 或 JGroups,但它必须与对应的发现组匹配。
- 集群连接
- 代理实例应如何与群集的其他成员连接。您可以指定发现组或群集成员的静态列表。您还可以指定消息重新发布和最大跃点属性。
9.2.1. 创建代理集群
此流程演示了如何创建带有静态发现的基本双broker 集群。
流程
使用
artemis create命令创建第一个代理实例。这个示例创建一个名为
broker1的新代理实例。$ sudo INSTALL_DIR/bin/artemis create broker1 --user user --password pass --role amq为群集的第二个成员创建第二个代理实例。
对于每个额外的代理实例,您应该使用
--port-offset参数以避免与之前的代理实例冲突。这个示例创建了第二个代理实例,名为
broker2。$ sudo INSTALL_DIR/bin/artemis create broker2 --port-offset 100 --user user --password pass --role amq对于第一个代理实例,打开
BROKER_INSTANCE_DIR/etc/broker.xml配置文件并添加集群设置。对于静态发现,您必须添加一个连接器和静态集群连接。这个示例将
broker1配置为连接到broker2。<!-- Connectors --> <connectors> <connector name="netty-connector">tcp://localhost:61616</connector> <!-- connector to broker2 --> <connector name="broker2-connector">tcp://localhost:61617</connector> </connectors> <!-- Clustering configuration --> <cluster-connections> <cluster-connection name="my-cluster"> <connector-ref>netty-connector</connector-ref> <retry-interval>500</retry-interval> <use-duplicate-detection>true</use-duplicate-detection> <message-load-balancing>STRICT</message-load-balancing> <max-hops>1</max-hops> <static-connectors> <connector-ref>broker2-connector</connector-ref> </static-connectors> </cluster-connection> </cluster-connections>对于第二个代理实例,打开
BROKER_INSTANCE_DIR/etc/broker.xml配置文件并添加集群设置。这个示例将
broker2配置为连接到broker1。<!-- Connectors --> <connectors> <connector name="netty-connector">tcp://localhost:61617</connector> <!-- connector to broker1 --> <connector name="broker1-connector">tcp://localhost:61616</connector> </connectors> <!-- Clustering configuration --> <cluster-connections> <cluster-connection name="my-cluster"> <connector-ref>netty-connector</connector-ref> <retry-interval>500</retry-interval> <use-duplicate-detection>true</use-duplicate-detection> <message-load-balancing>STRICT</message-load-balancing> <max-hops>1</max-hops> <static-connectors> <connector-ref>broker1-connector</connector-ref> </static-connectors> </cluster-connection> </cluster-connections>
相关信息
- 有关创建代理集群和配置消息重新发布和客户端负载均衡的详情,请参阅 在 配置 AMQ Broker 中设置代理集群。