Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

title
Excerpt
Note

Note!

See Bootstrapping System Certificates and Secrets - Private Cloud(3.0) before starting the installation.

There is also a usage-engine-private-edition-ecd helm chart available to install if you

don't

do not want to create

it through the Web UI

the ECDs in the web interface.

  1. Verify the installation.

Excerpt

General Information

After the installation you will get a number of pods and a crd, function and purpose are explained in the table:

pod

unique-id

Purpose

Installed with Helm chart:

mz-operator-controller-manager

Yes


usage-engine-private-edition

mzonline

Yes

Web interface

usage-engine-private-edition

platform

No

Platform

usage-engine-private-edition

wd

Yes

Web Desktop interface

usage-engine-private-edition

crd




ecdeployments.mz.digitalroute.com

N/A

Custom Resource Definition

usage-engine-private-edition

Note

 The The crd ecdeployments.mz.digitalroute.com is installed with helm install below. For detailed information on how helm handle Custom Resource Definitions see:
https://helm.sh/docs/chart_best_practices/custom_resource_definitions/

Installing Usage Engine

To install:

  1. Validate the Helm Chart Contents

    To ensure there are no errors in the Helm chart content, you can run the following:

    Code Block
    $ helm lint usage-engine-private-edition 

    You can also run the helm template chart to see the yaml files with modified values:

    Code Block
    $ helm template usage-engine-private-edition 
  2. Install  all pods. Use the

License Key from
  1. License Key and

Helm Chart (2.2) and
  1. set image pull secret

(To create secret
  1. , see Preparations

)
  1. .
    -  Use a suitable unique name for <release_platform> in the command below.

    Code Block
    $ helm install <release_platform>  usage-engine-private-edition --set-file licenseKey=<licensekey_file> --set "global.imagePullSecrets[0].name=<secret name>" --namespace <namespace>
    
    Example:
    $ helm install platform1 usage-engine-private-edition --set-file licenseKey=license_key --set "global.imagePullSecrets[0].name=ecr-cred" --namespace user1
    
    Note

    If you are running multiple Usage Engine installations on the cluster, in case the CRD or Nginx Ingressclass resource is already installed, then you should add the following to your helm command to avoid hitting a resource already exists error.

    --set mzOperator.installCRDs=false \

    --set ingress-nginx-v4.controller.ingressClassResource.enabled=false \

Note
Code Block
# Verify pods

$ kubectl get pods -n <namespace>

#Example
NAME                               READY   STATUS    RESTARTS   AGE
mz-operator-controller-manager-c7f6766c4-8z9wd   2/2     Running   0          154m
mz-operator-controller-manager-c7f6766c4-bl84f   2/2     Running   0          154m
mzonline-5984c4b844-nbpbr                        1/1     Running   0          154m
platform-0                                       1/1     Running   0          154m
wd-569bf5f746-s7pgd                              1/1     Running   0          154m

# Verify service contexts to connect

$ kubectl get services -n <namespace>

#Example
NAME                                             TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)                         AGE
mz-operator-controller-manager-metrics-service   ClusterIP   10.102.178.52   <none>        8443/TCP                        154m
mzonline                                         NodePort    10.100.195.106  <none>        80:31200/TCP (443:31300/TCP)    154m
platform                                         NodePort    10.111.174.222  <none>        9000:31600/TCP,6790:31700/TCP   154m
wd                                               NodePort    10.101.51.191   <none>        9999:31400/TCP                  154m

# Note that in the case you use TLS, the Web interface, mzonline port will be 443.

Note
titleNote!

The output for the ports when you run kubectl get services -n <namespace> are the ports that you must enter instead of ports 443, 9000, 6790, 80 and 9999 when you connect to the Desktop and/or MzOnline.

ImagePullBackOff errors

In case you see ImagePullBackOff errors when listing the pods, either you have not created  a pull secret or the pull secret is miss-configured.

Code Block
$ kubectl get pods -n <namespace>
#Example
NAME                                              READY   STATUS                  RESTARTS   AGE
mz-operator-controller-manager-6d48d9f7f6-7llrh   1/2     ImagePullBackOff        0          2m45s
mz-operator-controller-manager-6d48d9f7f6-cgp9j   1/2     ImagePullBackOff        0          2m45s
mzonline-5f974767b7-gpxnf                         0/1     ImagePullBackOff        0          2m45s
platform-0                                        0/1     Init:ImagePullBackOff   0          2m45s
wd-874c66c-5k8rf                                  0/1     ImagePullBackOff        0          2m45s

User Interfaces

Basic Below are some basic examples of how to define the User Interfaces below. For a more comprehensive guide, see: Starting and Managing Desktop (2.2)user interfaces below, see Desktop for more information

Web Desktop

To connect to the Web Desktop, go to http://<cluster node>:<NodePort>/auth. Define your cluster node and the NodePort number substitute for 9999, in the output example in of the kubectl get services above it is 31400. 

Info
title

Example - Web Desktop URL

Code Block
Enter this URL in a web browser. Use https if security is defined:

http://test-mz90-01.dev.drint.net:31400/auth

Desktop via Launcher

To deploy Desktop Launcher, you need to take the following steps:

  1. Prerequisite: Download and install java 11 on the PC that you will use the Desktop on. Both JRE and JDK work.

  2. Download the Usage Engine Desktop Launcher from: http://<cluster node>:<NodePort>/launch/desktop. Enter your cluster node and

the NodePort
  1. the NodePort number substitute for 9000, in the output example of "kubectl get services" above it is 31600.

Info
title

Example - Desktop Launcher URL

Code Block
Enter this URL in a web browser. Use https if security is defined:

http://test-mz90-01.dev.drint.net:31600/launch/desktop/
  1. To install the Desktop Launcher, for Windows, download the exe file and double-click to install it. Alternatively download the OS independent  jar file and use java -jar to install it.

Info
title

Example - Desktop Launcher via java -jar

Code Block
$ java -jar standard standard-mzx-launcher-1.1.4.jar
  1. Add an instance in the Desktop Launcher. Use the NodePort number substitute for 9000, in the output example in of "kubectl get services" above it is 31600.
    Image Modified

  2. The Platform RCP port is by default 6790, this needs to be changed. Click settings on the Desktop instance and update the pico.rcp.platform.port

to the
  1. to the NodePort number substitute for 6790, in the output example of "kubectl get services" above it is 31700.

Image Removed
  1. Image Added

Web Interface

To connect to the Web Interface, go to http://<cluster node>:<NodePort>, entering your cluster node and the NodePort. Use the NodePort number substitute for 80 (http) or 443 (https), in the output example of "kubectl get services" above it is 31200.

Info
title

Example - Web Interface URL

Code Block
Example. Enter this URL in a web browser. Use https if security is defined:

http://test-mz90-01.dev.drint.net:31200

Installation Configuration

The Installation guide is now complete. To get a system ready for production or testing purposes, you will need to define Configurations and ECDs using two methods available to you. These methods are described below:

  • Deploy real-time configurations

...

...

...

  • 0).
    Follow the step-by-step configuration options to configure the instance using the user interface. There are many examples available in the documentation.

  • Deploy solutions through CI/CD pipelines
    Use the Usage Engine Continuous Integration and Deployment (CI/CD) pipeline to automate building, testing, and deployment of use- and test cases.
    For more information, see: Continuous Integration and Deployment(

...

...

title
Note

Note!

If you are using Diameter refer to Diameter Handling in Kubernetes(3.0) to know how Diameter is handled when deployed in a Kubernetes cluster.