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"
13 ODL_SYSTEM_IP_PATH=\$2
15 echo "Configuring hostname in akka.conf"
16 sed -ie "s:{{HOST}}:\${ODL_SYSTEM_IP_PATH}:" ${AKKACONF}
18 echo "Configuring data seed nodes in akka.conf"
19 sed -ie "s/{{{DS_SEED_NODES}}}/[\"akka.tcp:\/\/opendaylight-cluster-data@$ODL_SYSTEM_IP:2550\",\"akka.tcp:\/\/opendaylight-cluster-data@$ODL_SYSTEM_2_IP:2550\",\"akka.tcp:\/\/opendaylight-cluster-data@$ODL_SYSTEM_3_IP:2550\"]/g" ${AKKACONF}
21 echo "Configuring rpc seed nodes in akka.conf"
22 sed -ie "s/{{{RPC_SEED_NODES}}}/[\"akka.tcp:\/\/odl-cluster-rpc@$ODL_SYSTEM_IP:2551\",\"akka.tcp:\/\/odl-cluster-rpc@$ODL_SYSTEM_2_IP:2551\",\"akka.tcp:\/\/odl-cluster-rpc@$ODL_SYSTEM_3_IP: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 ODL_SYSTEM_IPS=(${ODL_SYSTEM_IP} ${ODL_SYSTEM_2_IP} ${ODL_SYSTEM_3_IP})
48 for i in "${!ODL_SYSTEM_IPS[@]}"
50 echo "Configuring member-$((i+1)) with IP address ${ODL_SYSTEM_IPS[$i]}"
51 ssh ${ODL_SYSTEM_IPS[$i]} "mkdir /tmp/${BUNDLEFOLDER}/configuration/initial"
52 scp ${WORKSPACE}/test/tools/clustering/cluster-deployer/templates/multi-node-test/akka.conf.template ${ODL_SYSTEM_IPS[$i]}:${AKKACONF}
53 scp ${WORKSPACE}/test/tools/clustering/cluster-deployer/templates/multi-node-test/modules.conf.template ${ODL_SYSTEM_IPS[$i]}:${MODULESCONF}
54 scp ${WORKSPACE}/test/tools/clustering/cluster-deployer/templates/multi-node-test/module-shards.conf.template ${ODL_SYSTEM_IPS[$i]}:${MODULESHARDSCONF}
55 scp ${WORKSPACE}/test/tools/clustering/cluster-deployer/templates/multi-node-test/jolokia.xml.template ${ODL_SYSTEM_IPS[$i]}:${JOLOKIACONF}
56 scp ${WORKSPACE}/configuration-script.sh ${ODL_SYSTEM_IPS[$i]}:/tmp/
57 ssh ${ODL_SYSTEM_IPS[$i]} "bash /tmp/configuration-script.sh $((i+1)) ${ODL_SYSTEM_IPS[$i]}"
60 # vim: ts=4 sw=4 sts=4 et ft=sh :