Planning Your Installation

Before installing UDR, perform the following pre-installation tasks:

  • Checking the software requirements
  • Checking the environment setup
Checking the Software Requirements

Before installing Unified Data Repository (UDR), install the following softwares on your system.

Software Version
Kubernetes v1.13.3
HELM v2.12.3

Additional softwares that needs to be deployed as per the requirement of the services are:

Software Version Notes
elasticsearch 1.21.1 Needed for Logging Area
elastic-curator 1.2.1 Needed for Logging Area
elastic-exporter 1.1.2 Needed for Logging Area
logs 2.0.7 Needed for Logging Area
kibana 1.5.2 Needed for Logging Area
grafana 2.2.0 Needed for Metrics Area
prometheus 8.8.0 Needed for Metrics Area
prometheus-node-exporter 1.3.0 Needed for Metrics Area
metallb 0.8.4 Needed for External IP
metrics-server 2.4.0 Needed for Metric Server
tracer 0.8.3 Needed for Tracing Area

Note:

The above softwares are available in the Oracle Communications Cloud Native Environment (OCCNE). If you are deploying UDR in any other environment, then the above softwares must be installed before installing UDR.

To check the installed software items, execute the following command:

helm ls

Some systems may need to use helm command with admin.conf file as follows:

helm --kubeconfig admin.conf

Note:

Some of the above mentioned software(s) are updated frequently. Their later versions than those listed above should work with UDR 1.6. Some UDR features and services work differently depending on the software being used
.
Checking the Environment Setup

Before installing UDR, the system environment should have the following:

  • Access to OpenStack Environment: User should have access to an existing OpenStack environment including the OpenStack Desktop. This environment is configured with appropriate resource flavors and network resources that allows its users to allocate resources to the virtual machines created via this procedure.
  • Availability of a pub key: Users must have a pub key for logging into the Bootstrap Host. This key should be placed into the customer OpenStack Environment using Import Key tab on the Launch Instance→Key Pair dialog or via the Compute→Access and Security.
  • OCUDR Software: User must install Kubernetes v1.13.3 and HELM v2.12.3. UDR consists of:
    • Helm Charts that reflect the OCUDR software version. It is a zipped tar file that you need to unzip.
    • Docker images of the micro-services that are shared as tar file. You need to untar it.

    Note:

    For more details about OCUDR Software, see Checking the Software Requirements.
  • Create Database User/Group: The Database administrator should create a user in the MYSQL DB using MySQL NDB cluster. UDR uses an NDB MySQL database to store the subscriber information. NDB MySQL database provides HA and geo-redundancy capabilities.
    The database administrator should also provide user with necessary permissions to access the tables in the NDB cluster. The steps to create a user and assign permissions are as follows:
    1. Login to the server where the ssh keys are stored and SQL nodes are accessible.
    2. Connect to the SQL nodes.
    3. Login to the Database as a root user.
    4. Create a user on all sql nodes and assign it to a group having necessary permissions to access the tables on all sql nodes. Also, create a database on only one sql node.
      CREATE USER '<username>'@'%' IDENTIFIED BY
      '<password>';
      DROP DATABASE if exists <db_name>;
      CREATE DATABASE <db_name> CHARACTER SET utf8;
      GRANT SELECT, INSERT, CREATE, ALTER, DROP, LOCK TABLES, CREATE
      TEMPORARY TABLES, DELETE, UPDATE,EXECUTE ON <db_name>.* TO
      '<username>'@'%';
      USE <db_name>;

      Note:

      You need this database name, username and password at the time of creating K8s secrets.
  • Network Access: The Kubernetes cluster hosts must have network access to:
    • Local docker image repository where the Oracle Communications Unified Data Repository images are available.

      To check if the Kubernetes cluster hosts has network access to the local docker image repository, try to pull any image with tag name to check connectivity by executing:

      docker pull <docker-repo>/<image-name>:<image-tag>

    • Local helm repository where the Oracle Communications Unified Data Repository helm charts are available.

      To check if the Kubernetes cluster hosts has network access to the local helm repository, execute:

      helm repo update

      Note:

      Some of the systems may need to use helm command with helm --kubeconfig admin.conf

      Note:

      All the kubectl and helm commands (used in this document) must be executed on a system depending on the infrastructure of the deployment. It can be any client machine like virtual machine, server, local desktop and so on.
  • Laptop/Desktop Client Software: A laptop/desktop where the user executes deployment commands should have:
    • Network access to the helm repository and docker image repository
    • Configuration of Helm repository on the client
    • Network access to the Kubernetes cluster
    • Necessary environment settings to run the kubectl commands. The environment should have privileges to create namespace in the Kubernetes cluster.
    • Helm client installed with the push plugin. The environment should be configured so that the 'helm install' command deploys the software in the Kubernetes cluster.

    Note:

    All the kubectl and helm commands (used in this document) must be executed on a system depending on the infrastructure of the deployment. It can be any client machine like virtual machine, server, local desktop and so on.