5 Upgrading CNC Console
- M-CNCC IAM
- M-CNCC Core
- A-CNCC Core
WARNING:
Before proceeding with CNCC IAM helm upgrade, latest CNCC database backup must be taken. See CNCC IAM DB Backup and store backup file in a location which can be easily restored.Note:
A-CNCC DB dependency has been removed from CNC Console release 23.2.0. Only CNCC IAM and M-CNCC Core have DB dependency.The following steps must be followed while performing the upgrade:
This section explains about the CNC Console upgrade procedures for single cluster and Multicluster deployments. M-CNCC IAM, M-CNCC Core, and A-CNCC Core can be upgraded from current version to the latest version using helm upgrade feature.
User can upgrade and Rollback CNC Console from a source release to a target release using CDCS or CLI procedures as outlined in the following table:
Upgrade | References | Applicable for CDCS | Applicable for CLI |
---|---|---|---|
CNCC IAM DB Backup | CNCC IAM DB Backup | Yes | Yes |
A-CNCC Core DB Backup | A-CNCC Core DB Backup | Yes | Yes |
CNCC Upgrade | CNCC Upgrade | See Oracle Communications CD Control Server Installation and Upgrade Guide | Yes |
Removing A-CNCC Core DB | Removing A-CNCC Core DB | Yes | Yes |
Caution:
It is recommended to verify the copy pasted content especially when the hyphens or any special characters are part of copied content.
5.1 Supported Upgrade Paths
This section describes the supported upgrade paths for CNCC
For more information about supported upgrade paths, see CNC Console Deployment Modes section.
Table 5-1 CNC Console Upgrade Sequence
Deployment Mode | Source Version | Target Version | Upgrade Sequence | Comments |
---|---|---|---|---|
Single Cluster | 23.2.x or 23.3.x | 23.4.x |
Console Upgrade Upgrade CNCCNF Upgrade Upgrade Instances (NF or CNE/OSO Common Services)cnDbtier Upgrade |
|
Multi Cluster | 23.2.x or 23.3.x | 23.4.x |
Console Manager Upgrade Upgrade CNCCConsole Agent Upgrade Upgrade A-CNCC CoreNF Upgrade Upgrade Instances (NF or CNE/OSO Common Services)cnDbtier Upgrade |
|
Note:
- Console should be upgraded first followed by NF for all the supported NFs.
- cnDBTier only supports APIs from 23.3.x onwards. Users with a combination of cnDBTier 23.3.x or older, and NF version 23.4.x or newer won't have access to the data in cnDBTier configuration items.
5.2 Preupgrade Tasks
While upgrading an existing CNC Console deployment, the running set of containers and pods are replaced with the new set of containers and pods. However, if there is no change in the pod configuration, the running set of containers and pods are not replaced.
Caution:
- No configuration should be performed during upgrade.
- Do not exit from helm upgrade command manually. After running the helm upgrade command, it takes sometime (depending upon number of Pods to upgrade) to upgrade all of the services. In the meantime, you must not press "ctrl+c" to come out from helm upgrade command. It may lead to anomalous behavior.
Preupgrade Steps
- Keep current occncc_custom_values_<version>.yaml file as backup, that is
occncc_custom_values_<version to be upgraded>.yaml
- Update the new custom_values.yaml defined for target CNC Console release. See CNC Console IAM Configuration Parameters section and CNC Console Core Configuration Parameters section for more details about helm configurable parameters.
- Install or upgrade the network policies, if applicable. For more information, see Configuring Network Policies for CNC Console.
5.3 CNCC IAM DB Backup
This section describes the procedure to do the DB backup of CNCC IAM.
Prerequisites
The prerequisites for the backup process are:
- MySQL NDB cluster should be in a healthy state.
- Every database node of the MySQL NDB cluster should be in running state.
- In case of cnDBTier to verify the prerequisites, check mysql pod is up and running.
- In case of VM based DB Tier to verify the prerequisites, login to
MCM client on one of the SQL node of the cluster. Execute the following command
to check the node
status:
mcm> show status -r occnendbclustera;
- Log in to the SQL node and run the following command to take the
dump (backup) of the database. The user is required to enter the
password.
kubectl exec -i -n <namespace> <sql-node> -- mysqldump --single-transaction --no-tablespaces --no-create-info -h 127.0.0.1 -u <username> -p <database-name> | gzip > <backup_filename>.sql.gz
Example:
kubectl exec -i -n occne-ndb ndbappmysqld-0 -- mysqldump --single-transaction --no-tablespaces --no-create-info -h 127.0.0.1 -u cnccusr -p cnccdb | gzip > cnccdbBackup.sql.gz
5.4 A-CNCC Core DB Backup
This section describes the procedure to take the DB backup of A-CNCC Core.
Note:
This step is applicable when upgrading from 23.1.x or older version as CNCC 23.2.0 onwards A-CNCC DB dependency has been taken out. Only CNC Console IAM and M-CNCC Core has DB dependency.Prerequisites
The prerequisites for the backup process are:
- MySQL NDB cluster should be in a healthy state.
- Every database node of the MySQL NDB cluster should be in running state.
- In case of cnDBTier to verify the prerequisites, check mysql pod is up and running.
- In case of VM based DBTier to verify the prerequisites, log in to
MCM client on one of the SQL node of the cluster. Run the following command to
check the node
status:
mcm> show status -r occnendbclustera;
- Log in to the SQL node and run the following command to take the
dump (backup) of the database. The user is required to enter the
password.
kubectl exec -i -n <namespace> <sql-node> -- mysqldump --single-transaction --no-tablespaces -h 127.0.0.1 -u <username> -p <database-name> | gzip > <backup_filename>.sql.gz
Example:kubectl exec -i -n occne-ndb ndbappmysqld-0 -- mysqldump --single-transaction --no-tablespaces -h 127.0.0.1 -u cnccusr -p acncccommonconfig | gzip > acncccommonconfigBackup.sql.gz
5.5 CNCC Upgrade
Note:
- Existing release name must be used for upgrade.
- mCnccIams port is assumed as 80. The mCnccIams port configuration must be added only if port is other than 80.
- Prepare occncc_custom_values_<version>.yaml file for upgrade.
- Upgrade CNC Console using existing release release name
(cncc-iam or cncc) by running the following command:
$ helm upgrade <cncc_iam_release_name> <helm_chart> -f <occncc_custom_values_<version>.yaml> -n <namespace>
Example:$ helm upgrade cncc ocspf-helm-repo/cncc -f occncc_custom_values_<version>.yaml -n cncc
- Check the status of upgrade by running the following
command:
$ helm status <cncc_iam_release_name> -n <namespace>
Example:$ helm status cncc -n cncc
5.6 Post Upgrade Tasks
This section describes the tasks to be performed after an upgrade.
5.6.1 Removing A-CNCC Core DB
Note:
This step is applicable when upgrading from 23.1.x or older version as CNCC 23.2.0 onwards A-CNCC DB dependency has been taken out. Only CNC Console IAM and M-CNCC Core has DB dependency.Perform the following steps to remove A-CNCC Core DB:
- Log in to a server or machine that can access the SQL nodes of the NDB cluster.
- Connect to the SQL node of the NDB cluster or connect to the
cnDBTier.
To connect to cnDBTier, run the following command:
$ kubectl -n <cndbtier_namespace> exec -it <cndbtier_sql_pod_name> -c <cndbtier_sql_container_name> -- bash
Example:$ kubectl -n cndbtier exec -it ndbappmysqld-0 -c mysqlndbcluster -- bash
- Login to the MySQL prompt using a root permission or user that can create users with
permissions.
$ mysql -h 127.0.0.1 -u root -p
- Drop the existing acncccommonconfig database.
$ DROP DATABASE if exists <ACNCC Core Common Config Database>; $ DROP DATABASE if exists acncccommonconfig;
5.7 Parameters and Definitions During CNC Console Upgrade
Parameters and Definitions during CNCC Upgrade
Table 5-2 Parameters and Definitions during CNCC Upgrade
Parameters | Definitions |
---|---|
<release_name> | CNCC Helm release deployed. It could be found in the output of 'helm list' command |
<namespacename> | CNCC namespace in which release deployed |
<helm_chart> | CNCC helm chart |
<chart_version> | CNCC helm chart version in case helm charts are referred from helm repo |
<helm_repo> | CNCC helm repo |
<occncc_custom_values_<version>.yaml> |
CNCC customized values.yaml for target release. |
<occncc_rollback_iam_schema_<version>.sql> | CNCC DB schema file used for rollback |