2 NF ATS Installation Procedure
- NRF
- NSSF
- Policy
- SCP
- SLF
NRF ATS Installation Procedure
- Locating and downloading ATS and Simulator Images
- Preparing to deploy ATS and Stub Pod in Kubernetes Cluster
- Deploying ATS and Stub Pod in Kubernetes Cluster
Locating and Downloading ATS Images
The steps to locate and download ATS Images are as follows:
- Login to My Oracle Support using the appropriate credentials.
- Select Patches & Updates tab.
- In the Patch Search console, select Product or Family (Advanced) tab.
- Enter Oracle Communications Cloud Native Core - 5G in Product field and select the product from the Product drop-down.
- Select Oracle Communications Cloud Native Core Network Repository Function <release_number> in Release field.
- Click Search. The Patch Advanced Search Results list appears.
- Select the required ATS patch from the list. The Patch Details window appears.
- Click Download. The File Download window appears.
- Click the <p********_<release_number>_Tekelec>.zip file.
- Extract the ATS release package zip file to download the ATS images to the system where network function must be installed.
- The
ocats-nrf
directory has following files:ocats-nrf-tools-pkg-1.7.2.0.0.tgz ocats-nrf-tools-pkg-1.7.2.0.0-README.txt ocats-nrf-custom-configtemplates-1.7.2.0.0.zip ocats-nrf-custom-configtemplates-1.7.2.0.0-README.txt
- The
ocats-nrf-tools-pkg-1.7.2.0.0-README.txt
file contains all the information required for the package. - The
ocats-nrf-tools-pkg-1.7.2.0.0.tgz
file has following images and charts packaged as tar files:ocats-nrf-tools-pkg-1.7.2.0.0.tgz | |_ _ _ocats-nrf-pkg-1.7.2.0.0.tgz | |_ _ _ _ _ _ ocats-nrf-1.7.2.tgz (Helm Charts) | |_ _ _ _ _ _ ocats-nrf-image-1.7.2.tar (Docker Images) | |_ _ _ _ _ _ OCATS-NRF-Readme.txt | |_ _ _ocstub-python-pkg-1.7.2.0.0.tgz |_ _ _ _ _ _ ocstub-1.7.2.tgz (Helm Charts) |_ _ _ _ _ _ ocstub-python-image-1.7.2.tar (Docker Images) |_ _ _ _ _ _ OCSTUB-PYTHON-Readme.txt
In addition to the above images and charts, the ocats-nrf-custom-configtemplates-1.7.2.0.0.zip file is also there in the same location. The ocats-nrf-custom-configtemplates-1.7.2.0.0-README.txt file contains the information about the content of this zip file. The content of the zip file is as follows:ocats-nrf-custom-configtemplates-1.7.2.0.0.zip | |_ _ _ocats-nrf-custom-values.yaml (Custom values file for installation) | |_ _ _ocats-nrf-custom-serviceaccount.yaml (Template to create custom service account) | |_ _ _ocstub-python-custom-values.yaml (Custom values file for stub installation
- The user can copy the tar file from here to the OCCNE/OCI/Kubernetes cluster where they want to deploy ATS.
Preparing to Deploy ATS and Stub Pod in Kubernetes Cluster
The steps to deploy ATS and Stub Pod in Kubernetes Cluster are as follows:
- Execute the following command to extract tar file
content.
tar -xvf ocats-nrf-tools-pkg-1.7.2.0.0.tgz
The output of this command is:ocats-nrf-pkg-1.7.2.0.0.tgz ocstub-python-pkg-1.7.2.0.0.tgz
- Execute the given command to extract final helm
charts and docker images of ATS.
tar -xvf ocats-nrf-pkg-1.7.2.0.0.tgz
The output of this command is:ocats-nrf-image-1.7.2.tar ocats-nrf-1.7.2.tgz OCATS-NRF-Readme.txt
Note:
TheOCATS-NRF-Readme.txt
file contains all the information required for the package. - Execute the following command to untar the ocstub package .
tar -xvf ocstub-python-pkg-1.7.2.0.0.tgz
The output of this command is:ocstub-python-image-1.7.2.tar ocstub-python-1.7.2.tgz OCSTUB-PYTHON-Readme.txt
- Execute the following command to extract the content of the custom values
file:
unzip ocats-nrf-custom-configtemplates-1.7.2.0.0.zip
The output of this command is:ocats-nrf-custom-values.yaml (Custom yaml file for deployment of OCATS-NRF) ocats-nrf-custom-serviceaccount.yaml (Custom yaml file for service account creation to help customer if required) ocstub-python-custom-values.yaml (Custom yaml file for deployment of OCSTUB-PYTHON)
- In your cluster, load the ATS docker image,
'
ocats-nrf-image-1.7.2.tar
' and Stub docker image, 'ocstub-python-image-1.7.2.tar
' and push it to your registry.docker load -i ocats-nrf-image-1.7.2.tar docker push <registry>/ocats-nrf:1.7.2 docker load -i ocstub-python-image-1.7.2.tar docker push <registry>/ocstub-python:1.7.2
- Update the image name and tag in the
ocats-nrf-custom-values.yaml
andocstub-python-custom-values.yaml
file as required.For this, you need to open the
ocats-nrf-custom-values.yaml
andocstub-python-custom-values.yaml
file and update theimage.repository
andimage.tag
- ATS supports static port. By default, this feature is not available. To enable
this feature:
- In the ocats-nrf-custom-values.yaml file under service section, set the staticNodePortEnabled parameter value to 'true' and staticNodePort parameter value with valid nodePort.
- A sample screen is given below:
Figure 2-1 ocats-nrf-custom-values.yaml - service section
Enabling Service Mesh for ATS
Note:
This procedure is applicable only if you want to enable service mesh.To enable service mesh for ATS, perform the following steps:
- If the service mesh is not enabled at the global level for the
namespace, execute the following command to enable it before deploying
ATS.
kubectl label --overwrite namespace <namespace_name> istio-injection=enabled
Example
kubectl label --overwrite namespace ocnrf istio-injection=enabled
- Under the service section of the ocats-nrf-custom-values.yaml file
, set the serviceMeshCheck parameter true. By default, this
parameter is set to false. A snippet of service section in the yaml file is
given below:
Figure 2-2 Enabling Service Mesh
Deploying ATS and Stub Pod in Kubernetes Cluster
Note:
It is important to ensure that all the three components; ATS, Stub and NRF are in the same namespace.You need two Stubs for the NRF tests to be executed. The service name for the stubs should be notify-stub-service and notify-stub-service02.
ATS and Stub supports Helm2 and Helm3 for deployment.
If the namespace does not exists, execute the following command to create a namespace:
kubectl
create namespace ocnrf
helm install ocats-nrf-1.7.2.tgz --name <release_name> --namespace
<namespace_name> -f <values-yaml-file>
For example -
helm install ocats-nrf-1.7.2.tgz --name ocats --namespace ocnrf -f
ocats-nrf-custom-values.yaml
Using Helm 2 for Stubs:
helm install ocstub-python-1.7.2.tgz --set service.name=<stub-service-name>
--name <release_name> --namespace <namespace_name> -f <values-yaml-file>
For example -
helm install ocstub-python-1.7.2.tgz --set service.name=notify-stub-service --name
ocstub --namespace ocnrf -f ocstub-python-custom-values.yaml
helm install ocstub-python-1.7.2.tgz --set service.name=notify-stub-service02 --name
ocstub1 --namespace ocnrf -f ocstub-python-custom-values.yaml
Using Helm 3 for ATS:
helm3 install
-name <release_name> ocats-nrf-1.7.2.tgz --namespace
<namespace_name> -f <values-yaml-file>
Example:helm3 install -name ocats ocats-nrf-1.7.2.tgz
--namespace ocnrf -f ocats-nrf-custom-values.yaml
Using Helm 3 for Stubs:
helm3 install -name
<release_name> ocstub-python-1.7.2.tgz --set
service.name=<stub-service-name> --namespace <namespace_name> -f
<values-yaml-file>
Example:
helm3 install -name ocstub ocstub-python-1.7.2.tgz --set
service.name=notify-stub-service --namespace ocnrf -f
ocstub-python-custom-values.yaml
helm3
install -name ocstub1 ocstub-python-1.7.2.tgz --set
service.name=notify-stub-service02 --namespace ocnrf -f
ocstub-python-custom-values.yaml
helm status
<release_name>
Checking Pod Deployment:
kubectl get pod -n ocnrf
Checking Service Deployment:
kubectl get service -n ocnrf
Figure 2-3 Checking Pod and Service Deployment without Service Mesh

If ATS is deployed with side car of service mesh, you need to ensure that both ATS and Stub pods have 2 containers in ready state and shows "2/2". A sample screen is shown below:
Figure 2-4 ATS and Stub Deployed with Service Mesh

NSSF ATS Installation Procedure
- Locating and downloading ATS and Simulator Images
- Deploying ATS and Stub Pod in Kubernetes Cluster as per NSSF
Locating and Downloading ATS Images
- Login to My Oracle Support using the appropriate credentials.
- Select Patches & Updates tab.
- In the Patch Search console, select Product or Family (Advanced) tab.
- Enter Oracle Communications Cloud Native Core - 5G in Product field and select the product from the Product drop-down.
- Select Oracle Communications Cloud Native Core Network Slice Selection Function <release_number> in Release field.
- Click Search. The Patch Advanced Search Results list appears.
- Select the required ATS patch from the list. The Patch Details window appears.
- Click Download. The File Download window appears.
- Click the <p********_<release_number>_Tekelec>.zip file.
- Extract the ATS release package zip file to download the ATS images to the system where network function must be installed.
- The
ocats-nssf
directory has the following files:ocats-nssf-tools-pkg-1.4.0.0.tgz
ocats-nssf-tools-pkg-1.4.0.0-README.txt
Note:
Theocats-nssf-tools-pkg-1.4.0.0-README.txt
file contains all the information required for the package.
- The
ocats-nssf-tools-pkg-1.4.0.0-README.txt
file contains all the information required for the package. - The
ocats-nssf-tools-pkg-1.4.0.0.tgz
file has the following images and charts packaged as tar files:ocats-nssf-tools-pkg-1.4.0.0.tgz | |_ _ _ocats-nssf-pkg-1.4.0.0.tgz | |_ _ _ _ _ _ ocats-nssf-1.4.tgz (Helm Charts) | |_ _ _ _ _ _ ocats-nssf-image-1.4.tar (Docker Images) | |_ _ _ _ _ _ Readme.txt
- The user can copy the tar file from here and copy in their OCCNE/OCI/Kubernetes cluster where they want to deploy ATS.
Deploying ATS in Kubernetes Cluster
The steps to deploy ATS in Kubernetes Cluster are as follows:
- Execute the following command to extract tar file content:
tar -xvf ocats-nssf-tools-pkg-1.4.0.0.tgz
The output of this command is:
ocats-nssf-pkg-1.4.0.0.tgz
- Execute the following command to extract final helm charts and docker images of
ATS:
tar -xvf ocats-nssf-pkg-1.4.0.0.tgz
The output of this command is:
ocats-nssf-image-1.4.tar ocats-nssf-1.4.tgz
Readme.txt
- In your cluster, load the ATS image,
'
ocats-nssf-image-<version>.tar
' and push to your registry.docker load -i ocats-nssf-image-<version>.tar
- Execute the following command to grep the image.
docker images | grep ocats-nssf
- Copy the Image ID from the output of the grep command and change the tag
to your registry.
Example:
docker tag <Image_ID> <your-registry-name/ocats-nssf:<tag>>
docker push <your-registry-name/ocats-nssf:<tag>>
- Execute the following command to grep the image.
- Untar the helm charts,
ocats-nssf-<version>.tgz
tar -xvf ocats-nssf-<version>.tgz
- Update the image name and tag in the
ocats-nssf/values.yaml
file as required. For this, you need to open thevalues.yaml
file and update theimage.repository
andimage.tag
. - ATS supports static port. By default, this feature is not available.
To enable this feature:
- In the ocats-nssf/values.yaml file under service section, set the value of staticNodePortEnabled parameter as true and provide a valid nodePort value for staticNodePort.
- A sample screen is given below:
Figure 2-5 ocats-nssf/values.yaml - service section
- Deploy ATS using the updated helm charts after performing the previous step
5.
helm install ocats-nssf --name <release_name> --namespace <namespace_name> -f ocats-nssf/values.yaml
Example:
helm install ocats-nssf --name ocats --namespace ocnssf -f ocats-nssf/values.yaml
If this command returns an error like,
<Error: validation failed: unable to recognize "": no matches for kind "Deployment" in version "apps/v1beta2">
then, open thetemplate/deployment.yml
file and change the apiVersoin to apiVersion: apps/v1. - Execute the following command to verify the ATS deployment:
helm status <release_name>
A sample screen showing ATS Helm release is given below:Figure 2-6 ATS Helm Release
Policy ATS Installation Procedure
The Policy ATS installation procedure covers two steps:
- Locating and downloading the ATS images.
- Deploying ATS images.
Note:
Restart the Nrf-client pod of Policy for UDR and CHF discovery as part of each test case.Locating and Downloading ATS Images
To locate and download the ATS Images:
- Login to My Oracle Support using the appropriate credentials.
- Select Patches & Updates tab.
- In the Patch Search console, select Product or Family (Advanced) tab.
- Enter Oracle Communications Cloud Native Core - 5G in Product field and select the product from the Product drop-down.
- Select Oracle Communications Cloud Native Core Policy Control Function <release_number> in Release field.
- Click Search. The Patch Advanced Search Results list appears.
- Select the required ATS patch from the list. The Patch Details window appears.
- Click Download. The File Download window appears.
- Click the <p********_<release_number>_Tekelec>.zip file.
- Extract the ATS release package zip file to download the ATS images to the system where network function must be installed.
- The
ocats-policy
directory has following file:ocats-policy-tools-1.7.4.0.0.tgz
- The
ocats-policy-tools-1.7.4.0.0.tgz
file has following images and charts packaged as tar files:ocats-policy-tools-1.7.4.0.0.tgz | |_ _ _ocats-policy-pkg-1.7.4.0.0.tgz | |_ _ _ _ _ _ ocats-policy-1.7.4.tgz (Helm Charts) | |_ _ _ _ _ _ ocats-policy-images-1.7.4.tar (Docker Images) | |_ _ _ocstub-pkg-1.1.0.0.0.tgz |_ _ _ _ _ _ ocstub-go-1.1.0.tgz(Helm Charts) |_ _ _ _ _ _ ocstub-go-image-1.1.0.tar (Docker Images)
- The user can copy the tar file from here to their Kubernetes cluster where, they want to deploy ATS.
Deploying ATS in Kubernetes Cluster
- Execute the following command to extract the tar
file content:
tar -xvf ocats-policy-tools-1.7.4.0.0.tgz
The output of this command is:ocats-policy-pkg-1.7.4.0.0.tgz ocstub-pkg-1.7.4.0.0.tgz
- Go to the
ocats-policy-tools-1.7.4.0.0
folder and execute the following command to extract the final helm charts and docker images of ATS.tar -xvf ocats-policy-pkg-1.7.4.0.0.tgz
The output of this command is:
ocats-policy-1.7.4.tgz ocats-policy-image-1.7.4.tar
- In your cluster, execute the given command to load
the ATS image.
docker load --input ocats-policy-image-1.7.4.tar
- Execute the following commands to tag and push the ATS
images
docker tag ocatspolicy:1.7.4 <registry>/ocatspolicy:1.7.4 docker push <registry>/ocatspolicy:1.7.4
Example:
docker tag ocats-policy-images:1.7.4 localhost:5000/ocats-policy-images:1.7.4 docker push localhost:5000/ocats-policy-images:1.7.4
- Untar the helm charts,
ocats-policy-1.7.4.tgz
tar -xvf ocats-policy-1.7.4.tgz
- Update the registry name, image
name and tag in the
ocats-policy/values.yaml
file as required.For this, you need to open the
values.yaml
file and update theimage.repository
andimage.tag
- ATS supports static port. By default, this feature is not
available. To enable this feature:
- In the ocats-policy/values.yaml file under service section, set the value of staticNodePortEnabled parameter as true and provide a valid nodePort value for staticNodePort.
- A sample screen is given below:
Figure 2-7 ocats-policy/values.yaml-service section
- To enable service mesh feature:
- Under the service section of the values.yaml file,
there is a parameter, 'serviceMeshCheck'. By default, this
feature is set to false. To get ASM support, set this
parameter to true. A snippet of service section in the yaml
file is shown below:
Figure 2-8 Service Mesh Check Enabled
- If you do not enable ASM at global level for the namespace, then
execute the following command to enable it before deploying the
ATS.
kubectl label --overwrite namespace <namespace_name> istio-injection=enabled
Example:
kubectl label --overwrite namespace ocpcf istio-injection=enabled
- Under the service section of the values.yaml file,
there is a parameter, 'serviceMeshCheck'. By default, this
feature is set to false. To get ASM support, set this
parameter to true. A snippet of service section in the yaml
file is shown below:
- Deploy ATS using the updated helm charts (refer to
step 5 for helm
charts).
Note:
You need to ensure that all the three components ATS, Stub and PCF are deployed in the same namespace.Using Helm 2
helm install ocats-policy --name <release_name> --namespace <namespace_name> -f ocats-policy/values.yaml
Example:
Using Helm 3helm install ocats-policy --name ocats --namespace ocpcf -f ocats-policy/values.yaml
helm3 install -name <release_name> ocats-policy-1.7.4.tgz --namespace <namespace_name> -f <values-yaml-file>
Example:
helm3 install -name ocats ocats-policy-1.7.4.tgz --namespace ocpcf -f ocats-policy/values.yaml
- Execute the following command to
verify ATS deployment.
helm status <release_name>
Figure 2-9 Verifying ATS Deployment in Policy Namespace

Deploying Stub Pod in Kubernetes Cluster
To deploy Stub Pod in Kubernetes cluster:
- Go to the
ocats-policy-tools-1.7.4.0.0
folder and execute the command to extract the ocstub tar file content.tar -xvf ocstub-pkg-1.1.0.0.0.tgz
The output of this command is:
ocstub-go-1.1.0.tgz
ocstub-go-images-1.1.0.tar
- In your cluster, execute the following command to
load the STUB image and then, push it to your registry.
docker load --input ocstub-go-image-1.1.0.tar
- Untar the helm charts,
ocstub-go-1.1.0.tgz
.tar -xvf ocstub-go-1.1.0.tgz
- Update the registry name, image name and tag (if
required) in the
ocstub-go/values.yaml
file as required.Open the values.yaml file and update the
image.repository
andimage.tag
- If required, change the
apiVersion
toapps/v1
in the ocstub-go/templates/deployment.yaml file as shown below.apiVersion: apps/v1
- Deploy Stub.
Using Helm 2:
helm install ocstub-go --set service.name=<service> --name <name> --namespace <namespace_name> -f ocstub-go/values.yaml
Example:helm install ocstub-go --set service.name=nf1stub --name nf1stub --namespace ocats -f ocstub-go/values.yaml helm install ocstub-go --set service.name=nf2stub --name nf2stub --namespace ocats -f ocstub-go/values.yaml helm install ocstub-go --set service.name=nf3stub --name nf3stub --namespace ocats -f ocstub-go/values.yaml
Using Helm 3:
helm3 install -name <release_name> ocstub-go-1.1.0.tgz --set service.name=<stub-service-name> --namespace <namespace_name> -f <valuesyaml-file>
Example:helm3 install -name nf1stub ocstub-go-1.1.0.tgz --set service.name=nf1stub --namespace ocats -f ocstub-go/values.yaml helm3 install -name nf2stub ocstub-go-1.1.0.tgz --set service.name=nf2stub --namespace ocats -f ocstub-go/values.yaml helm3 install -name nf3stub ocstub-go-1.1.0.tgz --set service.name=nf3stub --namespace ocats -f ocstub-go/values.yaml
Figure 2-10 Stub - Checking Helm Status
- Similarly, execute the following commands to
install all the stubs.
helm install ocstub-go --set service.name=nf2stub --name nf2stub --namespace ocats -f ocstub-go/values.yaml
helm install ocstub-go --set service.name=nf3stub --name nf3stub --namespace ocats -f ocstub-go/values.yaml
- Execute the following command to check the Stub
deployment.
helm status <release_name>
A sample screen showing stubs deployment is given below:
Figure 2-11 Stubs After Installation

Figure 2-12 Policy Namespace

SCP ATS Installation Procedure
The SCP ATS installation procedure covers two steps:
- Locating and downloading the ATS images.
- Deploying ATS images.
Locating and Downloading ATS Images
The steps to locate and download ATS Images are as follows:
- Login to My Oracle Support using the appropriate credentials.
- Select Patches & Updates tab.
- In the Patch Search console, select Product or Family (Advanced) tab.
- Enter Oracle Communications Cloud Native Core - 5G in Product field and select the product from the Product drop-down.
- Select Oracle Communications Cloud Native Core Service Communication Proxy <release_number> in Release field.
- Click Search. The Patch Advanced Search Results list appears.
- Select the required ATS patch from the list. The Patch Details window appears.
- Click Download. The File Download window appears.
- Click the <p********_<release_number>_Tekelec>.zip file.
- Extract the ATS release package zip file to download the ATS images to the system where network function must be installed.
- The
ocats-scp
directory has following files:ocats-scp-pkg-1.7.3.0.0.tgz ocats-scp-pkg-1.7.3.0.0-README.txt ocats-scp-custom-configtemplates-1.7.3.0.0.zip ocats-scp-custom-configtemplates-1.7.3.0.0-readme.txt
Note:
Theocats-scp-pkg-1.7.3.0.0-README.txt
file contains all the information required for the package.Theocats-scp-pkg-1.7.3.0.0.tgz
file has following images and charts packaged as tar files:ocats-scp-pkg-1.7.3.0.0.tgz | |_ _ _ocats-scp-pkg-1.7.3.0.0.tgz | |_ _ _ _ _ _ ocats-scp-1.7.3.tgz (Helm Charts) | |_ _ _ _ _ _ ocats-scp-images-1.7.3.tar (Docker Images) | |_ _ _ _ _ _ Readme-internal.txt
Theocats-scp-custom-configtemplates-1.7.3.0.0.zip
file has following images and charts packaged as tar files:ocats-scp-custom-configtemplates-1.7.3.0.0.zip |_ _ _ _ _ _ ocats-scp-custom-serviceaccount-1.7.3.yaml (Template to create custom service account) |_ _ _ _ _ _ ocats_scp_values_1.7.3.yaml (Custom values file for installation)
The user can copy the tar file from here to their kubernetes cluster where, they want to deploy ATS.
Deploying ATS in Kuberbetes Cluster
Note:
Deploy ATS and SCP in the same namespace.Note:
ATS is deployed with role binding by default instead of cluster role binding.- Execute the following command to
extract the tar file content.
tar -xvf ocats-scp-pkg-1.7.3.0.0.tgz
The output of this command is:ocats-scp-1.7.3.tgz ocats-scp-images-1.7.3.tar Readme-internal.txt
The
ocats-scp-images-1.7.3.tar
file contains ocats-scp:1.7.3 (ATS Image) and ocats-gostub:1.7.3 (stub image). - In your cluster, execute the given command to load the ATS image
and then, push it to your registry.
docker load --input ocats-scp-images-1.7.3.tar
- Execute the following command to extract the zip file
content.
Unzip "ocats-scp-custom-configtemplates-1.7.3.0.0.zip"
The output of this command is:ocats_scp_values_1.7.3.yaml ocats-scp-custom-serviceaccount-1.7.3.yaml
- Update the image name and tag in the
ocats_scp_values_1.7.3.yaml file as required.
For this, you need to open the
ocats_scp_values_1.7.3.yaml
file and update theimage.repository
andimage.tag
- ATS supports static port. By default, this feature is not
available. To enable this feature:
- In the ocats_scp_values_1.7.3.yaml file under service section, set the value of staticNodePortEnabled parameter as true and provide a valid nodePort value for staticNodePort.
- A sample screen is given below:
Figure 2-13 ocats_scp_values_1.7.3.yaml - service section
Note:
You can enable static node port at the time of deployment.
- The lbDeployments section of the helm deployment file in SCP ATS is
updated with following annotations, wherein
- 8080 port is added to open ATS Jenkins
GUI
traffic.sidecar.istio.io/excludeInboundPorts: "8080"
- 8091 port is added to fetch soothsayer pod
metrics
traffic.sidecar.istio.io/excludeOutboundPorts: "8091"
Note:
THE ATS USER SHOULD NOT MODIFY THESE PORTS.
- 8080 port is added to open ATS Jenkins
GUI
- Execute the following command to
deploy ATS.
Using Helm 2:
helm2 install ocats-scp-1.7.3.tgz --name <release_name> --namespace <namespace_name> -f ocats_scp_values_1.7.3.yaml
Example:
helm2 install ocats-scp-1.7.3.tgz --name ocats-scp --namespace scpsvc-f ocats_scp_values_1.7.3.yaml
Using Helm 3:
helm3 install <release_name> ocats-scp-1.7.3.tgz -n <namespace_name> -f ocats_scp_values_1.7.3.yaml
Example:
helm3 install ocscp-ats ocats-scp-1.7.3.tgz -n scpsvc -f ocats_scp_values_1.7.3.yaml
Note:
If you have two Helm versions on your system then, you have to specify version number in the Helm commands you are executing. If there is only one Helm version then there is no need to mention version number. - Verify ATS deployment by executing
the given command.
helm3 status <release_name> -n <namespace_name>
Figure 2-14 Helm Status Image
SLF ATS Installation Procedure
The SLF ATS installation procedure covers two steps:
- Locating and downloading the ATS images.
- Deploying ATS images.
Locating and Downloading ATS Images
The steps to locate and download ATS Images are as follows:
- Login to My Oracle Support using the appropriate credentials.
- Select Patches & Updates tab.
- In the Patch Search console, select Product or Family (Advanced) tab.
- Enter Oracle Communications Cloud Native Core - 5G in Product field and select the product from the Product drop-down.
- Select Oracle Communications Cloud Native Core Unified Data Repository <release_number> in Release field.
- Click Search. The Patch Advanced Search Results list appears.
- Select the required ATS patch from the list. The Patch Details window appears.
- Click Download. The File Download window appears.
- Click the <p********_<release_number>_Tekelec>.zip file.
- Extract the ATS release package zip file to download the ATS images to the system where network function must be installed.
- The
ocats_slf
directory has following files:ocats-slf-pkg-1.7.1.0.0.tgz |_ _ _ _ _ _ ocats-slf-1.7.1.tgz (Helm Charts) |_ _ _ _ _ _ ocats-slf-images-1.7.1.tar (Docker Images)
The user can copy the tar file from here to their kubernetes cluster where they want to deploy ATS.
Preparing to Deploy ATS in Kuberbetes Cluster
Note:
Deploy ATS and SLF in the same namespace.- Execute the following command to
extract the tar file content.
tar -xvf ocats-slf-pkg-1.7.1.0.0.tgz
The output of this command is:ocats-slf-1.7.1.tgz ocats-slf-images-1.7.1.tar
The
ocats-slf-images-1.7.1.tar
file contains ocats-slf-images-1.7.1 (ATS Image). - In your cluster, execute the given command to load the ATS
image.
docker load --input ocats-slf-images-1.7.1.tar
- Execute the following command to tag and push the ATS image to
your
registry.
docker tag ocats-slf-images-1.7.1:1.7.1 <registry>/ocats-slf-images-1.7.1:1.7.1 docker push <registry>/ocats-slf-images-1.7.1:1.7.1
Example:docker tag ocats-slf-images-1.7.1:1.7.1 localhost:5000/ocats-slf-images-1.7.1:1.7.1 docker push localhost:5000/ocats-slf-images-1.7.1:1.7.1
- Execute the following command to untar the helm charts
(ocats-slf-1.7.1.tgz) and update the registry name, image name and tag (if
required) in the ocats-slf/values.yaml file.
tar -xvf ocats-slf-1.7.1.tgz
The list of content in ocats-slf is:ocats-slf ├── Chart.yaml ├── destination-rule-ats.yaml ├── policy.yaml ├── templates │ ├── deployment.yaml │ ├── _helpers.tpl │ ├── ingress.yaml │ ├── NOTES.txt │ ├── serviceaccount.yaml │ └── service.yaml └── values.yaml
- ATS supports static port. By default, this feature is not
available. To enable this feature:
- In the ocats-slf/values.yaml file under service
section, add the staticNodePortEnabled parameter as true and
staticNodePort parameter with valid nodePort value. A
sample screen is given below:
Figure 2-15 ocats-slf/values.yaml - service section
- In the ocats-slf/values.yaml file under service
section, add the staticNodePortEnabled parameter as true and
staticNodePort parameter with valid nodePort value. A
sample screen is given below:
Enabling Service Mesh at Namespace Level
Note:
This section is applicable only if you are planning to deploy ATS on service mesh enabled system.Execute the following command to enable service mesh at the namespace level.
kubectl label --overwrite namespace <namespace_name>
istio-injection=enabled
Example:
kubectl label --overwrite namespace ocudr
istio-injection=enabled
Deploying ATS Pod in Kubernetes Cluster
You can deploy ATS Pod in Kubernetes cluster using Helm 2 or Helm 3 commands.
Using Helm 2
Execute the following command to deploy ATS.
helm install --name <release_name> --namespace
<namespace_name> -f <values-yaml-file> ocats-slf
Example:
helm install --name ocats-slf --namespace ocudr -f ocats-slf/values.yaml
ocats-slf
Using Helm 3
Execute the following command to deploy ATS.
helm3 install -name <release_name> --namespace
<namespace_name> -f <values-yaml-file> ocats-slf
Example:
helm3 install -name ocats-slf --namespace ocudr -f ocats-slf/values.yaml
ocats-slf
To verify ATS deployment, execute the following command:
helm status
<release_name>
Figure 2-16 Verifying ATS Deployment

Figure 2-17 ATS and SLF Deployed in Same Namespace

Figure 2-18 ATS Deployed with Side Car of Service Mesh

Creating a Policy and Destination Rule
Following steps to create a policy are applicable only if a service mesh is enabled at the namespace level:
- Edit the policy.yaml file as follows:
- Change the spec.targets.name to ocats-slf svc name.
- Change the namespace in which ocats-slf is deployed.
The policy.yaml file snippet is given below:
apiVersion: "authentication.istio.io/v1alpha1" kind: Policy metadata: name: ocats-slf namespace: myudr spec: targets: - name: ocats-slf peers: - mtls: mode: PERMISSIVE
- Execute the following command to create a policy:
kubectl create -f policy.yaml
Output:
policy.authentication.istio.io/ocats-slf
is created.
- If Service Mesh check is enabled, you need to create a
destination rule to fetch the metrics from the Prometheus. This is so
because in most of the deployments, Prometheus is kept outside of the
service mesh and a destination rule is required to communicate between TLS
enabled entity (ATS) and non-TLS entity (Prometheus). To create a
destination
rule:
kubectl apply -f - <<EOF apiVersion:networking.istio.io/v1alpha3 kind:DestinationRule metadata: name:prometheus-dr namespace:myudr spec: host:oso-prometheus-server.myudr.svc.cluster.local trafficPolicy: tls: mode:DISABLE EOF
In the above rule,- name indicates the name of destination rule.
- namespace indicates where the ATS (ocats-slf) is deployed.
- host indicates the hostname of the prometheus server. Change the spec.host value to fqdn of Prometheus server.
- Execute the following command to create a policy:
kubectl create -f destination-rule-ats.yaml
Output:
destinationrule.networking.istio.io/ocats-slf-dr
is created.