2 Planning Your Installation

The Oracle Communications Offline Mediation Controller cloud native deployment package includes Docker images and Helm charts to help you deploy and manage pods of product services in Kubernetes.

Overview

The Offline Mediation Controller cloud native deployment package includes ready-to-use images and Helm charts to help you orchestrate containers in Kubernetes. The package also includes sample Dockerfiles and scripts if you want to build the images in your environment.

You can use the Docker images and Helm chart to help you deploy and manage pods of Offline Mediation Controller product services in Kubernetes. Communication between pods of services of Offline Mediation Controller products are preconfigured in the Helm charts.

Table 2-1 lists the pods and images for Offline Mediation Controller whose containers are created and services are exposed through them. For the image name, replace 12.0.0.x.0 with the patch set version number, such as 12.0.0.6.0.

Table 2-1 Offline Mediation Controller Pods and Images

Pod Replica Type Image Name Container Port

admin-server-app-58dbd45d58-9vqll

Single

oc-cn-ocomc:12.0.0.x.0

55105

node-mgr-app-5577bbb854-76rx4

Single

oc-cn-ocomc:12.0.0.x.0

55109

Table 2-2 lists the services for Offline Mediation Controller.

Table 2-2 Offline Mediation Controller Services

Service Service Type Port Notes

admin-server-app

ClusterIP

55105

Client on same worker node

node-mgr-app

ClusterIP

55109

Client on same worker node

admin-server-app-external

NodePort

External port

Client on Windows system

node-mgr-app-external

NodePort

External port

Client on Windows system

To connect to the Administration Server running in a Kubernetes cluster, you must install the Administration Client outside of the Kubernetes cluster and then connect it to the service and port of the Administration Server.

  • If the Administration Client is installed on the same node where the Administration Server pod is running, use a clusterIP service type with the Administration Server.

  • If the Administration Client is located remotely or is on a Windows system, use a NodePort service type with the Administration Server.

For more information about connecting the Administration Client, see "Connecting Your Administration Client".

Software Compatibility

For the full list of software that is compatible with:

Environment Setup

The Offline Mediation Controller cloud native deployment package works with these technologies:

  • Docker: The Docker platform is used to containerize Offline Mediation Controller products. Docker is needed if you want to build images by writing your own Dockerfiles using the sample Dockerfiles from the Offline Mediation Controller cloud native deployment package. You use the Docker container runtime to create and run containers of these images in Kubernetes. You also host a repository for storing the images, which can later be accessed by Kubernetes for creating pods.

    For more information about Docker, see Reference Docker (https://docs.docker.com/reference/).

  • Kubernetes: Typically, a production-grade Kubernetes cluster is formed by multiple systems distributing the resources. Being a container platform, it provides a container-centric management environment. The cloud native deployment package contains YAML descriptors for creating Kubernetes objects and for allowing it to orchestrate containers of images from Offline Mediation Controller products. Set up the Kubernetes cluster and secure access to the cluster and its objects with the help of service accounts and proper authentication and authorization modules. Also, choose volumes, a networking model, and logging services to be used in your cluster.

    For more information about Kubernetes, see Kubernetes Concepts (https://kubernetes.io/docs/concepts/).

    Note:

    Ensure that your cluster is secured according to standard DevOps practices.
    • Volumes: A container’s file system lives only as long as the container does. When a container terminates and restarts, file system changes are lost as well. You shouldn't access the container file system or pods frequently, and it's not easy to share data between container and host systems. Volumes appear as a directory in the container file system and provide a way to share data. The Offline Mediation Controller cloud native deployment package uses persistent volumes for sharing data in and out of containers, but doesn't enforce any particular type. You can choose from the volume type options available in Kubernetes.

      Note:

      You can choose an external incubator to create persistent volumes, but ensure that it supports the ReadWriteMany access mode and PVC sharing between pods.
    • Networking: Kubernetes assumes that pods can communicate with other pods, regardless of which host they land on. Every pod gets its own IP address, so we don't need to explicitly create a link between pods. We almost never need to deal with mapping container ports to host ports. While Kubernetes itself doesn't offer a solution to support its assumption, several implementations are available that meet the fundamental requirements of Kubernetes’ networking model. Choose the networking element depending on the cluster requirement.

  • Fluentd: Fluentd forms your logging layer, collecting log files from your Offline Mediation Controller service pods and transforming them. The Fluentd-concat plugin is used to concatenate multiline log files. You set up Fluentd on your Kubernetes nodes. To allow Fluentd to parse your log files, all applications should redirect their logs to STDOUT.

    For more information about Fluentd, see Fluentd Overview (https://docs.fluentd.org/quickstart).

  • Helm: Helm is the package manager for Kubernetes, and chart is a Helm package. Charts, which are packaged as part of the Offline Mediation Controller cloud native deployment package, help create Kubernetes objects like ConfigMap, Secrets, controller sets, and pods with a single command. This feature of Helm makes it easy to handle all Offline Mediation Controller configurations, deployments, and services.

    For more information about Helm, see Helm Introduction to Helm (https://helm.sh/docs/using_helm/).

  • Oracle Database: An Oracle database must be installed and accessible through the Kubernetes network, so that the pods can perform database operations. It can be either a CDB or a non-CDB.

Prepare your environment with these technologies installed, configured, and tuned for performance, networking, security, and high-availability. Make sure there are backup nodes available in case of system failure in any of the cluster's active nodes.

Moving from On-Premise Offline Mediation Controller to Offline Mediation Controller Cloud Native Deployment

If you're an existing Offline Mediation Controller customer on release 6.0 or release 12.0, you can move to the Offline Mediation Controller cloud native deployment. To do so, layer any customizations you made to Offline Mediation Controller on top of the Docker images provided with this release before deploying the images.

Downloading the Offline Mediation Controller Cloud Native Deployment Package

The Offline Mediation Controller cloud native deployment package contains ready-to-use Docker images, a Helm package for deployment in Kubernetes, as well as sample Dockerfiles and scripts that you can use as a reference for building your own images. If you want to build your own images, you must also download the Oracle Communications Offline Mediation Controller installer (OCOMC-12.0.0.x.0_generic_full.jar).

Note:

If you want to integrate Offline Mediation Controller with Elastic Charging Engine (ECE) and the Billing and Revenue Management (BRM) cloud native deployment package, set up the ECE and BRM cloud native deployment prior to setting up Offline Mediation Controller. See BRM Cloud Native Deployment Guide.

Table 2-3 lists all of the component packages that are included with the Offline Mediation Controller cloud native deployment package.

Table 2-3 Offline Mediation Controller Component Packages

Component Package Name File Name

Oracle Communications Offline Mediation Controller Image

oc-cn-ocomc-12.0.0.x.0.tar

Oracle Communications Cloud Native Docker Build Files

oc-cn-ocomc-docker-files-12.0.0.x.0.tgz

Oracle Communications Cloud Native Offline Mediation Controller Helm Chart

oc-cn-ocomc-helm-chart-12.0.0.x.0.tgz