EEM HA / failover / multiwrite cluster is normally created interactively. This document documents a step by step method to do the same silently, using a response file
Workload Automation AutoSys
Consider two EEM servers, server1.example.com and server2.example.com
Below commands must be run as the Unix user attempting the cluster setup on each node before running the eiam-clustersetup:
cd /opt/CA/SharedComponents/EmbeddedEntitlementsManager/export EIAM_HOME=`pwd`export JAVA_HOME=$EIAM_HOME/jreexport PATH=$JAVA_HOME/bin:$EIAM_HOME/bin:$PATHcd bin
NOTE: The java -jar eiam-clustersetup.jar commands referenced in rest of this document must be executed from $EIAM_HOME/bin folder
java -jar eiam-clustersetup.jar -m test123Nov 21, 2024 3:47:25 PM IclUtil itechLibInitINFO: iTechSDK initialized successfullyINFO - munge value : {MUNGE2}HBEHBAsdHA==
This munge value will be used as ADMIN_PASSWD value through out the rest of the configuration files
On server1, create a file /opt/CA/SharedComponents/EmbeddedEntitlementsManager/bin/reset.txt This step is to reset multi-write on server1 first
IS_PRIMARY=truePRIMARY_HOSTNAME=server1.example.comLOCAL_HOSTNAME=server1.example.comADMIN_PASSWD={MUNGE2}HBEHBAsdHA==RESET_PRIMARY=trueHA_MODE=INTERNALDATA_DSA_PORT=509 ## possible values for SYNC [NEW/DELTA]SYNC=NEW ## Multiple comma sepatated nodes can be provided to ADD#ADD=server1.example.com:509,server2.example.com:509 ## Multiple comma separated nodes can be provided to REMOVE#REMOVE=server1.example.com,server2.example.com MODIFY_CERTS=false## possible values for KEY_LENGTH [1024/2048/4096]KEY_LENGTH=1024## possible values for DIGEST_ALGORITHM [SHA1/SHA256/SHA384/SHA512]DIGEST_ALGORITHM=SHA1
#execute below command to reset primary java -jar eiam-clustersetup.jar -r reset.txt
On server2, create a file /opt/CA/SharedComponents/EmbeddedEntitlementsManager/bin/reset.txt This step is to reset multi-write on server1 first
IS_PRIMARY=truePRIMARY_HOSTNAME=server2.example.comLOCAL_HOSTNAME=server2.example.comADMIN_PASSWD={MUNGE2}HBEHBAsdHA==RESET_PRIMARY=trueHA_MODE=INTERNALDATA_DSA_PORT=509 ## possible values for SYNC [NEW/DELTA]SYNC=NEW ## Multiple comma sepatated nodes can be provided to ADD#ADD=server1.example.com:509,server2.example.com:509 ## Multiple comma separated nodes can be provided to REMOVE#REMOVE=server1.example.com,server2.example.com MODIFY_CERTS=false## possible values for KEY_LENGTH [1024/2048/4096]KEY_LENGTH=1024## possible values for DIGEST_ALGORITHM [SHA1/SHA256/SHA384/SHA512]DIGEST_ALGORITHM=SHA1
#execute below command to reset primary on server2:java -jar eiam-clustersetup.jar -r reset.txt
On server1, create a file /opt/CA/SharedComponents/EmbeddedEntitlementsManager/bin/addsecondary.txt to add a reference to the secondary node
IS_PRIMARY=truePRIMARY_HOSTNAME=server1.example.comLOCAL_HOSTNAME=server1.example.comADMIN_PASSWD={MUNGE2}HBEHBAsdHA==ADD=server2.example.com:509 RESET_PRIMARY=falseHA_MODE=INTERNALDATA_DSA_PORT=509 ## possible values for SYNC [NEW/DELTA]SYNC=NEW ## Multiple comma separated nodes can be provided to REMOVE#REMOVE= MODIFY_CERTS=false## possible values for KEY_LENGTH [1024/2048/4096]KEY_LENGTH=2048## possible values for DIGEST_ALGORITHM [SHA1/SHA256/SHA384/SHA512]DIGEST_ALGORITHM=SHA1 #execute below command to reset primary on server1:java -jar eiam-clustersetup.jar -r addsecondary.txt
On server2, create a file /opt/CA/SharedComponents/EmbeddedEntitlementsManager/bin/sync.txt to sync with primary node
IS_PRIMARY=falsePRIMARY_HOSTNAME=server1.example.comLOCAL_HOSTNAME=server2.example.com#HOST_SELECTION=2ADMIN_PASSWD={MUNGE2}HBEHBAsdHA==SYNC=NEW ## Multiple comma sepatated nodes can be provided to ADD#ADD=server2.example.com:509 ## Multiple comma separated nodes can be provided to REMOVE#REMOVE=server1.example.com,server2.example.com MODIFY_CERTS=false## possible values for KEY_LENGTH [1024/2048/4096]KEY_LENGTH=2048## possible values for DIGEST_ALGORITHM [SHA1/SHA256/SHA384/SHA512]DIGEST_ALGORITHM=SHA1
#execute below command to reset primary on server2:java -jar eiam-clustersetup.jar -r sync.txt
Perform a basic test now to ensure it is setup correctly:
Login to the primary EEM URL, create a test policy or a dummy user
Login to the secondary EEM URL, verify the above policy / user is created. Make a change to this object (example: update the description field)
Back on the primary EEM URL, the same change should now be visible.
Sample response file is located here /opt/CA/SharedComponents/EmbeddedEntitlementsManager/samples/failovertool/failover.response
Interactive Failover setup is documented here