Generate the Deployment Files by the Installation Wizard

The article describes how to run the Installation Wizard and generate the set of files for deploying the Metric Insights application on Kubernetes, OpenShift 3, OpenShift 4. Unlike the Installer, the Installation Wizard allows to adjust required variables text right in the console. After finishing the generation process, you will get the deployment file and files with ready secrets for services required for the Metric Insights application. The deployment file name is set by default - application.yml.

Before starting the process, ensure that you have the installation package.

The following topics are covered in this article:

  1. Run the Installation Wizard
  2. Check the Generated Assets

1. Run the Installation Wizard

To run the Installation Wizard, use ./installer.py kubernetes --wizard command. You will be prompted to customize the following variables text:

Variable Text Description  Example Value to Enter 
Enter output folder for target artifacts Folder where application.yml with all required assets will be added after the generation. 
  • Any custom folder name 
  • To use the default value, leave the variable text empty 
Set scenario type for kubernetes. Possible values: openshift3, k8s  Select a deployment type depending on the environment you want to deploy the Metric Insights application to. 
  • "openshift3" (for both OpenShift 3 and OpenShift 4) 
  • "k8s"
  • To use the default value, leave the variable text empty 
Enter docker registry address Address where Docker images will be stored. It must be entered without https://. 
  • Any custom Docker Registry address, e.g., test.registry.com 
  • To use the default value, leave the variable text empty 
Enter login to get access to registry <docker_registry_address>   Login that will be used for accessing the Docker Registry. 
  • Any custom login 
  • To use the default value, leave the variable text empty 
Enter email address to get access to registry <docker_registry_address>  Email address that will be used for accessing the Docker Registry. 
  • Any custom email address 
  • To use the default value, leave the variable text empty 
Enter password to get access to registry <docker_registry_address> Password that will be used for accessing the Docker Registry. 
  • Any custom strong password 
Enter docker image secret pull name Secret name that will be used for authenticating with the container registry to pull a private image. 
  • Any custom secret name  
Set timezone  Timezone that will be used inside Docker containers. 
  • Any custom timezone 
  • To use the default value, leave the variable text  empty 
Enter desired name for namespace  Namespace where the Metric Insights application will be deployed. 
  • Any custom name 
  • To use the default value, leave the variable  text empty 
Enter desired number of web instances  Number of web instances on which Web Master and Web Slave will be installed.  
  • Any custom number. If, e.g., 3 is entered, it means that one Web Master and two Web Slaves will be installed 
  • To use the default value, leave the variable text empty 
Set additional hostname for Web service. Leave default to keep disabled  Hostname to which 127.0.0.1 will be assigned. It is required for the application to interact with its components faster inside the container. 
  • Any custom hostname 
  • To use the default value, leave the variable text empty 
Set hostname of Dataprocessor. Default values: metricinsights-dataprocessor  Hostname that will be used for the Dataprocessor. 
  • Any custom hostname 
  • To use the default value, leave the variable text empty 
Dataprocessor seed service hostname for external services. Default values: metricinsights-seed Hostname that will be used for the Dataprocessor Seed Service. 
  • Any custom hostname 
  • To use the default value, leave the variable text empty 
Enter ingress controller type. Possible values: nginx, traefik  Proxy service that will be used in the Kubernetes cluster. 
  • "nginx"
  • "traefik" 
  • To use the default value, leave the variable text empty 
Enable specification for shared drive from host to web container. Type "Yes" to enable  It is possible to connect /opt/mi separately for Dataprocessor and Web container. 
  • To enable, type "Yes"
  • To use the default value, leave the variable text empty 
Specify NFS server address for shared drive The variable is visible only if "Yes" was typed for the previous variable. Enter NFS server address for the shared drive. 
  • Any custom address
Enter hostname  Hostname that will be used for accessing the application. 
  • Any custom hostname
Enter monitoring hostname  Hostname that will be used for the Monitoring Service. 
  • Any custom hostname
If you want to use the existing Persistent Volume Claim, enter the name here otherwise continue with the default value To use the Persistent Volume Claim, enter it's name. 
  • Any custom name
  • To use the default value, leave the variable text empty 
Enter storage class type. Possible values: nfs, portworx  Storage class that will be used in the Kubernetes cluster. 
  • "nfs"
  • "portworx" 
  • To use the default value, leave the variable text empty 
Enter Portworx storage data size  (In Gigabytes). Example: 50  The variable is visible only if  "portworx " is selected.

Set required storage data size.  
  • Any custom number 
Set Portworx storage class name  The variable is visible only if  "portworx " is selected.

Enter the storage class name.
  • Any custom name
  • To use the default value, leave the variable text empty
Enter NFS server address. Example: 192.168.34.10 The variable is visible only if  "nfs" is selected.

Network address of the NFS server.
  • Any custom network address 
Enter NFS shared folder. Example: /opt/mi/data The variable is visible only if  "nfs" is selected.

Shared folder that will be used for transferring files inside a container.
  • Any custom folder name 
  • To use the default value, leave the variable text empty 
Enter service type. Possible values: ClusterIP, LoadBalancer, NodePort  Select a method for the external traffic entry into the Kubernetes cluster. 
  • "ClusterIP"
  • "LoadBalancer" 
  • "NodePort" 
  • To use the default value, leave the variable text empty 
Enter load balancer type. Possible values: azure-internal, external  Select a LoadBalancer type that will distribute incoming network traffic. 
  • "azure-internal"
  • "external"
  • To use the default value, leave the variable text empty 
Enter MySQL hostname address.  Server address of a database. 
  • Any custom hostname 
Enter MySQL hostname port.  Port for MySQL protocol. 
  • Any custom port 
  • To use the default value, leave the variable text empty 
Enter MySQL dataset hostname address Server address of a database for a hostname. 
  • Any custom hostname address
  • To use the default value, leave the variable text empty 
Enter MySQL dataset hostname port Database port for a hostname.
  • Any custom port 
  • To use the default value, leave the variable text empty 
Enter MySQL root username  Username that will be used for accessing MySQL. 
  • Any custom root username 
Enter MySQL root password Password that will be used for accessing MySQL.
  • Any strong password 

This is an output example:

2. Check the Generated Deployment Files

Navigate to the folder you have specified for the target artifacts. The folder contains the following files:

File Description 
application.yml 
File for the Metric Insights application deployment.
data-analyzer.env 
File with the secret for Data Analyzer Service container.
dataprocessor.env 
File with the secret for Data Processor Service container.
monitoring.env 
File with the secret for Monitoring Service container.
mysql.secret
File with the secret for MySQL Service container.
seed.env 
File with the secret for Seed Service container.
web.env 
File with the secret for Web Service container.