Page tree

Versions Compared


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


See Bootstrapping System Certificates and Secrets before starting the installation.

Installation of
Drx product name

  1. Create a namespace in which you want to install

    Drx product name

    Code Block
    $ kubectl create ns <namespace>


    If you plan to use the same EKS cluster to host multiple namespaces of

    Drx product name
    , you must enable the aws.namespace.enabled property in the values.yaml file before performing the installation. All subsequent installations of
    Drx product name
     in the same cluster must also have this property set to enable.

    When planning for multiple

    Drx product name
     installations in one EKS cluster, the following property must be set to enable for the installations to be successful. Insert the option below to the helm install command shown in step 4.

    Code Block
    --set aws.namespace.enabled=true

    Once enabled, the name given to your namespace will act as an identifier for the domain name and postgres.db name that will be installed.

    The domain name will have the namespace added into it, resulting in a name that looks like

    The namespace will also be applied as a suffix to the postgres.db value like so <postgres.db><namespace>.

    [hide] Space [/hide]

    Create secrets to be able to pull images from the

    Drx product name
     private Docker Hub repository.

    Code Block
    $ kubectl create secret -n <namespace> docker-registry dockerhub 

    [hide] Space [/hide]

  2. Run the following commands by replacing the placeholders with the values from the terraform output

    Place HolderValue from terraform output


    Follow as per the value configured in mz-eks.yaml

    Default is mz-eks


    Follow as per the value configured in mz-eks.yaml

    Default is eu-west-1




    db_endpoint without the “:port” part




    echo -n db_password | base64
    Where db_password is the value from the terraform output.



      [hide] Space [/hide]

  3. Install Platform, use the License Key file from License Key and Helm Chart[hide] AWS Terraform [/hide][hide]2.2[/hide]. This is an example of a minimal installation, you need all the parameters.
    -  Use a suitable unique name for <release_platform> in the command below.

    Code Block
    $ helm install <release_platform> ./usage-engine-private-edition --wait --timeout=5m \
    --set environment=aws \
    --set aws.cluster_name=<cluster_name> \
    --set aws.region=<region> \
    --set global.domain=<cluster_name>.<eks_domain_zone_name> \
    --set aws.acm_certificate="<certificate_arn>" \
    --set persistence.enabled=true \
    --set platform.tls.enabled=true \
    --set mzonline.ssl.enabled=false \
    --set ingress-nginx-v4.enabled=true \
    --set postgres.db=mz \
    --set platform.db.type=postgresql \
    --set postgres.adminUsername=<db_user> \
    --set postgres.adminPassword="<encrypted_admin_password>" \
    --set"<db_endpoint>" \
    --set-file licenseKey=<licenseKey_file> \
    --set debug.script.enabled=true \
    --namespace <namespace>


    If you are running multiple 

    Drx product name
    installations on the cluster, in case the CRD or Nginx Ingress class 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 \


    There is also a usage-engine-private-edition-ecd helm chart available to install if you don't want to create it through the Web UI.

    [hide] Space [/hide]
  4. Verify the installation.

    Code Block
    $ kubectl get all -n <namespace>
    efs-provisioner-7bf57d6fcd-22kp7                           1/1     Running   0          17h
    external-dns-86776cbff9-47pfc                              1/1     Running   0          17h
    <release_platform>-ingress-nginx-v4-controller-6b8679dfc8  1/1     Running   0          17h
    mz-operator-controller-manager-66648c48d9-m282f            2/2     Running   0          17h
    mz-operator-controller-manager-66648c48d9-wqphx            2/2     Running   0          17h
    mzonline-b56cbd899-vrp4p                                   1/1     Running   0          17h
    platform-0                                                 1/1     Running   0          17h
    wd-5cfcb6cbfc-lppxj                                        1/1     Running   0          17h
    NAME                                                    TYPE           CLUSTER-IP       EXTERNAL-IP                                                              PORT(S)                         AGE
    service/external-dns                                    ClusterIP      <none>                                                                   7979/TCP                        17h
    service/<release_platform>-ingress-nginx-v4-controller  NodePort   <none>                                                                   80:30963/TCP,443:31556/TCP      17h
    service/mz-operator-controller-manager-metrics-service  ClusterIP    <none>                                                                   8443/TCP                        17h
    service/mz-operator-controller-manager-service          ClusterIP   <none>                                                                   443/TCP                         17h
    service/mzonline                                        NodePort   <none>                                                                   80:31330/TCP,443:32378/TCP      17h
    service/platform                                        LoadBalancer   9000:32650/TCP,6790:30146/TCP   17h
    service/wd                                              NodePort   <none>                                                                   9999:32414/TCP                  17h
    NAME                                                            READY   UP-TO-DATE   AVAILABLE   AGE
    deployment.apps/aws-alb-ingress-controller                      1/1     1            1           17h
    deployment.apps/efs-provisioner                                 1/1     1            1           17h
    deployment.apps/external-dns                                    1/1     1            1           17h
    deployment.apps/<release_platform>-ingress-nginx-v4-controller  1/1     1            1           17h
    deployment.apps/mzonline                                        1/1     1            1           17h
    deployment.apps/wd                                              1/1     1            1           17h
    NAME                                                                       DESIRED   CURRENT   READY   AGE
    replicaset.apps/aws-alb-ingress-controller-7fc8f854b                       1         1         1       17h
    replicaset.apps/efs-provisioner-84cc87d7f9                                 1         1         1       17h
    replicaset.apps/external-dns-64f844469c                                    1         1         1       17h
    replicaset.apps/<release_platform>-ingress-nginx-v4-controller-7f8cc84675  1         1         1       17h
    replicaset.apps/mzonline-69b787d88                                         1         1         1       17h
    replicaset.apps/wd-5b9b64c5b9                                              1         1         1       17h
    NAME                                              READY   AGE
    statefulset.apps/mz-operator-controller-manager   1/1     17h
    statefulset.apps/platform                         1/1     17h

Accessing the Environment

Basic examples of how to define the User Interfaces below. For a more comprehensive guide, see: Starting and Managing Desktop[hide]2.2[/hide]

Code Block
Web Desktop: https://desktop.<domain>/

Web interface: https://mzonline.<domain>/

Platform: https://platform.<domain>:<mz.webserver.port>/

Connect to Desktop

How you connect to the Desktop client depends on if you want to use Desktop in Browser or the Desktop Launcher. Refer to the relevant section below. 

Web Desktop

titleExample - Web Desktop URL

Code Block
Example. Enter the URL in a web browser:

# Define connection type "desktop." before the <domain>, as indicated below:

Desktop Launcher

To deploy the Desktop Launcher, you need to do 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.

    [hide]New Line[/hide]

  2. Download the

    Drx product name
     Desktop Launcher from https://platform.<cluster node>:<mz.webserver.port>/launch/desktop. The port is by default 9000.

    titleExample - Desktop Launcher URL

    Code Block
    Example. Enter the URL in a web browser:
    # Define connection type "platform." before the <domain>, as indicated below:

    [hide]New Line[/hide]

  3. 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.

    titleExample - Desktop Launcher via java -jar

    Code Block
    $ java -jar standard standard-mzx-launcher-1.1.4.jar

    [hide]New Line[/hide]
  4. When you add an instance in the Desktop Launcher, set the Port to 9000. Host should begin with "platform." before the <domain>.

Connect to the Web Interface

titleExample - Webb Interface URL

Code Block
Example. Enter the URL in a web browser:

# Define connection type "mzonline." before the <domain>, as indicated below:

Define Configurations on the Installation

The Installation guide is now complete. To get a system ready for production or testing purposes, you will need to define Configurations and ECs, there are three different types as described below:

  • Deploy real-time configurations through UI
    EC Deployment Web Interface[hide]2.2[/hide]
    There are many examples available in the documentation.

  • Deploy batch configurations through UI
    EC Deployment Web Interface[hide]2.2[/hide]
    There are many examples available in the documentation.

  • Deploy solutions through CI/CD pipelines
    Use the
    Drx product name
    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[hide]2.2[/hide].