Migrating Persistent Volume Content from Prior Releases to Siebel CRM 21.4 or Later
This topic is part of Migrating Persistent Volume Content.
Siebel CRM 21.4 and later releases provide a new version of Apache ZooKeeper, which is used for the Siebel Gateway registry. As result, there is a change to the persistent volume content for the container acting as the CGW node. For more information about ZooKeeper and Siebel Gateway, see also Siebel Installation Guide on the Siebel Bookshelf.
As of Siebel CRM 21.4, the ZooKeeper installation has been placed one level deeper in the
directory structure, inside a new directory called registry
. This
registry
directory contains a directory called conf
, which
holds all state-related content for the ZooKeeper instance, and a directory called
zookeeper
, which holds the ZooKeeper version for this update. In addition,
one of the files previously holding registry configuration, called zoo1.cfg, is renamed to
registry.cfg. This registry.cfg file holds the location of the conf
directory, so your existing file must be altered to make this change. You must also add two
new properties to the CFG file for this ZooKeeper version.
To make the necessary changes, create a script similar to the following, adjusting the directory locations as required for your deployment:
# specify location of CGW persistent volume
PVLocation=/var/lib/docker/volumes/PV/ENT/CGW
# specify current owner of files in CGW folder
CGWOwner=demoadmin
ConfLocation=${PVLocation}/gtwysrvr/registry/conf
# make new conf folder
mkdir -p ${ConfLocation}
# migrate content to new conf folder
cp -r ${PVLocation}/gtwysrvr/zookeeper/version-2 ${ConfLocation}
cp ${PVLocation}/gtwysrvr/zookeeper/myid ${ConfLocation}
cp ${PVLocation}/gtwysrvr/zookeeper/conf/log4j.properties ${ConfLocation}
cp ${PVLocation}/gtwysrvr/zookeeper/conf/zoo1.cfg ${ConfLocation}/registry.cfg
# make changes to registry.cfg
sed -i "s/dataDir=.*/dataDir=\/siebel\/mde\/gtwysrvr\/registry\/conf/" >> ${ConfLocation}/registry.cfg
echo "admin.enableServer=false" >> ${ConfLocation}/registry.cfg
echo "multiAddress.reachabilityCheckEnabled=false" >> ${ConfLocation}/registry.cfg
# make ownership changes
chown -R ${CGWOwner}:${CGWOwner} ${PVLocation}/gtwysrvr/registry
After copying this script to disk, make appropriate changes at the top of the script before execution, to specify the location on disk of your CGW instance's persistent volume and to specify the current owner of files in your CGW directory. You must run the script using a user with sufficient privileges to execute the commands, which create a directory, copy content, edit files, and finally change file ownership of all files touched by the operation.