- Update the values.yaml file
The values.yaml file is what defines the GEO partitioning for the clusters, so for the primary cluster myODLCluster should have the IP address of the master node of the primary cluster and the peerODLCluster should have the IP address of the master node of the secondary (standby) cluster.
And the secondary cluster, it would be the reverse of the primary cluster.
Restart the SDN-C pods.Info title Example of <oom repo>/kubernetes/sdnc/values.yaml enableODLCluster:
true
geoEnabled: truepeerODLCluster: 10.147.114.5
myODLCluster: 10.147.114.140
Once SDN-C pod is up and running again (might take up to 5~7 minutes), the akka.conf should be updated with IP addresses described in Step 3.
- Log in to one of the SDN-C pods and check the akka.conf from /opt/opendaylight/current/configuration/initial/:Info title Example akka.conf odl-cluster-data {
akka {
remote {
artery {
enabled = off
canonical.
hostname
=
"10.147.114.5"
canonical.port = 30251
}
netty.tcp {
bind-
hostname
=
"10.36.0.3"
bind-port = 2550
hostname
=
"10.147.114.5"
port = 30251
}
# when under load we might trip a false positive on the failure detector
# transport-failure-detector {
# heartbeat-interval = 4 s
# acceptable-heartbeat-pause = 16s
# }
}
cluster {
# Remove ".tcp" when using artery.
seed-nodes = [
"akka.tcp://opendaylight-cluster-data@10.147.114.5:30251"
,
"akka.tcp://opendaylight-cluster-data@10.147.114.5:30252"
,
"akka.tcp://opendaylight-cluster-data@10.147.114.5:30253"
,
"akka.tcp://opendaylight-cluster-data@10.147.114.140:30251"
,
"akka.tcp://opendaylight-cluster-data@10.147.114.140:30252"
,
"akka.tcp://opendaylight-cluster-data@10.147.114.140:30253"
]
roles = [
"member-1"
]
}
persistence {
# By default the snapshots/journal directories live in KARAF_HOME. You can choose to put it somewhere else by
# modifying the following two properties. The directory location specified may be a relative or absolute path.
# The relative path is always relative to KARAF_HOME.
# snapshot-store.local.dir = "target/snapshots"
# journal.leveldb.dir = "target/journal"
journal {
leveldb {
# Set native = off to use a Java-only implementation of leveldb.
# Note that the Java-only version is not currently considered by Akka to be production quality.
# native = off
}
}
}
}
}
...