1 echo "#################################################"
2 echo "## Configure Cluster and Start ##"
3 echo "#################################################"
5 AKKACONF=/tmp/${BUNDLEFOLDER}/configuration/initial/akka.conf
6 MODULESCONF=/tmp/${BUNDLEFOLDER}/configuration/initial/modules.conf
7 MODULESHARDSCONF=/tmp/${BUNDLEFOLDER}/configuration/initial/module-shards.conf
8 JOLOKIACONF=/tmp/${BUNDLEFOLDER}/deploy/jolokia.xml
10 cat > ${WORKSPACE}/configuration-script.sh <<EOF
12 CONTROLLERID="member-\$1"
15 echo "Configuring hostname in akka.conf"
16 sed -ie "s:{{HOST}}:\${CONTROLLERIP}:" ${AKKACONF}
18 echo "Configuring data seed nodes in akka.conf"
19 sed -ie "s/{{{DS_SEED_NODES}}}/[\"akka.tcp:\/\/opendaylight-cluster-data@$CONTROLLER0:2550\",\"akka.tcp:\/\/opendaylight-cluster-data@$CONTROLLER1:2550\",\"akka.tcp:\/\/opendaylight-cluster-data@$CONTROLLER2:2550\"]/g" ${AKKACONF}
21 echo "Configuring rpc seed nodes in akka.conf"
22 sed -ie "s/{{{RPC_SEED_NODES}}}/[\"akka.tcp:\/\/odl-cluster-rpc@$CONTROLLER0:2551\",\"akka.tcp:\/\/odl-cluster-rpc@$CONTROLLER1:2551\",\"akka.tcp:\/\/odl-cluster-rpc@$CONTROLLER2:2551\"]/g" ${AKKACONF}
24 echo "Define unique name in akka.conf"
25 sed -ie "s/{{MEMBER_NAME}}/\$CONTROLLERID/g" ${AKKACONF}
27 echo "Define replication type in module-shards.conf"
28 sed -ie "s/{{{REPLICAS_1}}}/[\"member-1\",\n\t\t\t\"member-2\",\n\t\t\t\"member-3\"]/g" ${MODULESHARDSCONF}
29 sed -ie "s/{{{REPLICAS_2}}}/[\"member-1\",\n\t\t\t\"member-2\",\n\t\t\t\"member-3\"]/g" ${MODULESHARDSCONF}
30 sed -ie "s/{{{REPLICAS_3}}}/[\"member-1\",\n\t\t\t\"member-2\",\n\t\t\t\"member-3\"]/g" ${MODULESHARDSCONF}
31 sed -ie "s/{{{REPLICAS_4}}}/[\"member-1\",\n\t\t\t\"member-2\",\n\t\t\t\"member-3\"]/g" ${MODULESHARDSCONF}
36 echo "Dump modules.conf"
39 echo "Dump module-shards.conf"
40 cat ${MODULESHARDSCONF}
42 echo "Starting controller..."
43 /tmp/${BUNDLEFOLDER}/bin/start
47 CONTROLLERIPS=(${CONTROLLER0} ${CONTROLLER1} ${CONTROLLER2})
48 for i in "${!CONTROLLERIPS[@]}"
50 echo "Configuring member-$((i+1)) with IP address ${CONTROLLERIPS[$i]}"
51 ssh ${CONTROLLERIPS[$i]} "mkdir /tmp/${BUNDLEFOLDER}/configuration/initial"
52 scp ${WORKSPACE}/test/tools/clustering/cluster-deployer/templates/multi-node-test/akka.conf.template ${CONTROLLERIPS[$i]}:${AKKACONF}
53 scp ${WORKSPACE}/test/tools/clustering/cluster-deployer/templates/multi-node-test/modules.conf.template ${CONTROLLERIPS[$i]}:${MODULESCONF}
54 scp ${WORKSPACE}/test/tools/clustering/cluster-deployer/templates/multi-node-test/module-shards.conf.template ${CONTROLLERIPS[$i]}:${MODULESHARDSCONF}
55 scp ${WORKSPACE}/test/tools/clustering/cluster-deployer/templates/multi-node-test/jolokia.xml.template ${CONTROLLERIPS[$i]}:${JOLOKIACONF}
56 scp ${WORKSPACE}/configuration-script.sh ${CONTROLLERIPS[$i]}:/tmp/
57 ssh ${CONTROLLERIPS[$i]} "bash /tmp/configuration-script.sh $((i+1)) ${CONTROLLERIPS[$i]}"
60 # vim: ts=4 sw=4 sts=4 et ft=sh :