4 Upgrading OCCM

Note:

It is advisable to take a back up of the OCCM configmap before performing an upgrade or rollback. During an upgrade, the existing configurations or certificates are preserved.

However, in the event of a rollback, any configurations or certificates created during the upgrade will be lost. Therefore, having a backup allows you to reapply these configurations or certificates in future upgrades.

To back up the OCCM configuration, see OCCM Configuration Backup. For restoring the configuration from a backup, see OCCM Configuration Restore.

This chapter provides information about upgrading the OCCM deployment to the latest release. It is recommended to perform OCCM upgrade in a specific order. For more information about the upgrade order, see Oracle Communications Cloud Native Core, Solution Upgrade Guide

Following are the steps to perform upgrade:

  1. Take OCCM configuration backup by taking backup OCCM configmap.
  2. Upgrade OCCM.

Note:

Before proceeding with OCCM Helm upgrade, you must backup the latest OCCM configmap and store the backup file in a location from where it can be easily restored.

Overview

You can use the Helm upgrade feature to upgrade OCCM from its current version to the latest version.

You can upgrade or rollback OCCM from a source release to a target release using CLI procedures as outlined in the following table:

Table 4-1 Upgrade or Rollback Supported for CLI

Upgrade/Rollback Task References Supported for CLI
OCCM Configuration Backup NA Yes
OCCM Upgrade See Oracle Communications Cloud Native Core, CD Control Server User Guide Yes

4.1 Supported Upgrade Paths

The following table lists the supported upgrade paths for OCCM:

Table 4-2 Supported Upgrade Paths

Source Release Target Release Upgrade Sequence Comments
25.2.1xx, 25.1.2xx 25.2.200 For upgrade sequence, see Oracle Communications Cloud Native Core Solution Upgrade Guide
  • CNC Console should be upgraded before OCCM.
  • Helm upgrade OCCM using existing release name.

Note:

CNC Console should be upgraded first followed by OCCM. For more information, see Oracle Communications Cloud Native Configuration Console Installation, Upgrade, and Fault Recovery Guide.

Note:

After performing the upgrade, OCCM dashboard, alert, and mib files must be updated because of the changes made in the metrics definition in 25.1.100 release.
  • Sample Grafana Dashboard file: occm_metric_dashboard_promha_<version>.json
  • Sample Alert File: occm_alerting_rules_promha_<version>.yaml
  • MIB files: occm_mib_<version>.mib, occm_mib_tc_<version>.mib, toplevel.mib

4.2 Preupgrade Tasks

This section provides information about preupgrade tasks to be performed before upgrading OCCM.

Caution:

  • No configuration should be performed during upgrade.
  • Do not exit from Helm upgrade command manually. After running the Helm upgrade command, it takes some amount of time (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.

Note:

  1. Keep current occm_custom_values_<version>.yaml file as backup, that is occm_custom_values_<version to be upgraded>.yaml.
  2. Update the new custom_values.yaml defined for target OCCM release. See OCCM Parameters section in Configuration Options for more details about Helm configurable parameters.

Preupgrade steps:

  1. Keep current occm_custom_values_<version>.yaml file as backup, that is occm_custom_values_25.2.100.yaml.
  2. Update the new custom_values.yaml defined for target OCCM release. For more details about Helm configurable parameters, see Configuration Options.

4.2.1 OCCM Configuration Backup

The following procedure is used to create a temporary directory and save the json file that contains the configmap data. It can be used if there is any issues with the configmap data.

To take a data backup or dump of the configmap, log in to the deployment and run the following commands:
  1. Run the following commands to get the configmap list of namespaces where OCCM is deployed:
    $ kubectl get cm -n <namespace>
    For example,
    $ kubectl get cm -n occm 
    Sample output:
    kube-root-ca.crt             1      145d
    occm-occm                    3      7d4h
  2. Run the following command to get configmap that needs to be backed up:
    $ kubectl get cm <configmap name> -n <namespace> 
    For example,
    $ kubectl get cm occm-occm -n occm
    Sample output:
    occm-occm                    3      7d4h
    
  3. Run the following command to take a backup of the OCCM configmap:
    $ kubectl get cm <config-map name> -o json -n <namespace> > occm-config-map_<version>_backup.json 
    For example,
    $ kubectl get cm occm-occm -o json -n occm > occm-config-map_25.2.200_backup.json

Note:

You are recommended to take a periodic backup of configmap.

4.3 Upgrade Tasks

This section describes the procedure to upgrade OCCM to the latest release.

  1. Prepare occm_custom_values_<version>.yaml file for upgrade.
  2. Run the following command to upgrade OCCM using existing release release name:
    $ helm upgrade <occm_release_name> <helm_chart> -f <occm_custom_values_<version>.yaml> -n <namespace>
    For example:
    $ helm upgrade occm ocspf-helm-repo/occm -f occm_custom_values_<version>.yaml -n occm
  3. Run the following command to check the status of upgrade:
    $ helm status <occm_release_name> -n <namespace>
    For example:
    $ helm status occm -n occm

Note:

You must use the existing release name for upgrade or rollback.

4.4 Post Upgrade Tasks

This section provides the steps to be performed after upgrading OCCM.

For information on verifying OCCM Installation, see Verifying Installation

4.4.1 Parameters and Definitions During OCCM Upgrade

Table 4-3 OCCM Upgrade Parameters and Definitions

Parameters Definitions
<release_name> OCCM Helm release deployed. It could be found in the output of 'helm list' command
<namespace> OCCM namespace in which release deployed
<helm_chart> OCCM helm chart
<chart_version> OCCM helm chart version in case helm charts are referred from helm repo
<helm_repo> OCCM helm repo
<occm_custom_values_<version>.yaml> OCCM customized values.yaml for target release