9 Enable or Disable Two-Site Redundancy Support
This chapter provides information about how to enable or disable Two Site Redundancy feature.
9.1 Enable Two-Site Redundancy Support
To enable the Two-Site Redundancy, follow the steps outlined below:
Prerequisites
- Two independent centralized sites with network connectivity are
required for enabling the Two-Site Redundancy feature.
Note:
Only IPv4 network is supported. - Both sites must have different databases.
- Both clusters should be able to communicate with one another.
- All changes in charts should be done in the management group helm charts.
- Certificates for the Redundancy Service must be created.
- TLS and MTLS should be enabled for both primary and secondary sites. For information, see "Implementing OCNADD Security Recommendations and Guidelines, TLS Configuration, MTLS Configuration" section in Oracle Communications Network Analytics Suite Security Guide.
Update Parameters in Helm Chart
Note:
Optional: If Egress Annotation Required
If the CNE version requires Egress Annotation to allow traffic outside the cluster, set the below parameter to true on both mated sites.
- Go to the release folder and edit the
ocnadd-custom-values-mgmt-group.yaml
created for management group installation. - Set
global.ocnaddredundancyagent.egress
totrue
. - Run helm chart
upgrade:
helm upgrade <release_name> <management_chart_path> -f <custom_values_path> -n <management_namespace>
To Enable Static Loadbalancer IP of Redundancy Agent
ocnaddredundancyagent.ocnaddredundancyagent.staticLoadBalancer.enabled: false ## Change this to true
ocnaddredundancyagent.ocnaddredundancyagent.staticLoadBalancer.staticIP: 10.121.44.8 ## Update this with static IP
- To enable Two-Site Redundancy feature in the primary site, perform the following
steps:
- Go to the release folder and edit the
ocnadd-custom-values-mgmt-group.yaml
created for the management group installation.global.ocnaddredundancyagent.enabled: false ## Change this to true global.deployment.primary_site: false ## Change this to true
Note:
- When Oracle Communication Certificate Manager (OCCM) is used
to create the TLS certificates, the following steps need to
be performed to enable or disable two-site redundancy
instead of running Helm upgrades in Steps 2 and 6:
- Uninstall the management group in the primary/secondary site.
- Reinstall the management group in the primary/secondary site.
To update the Redundancy Agent's Load Balancer IP in the certificate, see the section "Adding/Updating Load Balancer IPs in SAN through OCCM" in the Oracle Communications Network Analytics Data Director Installation, Upgrade, and Fault Recovery Guide.
- Since OCCM is used to create the certificates, skip Steps 4 and 8.
- When Oracle Communication Certificate Manager (OCCM) is used
to create the TLS certificates, the following steps need to
be performed to enable or disable two-site redundancy
instead of running Helm upgrades in Steps 2 and 6:
- Go to the release folder and edit the
- Run
helm upgrade
in the Primary Site:helm upgrade <management-release-name> -f ocnadd-custom-values-<mgmt-group>.yaml --namespace <release-namespace> <helm_chart>
For example:helm upgrade ocnadd-mgmt -f ocnadd-custom-values-mgmt-group.yaml --namespace ocnadd-deploy ocnadd_mgmt
- Verify the deployment post helm
upgrade:
kubectl get po,svc -n <management-namespace>
For example:
kubectl get po,svc -n ocnadd-mgmt
Sample output:NAME READY STATUS RESTARTS AGE pod/ocnaddredundancyagent-ffddd67b9-nrkrh 1/1 Running 0 64m NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE service/ocnaddredundancyagent LoadBalancer 10.233.63.98 10.25.219.64 13000:32421/TCP,9000:32676/TCP 35d
After the upgrade, the
ocnaddredundancyagent
service should have an External-IP assigned to it, and the pod should be in a running state. - Follow the procedure "Update SAN Entries for Redundancy Agent" to update the External-IP obtained in the previous step.
- To enable the Two-Site Redundancy feature in the secondary site,
perform the following steps:
Go to the release folder and edit the
ocnadd-custom-values-mgmt-group.yaml
created for the management group installation.global.ocnaddredundancyagent.enabled: false ## Change this to true global.deployment.primary_agent_ip: 10.10.10.10 ## Change this to External-IP of ocnaddredundancyagent service set in Primary Ex: 10.25.219.64
- Run
helm upgrade
in the Secondary Site:helm upgrade <management-release-name> -f ocnadd-custom-values-<mgmt-group>.yaml --namespace <release-namespace> <helm_chart>
For example:
helm upgrade ocnadd-mgmt -f ocnadd-custom-values-mgmt-group.yaml --namespace ocnadd-deploy ocnadd_mgmt
- Verify the deployments in the Secondary
Site:
kubectl get po,svc -n <management-namespace>
For example:
kubectl get po,svc -n ocnadd-mgmt
Sample output:NAME READY STATUS RESTARTS AGE pod/ocnaddredundancyagent-ffddd67b9-nrkrh 1/1 Running 0 64m NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE service/ocnaddredundancyagent LoadBalancer 10.233.24.112 10.25.225.149 13000:32421/TCP,9000:32676/TCP 35d
After the upgrade, the
ocnaddredundancyagent
service should have an External-IP assigned to it, and the pod should be in a running state. - Follow the procedure "Update SAN Entries for Redundancy Agent" to update the External-IP obtained in the previous step.
- Proceed to the OCNADD UI to create Mate Configuration for the available worker groups. For more information about creating mate configuration using OCNADD UI, see Redundancy section.
9.2 Disable Two-Site Redundancy Support
To disable the Two-Site redundancy, perform the following steps:
- Delete the mate configuration for each of the mated worker group pair from the primary site UI.
- <Optional> Perform the cleanup on the secondary site by removing the consumer feed, filter, Kafka feed, and correlation configuration. This step can be skipped if the user wants to keep the configurations.
- To disable Two-Site Redundancy feature in the secondary site, perform
the following steps:
Go to the release folder and edit the
ocnadd-custom-values-mgmt-group.yaml
created for management group installation.global.ocnaddredundancyagent.enabled: true ## Change this to false
- Run helm upgrade in the Secondary
Site:
helm upgrade <management-release-name> -f ocnadd-custom-values-<mgmt-group>.yaml --namespace <release-namespace> <helm_chart>
For example:
helm upgrade ocnadd-mgmt -f ocnadd-custom-values-mgmt-group.yaml --namespace ocnadd-deploy ocnadd_mgmt
- Verify that
ocnaddredundancyagent
service and pods are removed from the management namespace of the secondary site:kubectl get po,svc -n <management-namespace>
- Now, to disable Two-Site Redundancy feature in the primary site,
perform the following steps:
Go to the release folder and edit the
ocnadd-custom-values-mgmt-group.yaml
created for the management group installation.global.ocnaddredundancyagent.enabled: true ## Change this to false
- Run helm upgrade in the Primary
Site:
helm upgrade <management-release-name> -f ocnadd-custom-values-<mgmt-group>.yaml --namespace <release-namespace> <helm_chart>
For example:
helm upgrade ocnadd-mgmt -f ocnadd-custom-values-mgmt-group.yaml --namespace ocnadd-deploy ocnadd_mgmt
- Verify that
ocnaddredundancyagent
service and pods are removed from the management namespace of the primary site:kubectl get po,svc -n <management-namespace>
9.3 Update SAN Entries for Redundancy Agent
Follow the steps below to update SAN Entries for Redundancy Agent:
- Navigate to the
ssl_certs
folder of the target release. - Edit the
management_service_values
file located at the pathdemoCA/dd_mgmt_worker_services/<management_group_namespace>
to add the IP address as a SAN entry in the redundancy agent service section.... ... [ocnaddredundancyagent] client.commonName=ocnaddredundancyagent-client server.commonName=ocnaddredundancyagent DNS.1=*.ocnaddredundancyagent.mgmt-doc.svc.ocnadd-vcne3 DNS.2=ocnaddredundancyagent DNS.3=ocnaddredundancyagent.mgmt-doc IP.1=124.x.x.1 <Loadbalancer IP of Redundancy Agent> ## Add IP.1 ##end
- Edit the
default_values/renew_cert_files
and comment all the DD services exceptocnaddredundancyagent
.# This files contain the list of services for which certificate needs to be renewed # The service name should be exactly same for which the certificates has been initially generated # defaultDays is number of days upto which certificate should be renewed. Certificate for all listed # service will be updated with this value. defaultDays=365 #kafka-broker #zookeeper #ocnaddthirdpartyconsumer #oraclenfproducer #ocnadduirouter #ocnaddadminservice #ocnaddalarm #ocnaddconfiguration #ocnaddhealthmonitoring #ocnaddscpaggregation #ocnaddnrfaggregation #ocnaddseppaggregation #ocnaddbsfaggregation #ocnaddpcfaggregation #adapter #ocnaddcorrelation #ocnaddfilter #ocnaddbackuprestore ocnaddredundancyagent
- Run the
generate_certs.sh
script with the-ren
or--renew
option:./generate_certs.sh -cacert <path to>/cacert.pem -cakey <path to>/cakey.pem --renew
- Enter the management group namespace when
prompted.
Enter kubernetes namespace: <management_namespace>
- Enter the passphrase for CAkey when
prompted.
Enter passphrase for CA Key file: <passphrase>
- The certificates for
ocnaddredundancyagent
service with the given IP as SAN will be renewed, and the secrets for it will also be updated. - A rolling update will be triggered for the
ocnaddredundancyagent
service to take up the latest certificates in effect.