Menu Search

H.2. Creation of BDB HA group using an initial configuration.

Let's create a BDB HA group with name weather consisting of tree nodes weather1, weather2, and weather3 using the initial configuration above. We start node weather1 on host/port chaac:5000, node weather2 on host/port indra:5000 and node weather3 on host/port thor:5000.

The node weather1 can be created with the following command

$ ./qpid-server -icp ./initial-config.json -prop ha.node_name=weather1 -prop  ha.node_address=chaac:5000 \
-prop ha.group_name=weather -prop ha.helper_address=chaac:5000 -prop ha.helper_node_name=weather1 \
-prop ha.permitted_nodes="[\"chaac:5000\",\"indra:5000\",\"thor:5000\"]" -prop ha.priority=3 \
-prop qpid.amqp_port=10000 -prop qpid.http_port=20000
    

Please note, the broker is started with initial configuration at file ./initial-config.json. The context variable for node name ha.node_name is set to weather1. The node address context variable ha.node_address is set to chaac:5000. As it is a first node, the helper address is set to the same address as a node address (ha.helper_address=chaac:5000) and the helper node name is to itself (ha.helper_node_name=weather1). The group name is set to weather with ha.group_name=weather. The group nodes are listed in ha.permitted_nodes. The amqp and http ports are overridden to 10000 and 20000 accordingly. The node priority is set to 3.

The node weather2 can be created on hostindra with the following command:

 $ ./qpid-server -icp ./initial-config.json -prop ha.node_name=weather2 -prop  ha.node_address=indra:5000 \
-prop ha.group_name=weather -prop ha.helper_address=chaac:5000 -prop ha.helper_node_name=weather1 \
-prop ha.permitted_nodes="[\"chaac:5000\",\"indra:5000\",\"thor:5000\"]"  -prop ha.priority=2 \
-prop qpid.amqp_port=10001 -prop qpid.http_port=20001
    

The context variable for node name ha.node_name is set to weather2. The node address context variable ha.node_address is set indra:5000. The amqp and http ports are overridden to 10001 and 20001 accordingly. The node weather2 priority is set to 2. The rest of the context variables have the same values as for node weather1. The latter is used as a helper node for creation of weather2.

The node weather3 can be created on hostthor with the following command:

$ ./qpid-server -icp ./initial-config.json -prop ha.node_name=weather3 -prop  ha.node_address=thor:5000 \
-prop ha.group_name=weather -prop ha.helper_address=chaac:5000 -prop ha.helper_node_name=weather1 \
-prop ha.permitted_nodes="[\"chaac:5000\",\"indra:5000\",\"thor:5000\"]"  -prop ha.priority=1 \
-prop qpid.amqp_port=10002 -prop qpid.http_port=20002
    

The context variable for node name ha.node_name is set to weather3. The node address context variable ha.node_address is set thor:5000. The amqp and http ports are overridden to 10002 and 20002 accordingly. The node weather3 priority is set to 1. The rest of the context variables have the same values as for node weather1 which is used as a helper node for creation of weather3.