NSSF Installation

This section includes information about NSSF deployment.

Following are the Parameters and Definitions used during NSSF deployment.

Table 5-1 Parameters and Definitions

Parameters Definitions
<helm chart> It is the name of the chart that is of the form <helm repo>/ocnssf
<OCNSSF version> It is the software version (helm chart version) of the NSSF. This is optional, if omitted, the default version is the latest version available in helm repository.
<release> It is a name provided by the user to identify the helm deployment
<k8s namespace> It is a name provided by the user to identify the kubernetes namespace of the NSSF. All the NSSF micro services are deployed in this kubernetes namespace.
<mysql host> It is the hostname of the mysql service and can be provided as, <release>-mysql.<k8s namespace>

NSSF Deployment on Kubernetes

Note:

Create Database User/Group

The NSSF uses a MySQL database to store the configuration and run time data.

The NSSF deployment using MySQL NDB cluster requires the database administrator to create a user in the MYSQL DB and to provide the user with necessary permissions to access the tables in the NDB cluster.

  1. Login to the server where the ssh keys are stored and the SQL nodes are accessible.
  2. Connect to the SQL nodes.
  3. Login to the Database as a root user.
  4. Create a user and assign it to a group having necessary permission to access the tables on all the SQL nodes:
    CREATE USER '<username>'@'%' IDENTIFIED BY '<password>';
    DROP DATABASE if exists nssfdb;
    CREATE DATABASE nssfdb CHARACTER SET utf8;
    GRANT SELECT, INSERT, CREATE, ALTER, DROP, LOCK TABLES, CREATE TEMPORARY
    TABLES, DELETE, UPDATE,
    EXECUTE ON nssfdb.* TO '<username>'@'%';
    USE nssfdb;
    

    Note:

    The <username> and <password> is created by the Database Administrator.
  5. Exit from database and logout from SQL node.

Table 5-2 NSSF Deployment

Step # Procedure Description

1

Create customized ocnssf-custom-values-1.2.0.yaml file Create the customized ocnssf-custom-values-1.2.0.yaml with the required input parameters.

To configure the ocnssf-custom-values-1.2.0.yaml, see section NSSF Configuration

or,

The ocnssf-custom-values-1.2.0.yaml template can be downloaded from OHC.

Download the package ocnssf-custom-configTemplates-1.2.0.0.0.zip and Unzip to get ocnssf-custom-values-1.2.0.yaml file.

2

Deploy OCNSSF Execute the following command:

helm install ocnssf/ --version <chart-version> --name <helm-release> --namespace <k8s namespace> -f <ocnssf_customized_values.yaml>

For example:

helm install ocnssf/ --version 1.2.0 --name ocnssf --namespace ocnssf -f nssf-values-1.2.0.yaml

3

Check status of the deployment helm status <helm-release>

For example: helm status ocnssf

4

Check status of the services Execute the following command:

kubectl get services -n <namespace>

For example:

kubectl get services -n ocnssf

Note: If metallb is used, EXTERNAL-IP is assigned to ocnssf-nsgateway.

5

Check status of the pods Execute the following command:

kubectl get pods -n <ocnssf_namespace>

Status column of all the pods should indicate 'Running'.

Ready column of all the pods should be n/n, where n is number of containers in the pod.

For example:

kubectl get pods -n ocnssf