4 Upgrading SEPP
This chapter provides information about upgrading Oracle Communications Cloud Native Core, Security Edge Protection Proxy (SEPP) deployment to the latest release. It is recommended to perform SEPP upgrade in a specific order. For more information about the upgrade order, see Oracle Communications Cloud Native Core, Solution Upgrade Guide.
Table 4-1 SEPP Upgrade procedure Sequence
Sequence | Upgrade Task | References | Supported for CDCS | Supported for CLI |
---|---|---|---|---|
1 | Upgrade prerequisites | Preupgrade Tasks | See Oracle Communications CD Control Server User Guide. | Yes |
2 | Upgrade procedure | Upgrade procedure | See Oracle Communications CD Control Server User Guide. | Yes |
4.1 Supported Upgrade Paths
The following table lists the supported upgrade paths for SEPP:
Note:
- SEPP delpoyed in SEPP mode can be upgraded only to SEPP mode.
- SEPP deployed in Roaming Hub mode can be upgraded only to Roaming Hub mode.
Table 4-2 Supported Upgrade Paths
Source SEPP Release | Target SEPP Release |
---|---|
23.2.x, 23.3.x, 23.4.x | 23.4.3 |
Table 4-3 Supported Upgrade Paths
Source Roaming Hub Release | Target Roaming Hub Release |
---|---|
23.2.x, 23.3.x, 23.4.x | 23.4.3 |
Note:
SEPP must be upgraded before upgrading cnDBTier.
4.2 Upgrade Strategy
SEPP supports in-service upgrade. The supported upgrade strategy is
RollingUpdate
. The rolling update strategy is a gradual process
that allows you to update your Kubernetes system with only a minor effect on performance
and no downtime. The advantage of the rolling update strategy is that the update is
applied Pod-by-Pod so the greater system can remain active.
Note:
It is recommended to perform SEPP upgrade in a specific order. For more information about the upgrade order, see Oracle Communications Cloud Native Core, Solution Upgrade Guide.
The following engineering configuration parameters are used to define upgrade strategy:
upgradeStrategy
parameter indicates the update strategy used in SEPP.maxUnavailable
parameter determines the maximum number of pods that can be unavailable during upgrade.
Predefined Upgrade Strategy Value
Table 4-4 Predefined Upgrade Strategy Value
Microservice | Upgrade Value (maxUnavailable) |
---|---|
nf-mediation | 1 |
n32-ingress-Gateway | 25% |
n32-egress-Gateway | 25% |
plmn-ingress-Gateway | 25% |
plmn-egress-Gateway | 25% |
pn32f-svc |
Not Applicable Note: maxSurge=25% attribute is used for this microservice. |
cn32f-svc |
Not Applicable Note: maxSurge=25% attribute is used for this microservice. |
pn32c-svc |
Not Applicable Note: maxSurge=25% attribute is used for this microservice. |
cn32c-svc |
Not Applicable Note: maxSurge=25% attribute is used for this microservice. |
config-mgr-svc |
Not Applicable Note: maxSurge=25% attribute is used for this microservice. |
Appinfo | 25% |
ocpm-config | 50% |
performance | 50% |
sepp-nrf-client-nfmanagement | Single Replica |
sepp-nrf-client-nfdiscovery | 25% |
coherence-svc | 1 |
alternate-route | 25% |
4.3 Preupgrade Tasks
This section provides information about preupgrade tasks to be performed before upgrading SEPP.
While upgrading an existing SEPP 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.
Note:
- No configuration should be performed during the upgrade.
- Do not exit from Helm upgrade command manually. After running the Helm upgrade command, it takes some time (depending upon the 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:
- The
releaseVersion
value in theocsepp_values.yaml
file can not be changed. - While performing an upgrade from an older release to a newer
release, you must align the
ocsepp_values.yaml
file of the new release as per theocsepp_values.yaml
file of the older release. Ensure that you do not change any Helm parameter values. Do not enable any new feature during the upgrade. Anyocsepp_values.yaml
parameter must not be changed while upgrading unless explicitly specified in this guide. For information about enabling any new feature through Helm parameters, see Oracle Communications Cloud Native Core, Security Edge Protection Proxy User Guide. - Install or upgrade the network policies, if applicable. For more information, see Configuring Network Policies.
- While performing an upgrade, the Global Rate Limiting feature
must be disabled on both the ingress gateways (n32-ingress-gateway,
plmn-ingress-gateway) in the source
custom_values.yaml
file.rateLimiting: enabled: false rssRateLimiter: enabled: false globalIngressRateLimiting: enabled: false
- Keep current custom_values.yaml file as backup, that is,
ocsepp-custom values-<version>.yaml
for upgrading. - Update the new custom_values.yaml defined for target SEPP release. See Customizing SEPP section for more details about Helm configurable parameters.
- Perform sanity check using Helm test. See the Performing Helm Test section for the Helm test procedure.
- Before starting upgrade, take a manual backup of SEPP REST based configuration. It will help if manual backup is taken in case the data need to be restored before the upgrade. For REST API configuration details, see Oracle Communications Cloud Native Core, Security Edge Protection Proxy REST Specification Guide.
4.4 Upgrade Tasks
This section includes information about upgrading an existing SEPP deployment.
4.4.1 Helm Upgrade
Upgrading an existing deployment replaces the running containers and pods with new containers and pods. If there is no change in the pod configuration, it is not replaced.
Unless there is a change in the service configuration of a microservice, the service endpoints remain unchanged.
4.4.2 Upgrading SEPP
Perform the following procedure to upgrade SEPP.
Caution:
- Stop the provisioning traffic before you start the upgrade procedure.
- No configuration should be performed during upgrade.
- Do not exit from
helm upgrade
command manually. After running thehelm upgrade
command, it takes some time (depending upon the number of pods to upgrade) to upgrade all the services. In the meantime, you must not press "ctrl+c
" to come out fromhelm upgrade
command. It may lead to anomalous behavior.
Note:
- If the Helm upgrade results in failure and displays ConfigMap
<Egress Rate Limiting ConfigMap Name> in namespace <Namespace>
exists and cannot be imported into the current release: invalid
ownership metadata error, do the following:
Delete the Egress
Rate Limit ConfigMap using the following command:
kubectl delete cm <Egress Rate Limiting ConfigMap Name> -n <namespace>
and run the Helm upgrade again.
- Untar the latest SEPP package and if required, re-tag and push the images to registry. For more information, see Downloading SEPP package and Pushing the Images to Customer Docker Registry.
- Modify the
ocsepp-23.4.3.0.0.custom-values.yaml
file parameters as per site requirement. - Run the following command to upgrade an existing SEPP deployment:
- Using local Helm
chart:
Example:helm upgrade <release_name> <helm_chart> -f <ocsepp_customized_values.yaml> --namespace <namespace-name>
helm upgrade seppsvc ocsepp-23.4.3.tgz -f ocsepp-custom values-23.4.3.yaml --namespace ocsepp
Where,
<release_name>
is the SEPP release name.<helm_chart>
is the Helm chart.<sepp_customized_values.yaml>
is the latest custom-values.yaml file.For example,
ocsepp-23.4.3.0.0.custom-values.yaml
<namespace>
is namespace of SEPP deployment. - Using chart from helm
repo:
Example:helm upgrade <release_name> <helm_repo/helm_chart> --version <chart_version> -f <ocsepp_customized_values.yaml> --namespace <namespace-name>
helm upgrade seppsvc ocsepp-23.4.3.tgz --version <chart_version> -f ocsepp-custom values-23.4.3.yaml --namespace ocsepp
Where,
<release_name>
is the SEPP release name.<helm_chart>
is the Helm chart.<sepp_customized_values.yaml>
is the latest custom-values.yaml file.For example,
ocsepp-23.4.3.0.0.custom-values.yaml
<namespace>
is namespace of SEPP deployment.
- Using local Helm
chart:
- Run the following command to check the status of the
upgrade:
helm status <release_name> --namespace <namespace-name>
Where,
<release_name>
is the SEPP release name.<namespace>
is namespace of SEPP deployment.For example:Sample output of a successful upgrade:$ helm status ocsepp --namespace seppsvc
[cloud-user@occne-22-2-0-cluster-bastion-1 ocsepp-23.4.3]$ helm history ocsepp-release -n seppsvc REVISION UPDATED STATUS CHART APP VERSION DESCRIPTION 1 Wed May 13 07:19:50 2023 superseded ocsepp-23.3.o 23.4.3.0.0 Install complete 2 Wed May 13 07:31:21 2023 superseded ocsepp-23.4.3 23.4.3.0.0 Upgrade complete 3 Wed May 13 07:50:08 2023 superseded ocsepp-23.4.3 23.4.3S.0.0 Rollback to 1
- Perform sanity check using Helm test. See the Performing Helm Test section for the Helm test procedure.
- If the upgrade fails, see Upgrade or Rollback failure in Oracle Communications Cloud Native Core, Security Edge Protection Proxy Troubleshooting Guide.