Installation on Kubernetes Cluster or Appliance

Step 1 – Download the install package and other dependencies

Download the install package on a node, which has access to the Kubernetes cluster and the Docker registry (public or private). Un-archive the contents of the package:

tar –xvf nirmata-pe-k8s-installer.tgz

You will also need to download and install the following:

Step 2 – Push Nirmata images to your Private Docker Registry

The next step involves pushing Nirmata container images into your private Docker registry. This step is optional and should be required only in case you do not have access to the external Docker registry from your Kubernetes cluster. Nirmata container images are available on Docker Hub. These images will be downloaded and pushed into a repository called “nirmata” in your registry.

  1. Go to the install directory in the Nirmata installer folder and edit the update-registry-images.sh script
  2. Update the following fields with correct values: a. TARGET_REGISTRY: IP address or DNS name of your Docker private registry
  3. Ensure that the SOURCE_TAG and TARGET_TAG are the same
  4. Execute the installer command: :

    update-registry-images.sh
    

It may take some time to transfer all the images. The time taken will vary based on your network speed.

Step 3 – Customize deployment settings

Next, we need to customize the deployment settings for your environment as follows:

  1. For shared services settings, edit the file yaml/shared-services-values.yaml
  2. For nirmata services settings, edit the file yaml/nirmata-services-values.yaml
  3. Ensure that all the required fields have been updated
  4. You will also need to provide base64 encoded certificate and key for the front-end proxy service (nginx)
Step 4 – Install Shared Services

Once all the deployment settings have been added, you can start the installation of the shared services In the install folder, run the shared services install script:

install-shared-services.sh

It may take a few minutes to complete the installation.

Check if all the pods were installed correctly:

kubectl get pods -n nirmata-shared

Note: Sometimes it may take a few minutes for the zookeeper cluster to be formed. Use this command on each zookeeper pod to check if the zookeeper cluster is formed:

kubectl exec  zookeeper-2 -n nirmata-shared bin/zkServer.sh status

You should see:

Using config: /opt/zookeeper-3.5.1/bin/../conf/zoo.cfg
Client port not found in static config file. Looking in dynamic config file.
Client port found: 2181. Client address: zookeeper-2.zookeeper.nirmata-shared.
Mode: leader
Step 5 – Install Nirmata Services

Once all the shared services are running, you can start the installation of the nirmata services

In the install folder, run the nirmata services install script:

install-nirmata-services.sh

It may take a few minutes to complete the installation.

Check if all the pods were installed correctly:

kubectl get pods -n nirmata-services

Note: The nginx pods may restart a few times as other services are coming up. Once all the services are up and running, nginx pod should be running as well

Step 6 – Log in to Nirmata

You can login to Nirmata using the URL, the email and password you have specified in the installation script (NIRMATA_URL, USER_EMAIL, USER_PASSWORD).

Step 7 – Add the license

Once you log in to Nirmata, go to Account->Settings and update the license key. Once a valid license key is added, you will no longer see the ‘Trial’ message.