7.4.3 Enabling Assured Replication (Optional)
If you want to enable assured replication, perform the following steps:
- Create a directory on the persistent volume as
follows:
For example:cd <persistent_volume> mkdir oud-repl-config sudo chown -R 1000:0 oud-repl-configcd /nfs_volumes/oudpv/ mkdir oud-repl-config sudo chown -R 1000:0 oud-repl-config - Add the following section in the
oud-ds-rs-values-override.yaml:
The above will enable assured replication with assured typereplOUD: envVars: - name: post_dsreplication_dsconfig_3 value: set-replication-domain-prop --domain-name ${baseDN} --advanced --set assured-type:safe-data --set assured-sd-level:2 --set assured-timeout:5s - name: execCmd_1 value: /u01/oracle/user_projects/${OUD_INSTANCE_NAME}/OUD/bin/dsconfig --no-prompt --hostname ${sourceHost} --port ${adminConnectorPort} --bindDN "${rootUserDN}" --bindPasswordFile /u01/oracle/user_projects/${OUD_INSTANCE_NAME}/admin/rootPwdFile.txt --trustAll set-replication-domain-prop --domain-name ${baseDN} --advanced --set assured-type:safe-data --set assured-sd-level:2 --set assured-timeout:5s --provider-name "Multimaster Synchronization" configVolume: enabled: true type: networkstorage storageClassCreate: true storageClass: oud-config provisioner: kubernetes.io/is-default-class networkstorage: nfs: server: <IP_address> path: <persistent_volume>/oud-repl-config mountPath: /u01/oracle/config-inputsafe-dataandassured-sd-level: 2.Note:
The above will enable assured replication with assured typesafe-dataandassured-sd-level: 2. For more information on OUD Assured Replication, and other options and levels, see, Understanding the Oracle Unified Directory Replication Model.The following caveats exist:post_dsreplication_dsconfig_NandexecCmd_Nshould be a unique key - change the suffix accordingly. For more information on the environment variable and respective keys, see Environment Variables Used in the oud-ds-rs Helm Chart.- For
configVolumethe storage can benetworkstorage(nfs)orfilesystem(hostPath)as the config volume path has to be accessible from all the Kubernetes nodes. Please note that block storage is not supported forconfigVolume. - If you want to create your own storage class, set
storageClassCreate: true. IfstorageClassCreate: trueit is recommended to setstorageClassto a value of your choice, and provisioner to theprovisionersupported by your cloud vendor. - If you have an existing storageClass that supports network storage, set
storageClassCreate: falseandstorageClassto theNAMEvalue returned in "kubectl get storageclass". Please note that the storage-class should not be the one you used for the persistent volume earlier. Theprovisionercan be ignored.