Skip to main content
Version: Deploy 23.3

Installation Options Reference for Digital.ai Deploy

  • Here's a list of questions that you would have to answer to install Digital.ai Deploy using the xl kube install command.
  • While some of the following questions are common for both Deploy and Release, some are relevant only for Deploy and that has been called out in the descriptions accordingly.
  • You must select one of the available options for some of the questions.
  • Use the arrow keys to move up or down and press enter to select an option.

Important: We highly recommend you to go through the xl kube workshop to gain a comprehensive understanding on how to install or upgrade Digital.ai Release or Remote Runner on a kubernetes cluster and how it can benefit you.

Deploy Installation Options Reference

Here's a list of questions that you would have to answer to install Digital.ai Deploy using the xl kube install command.

Here's the list of questions

Confirm the kubectl Context

Prompt? Following kubectl context will be used during execution: <kubectl-context/username>? (Y/n)
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valueskubectl current context
Default valuekubectl current context
RemarksConfirm the kubectl context to proceed.

Choose a Kubernetes Platform

Prompt? Select the Kubernetes setup where the Digital.ai Devops Platform will be installed, updated or cleaned:
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesOpenshift [Openshift]
AWSEKS [AWS EKS]
PlainK8s [Plain multi-node K8s cluster]
AzureAKS [Azure AKS]
GoogleGKE [Google Kubernetes Engine]
Default value-
RemarksYou must have your cluster ready before you select an answer for this prompt.

Choose a Kubernetes Namespace

Important: If you want to enable the TLS protocol in your cluster, you must have the TLS secret created in the namespace before you start the installation or upgrade. This means that you must have created the namespace and the TLS secret already. Use the same namespace when you answer this prompt.

Prompt? Do you want to use an custom Kubernetes namespace (current default is digitalai): [? for help] (y/N)
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesNA
Default valuedigitalai
RemarksType the name of a custom namespace where you want to install or upgrade Deploy or go with the default namespace, which is digitalai.
If you are going to enable the TLS protocol in your cluster, you must have created the namespace and the TLS secret already. Use the same namespace where you have the TLS secret created.

Choose the Product to Install

Prompt? Product server you want to perform install for [Use arrows to move, enter to select, type to filter, ? for more help]
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesdai-release [Digital.ai Release with optional Remote Runner]
dai-deploy [Digital.ai Deploy]
dai-release-remote-runner [Remote Runner for Digital.ai Release]
Default value-
RemarksSelect a product—dai-deploy [Digital.ai Deploy]

Select Type of Image Registry

Note: You can choose a custom public or private registry, which can be used to perform the setup of Deploy from a custom image registry and image repository. For more information, see Setup Custom Image Registry

PromptSelect type of image registry (current default is default): [? for help] (default)
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesdefault [Default (Uses various public image registries for the installation images)]
public [Custom Public Registry (Uses a specific custom registry)]
private [Custom Private Registry - Password protected (Uses a specific custom registry with password)]
Default valuedefault [Default (Uses various public image registries for the installation images)]
RemarksType the image repository. It is recommended to go with the default, which is xebialabs.

Enter the Repository Name

Prompt? Enter the repository name for the application and operator images (eg: <repositoryName> from <repositoryName>/<imageName>:<tagName>): [? for help] (xebialabs)
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesNA
Default valuexebialabs
RemarksType the repository name. It is recommended to go with the default, which is xebialabs

Enter the Image Name

Prompt? Enter the Deploy server image name (eg: <imageName> from <repositoryName>/<imageName>:<tagName>): [? for help]
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesxl-deploy
Default valuexl-deploy
Depending on the product you chose to install earlier, the default value would will be xl-deploy for Digital.ai Deploy.
RemarksType the name of the image you want to use for installation.

Enter the Image Tag

The xl kube install and xl kube upgrade options reference let you go with the default (latest) docker image tags available when you install or upgrade Digital.ai Deploy. However, here are the Docker Hub links to verify all the available image tags.

Prompt? Enter the application image tag (eg: <tagName> from <repositoryName>/<imageName>:<tagName>): [? for help]
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesNA
Default valueThe latest Deploy release available in the repository, for example, 23.3.0
RemarksType the product version number you want to install, for example, 23.3.0 or 23.3.1.

Enter the Deploy Task Engine Image Name

Prompt? Enter the deploy task engine image name for version 22 and above (eg: <imageName> from <repositoryName>/<imageName>:<tagName>): [? for help] (deploy-task-engine)
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesNA
Default valuedeploy-task-engine
RemarksType the name of the Digital.ai Deploy task engine image you want to use. This is relevant for Digital.ai Deploy 22.0.0 and later.

Enter the Deploy Central Configuration Image Name

Prompt? Enter the central configuration image name for version 22 and above (eg: <imageName> from <repositoryName>/<imageName>:<tagName>): [? for help] (central-configuration)
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesNA
Default valuecentral-configuration
RemarksType the name of the Digital.ai Deploy central configuration image you want to use. This is relevant for Digital.ai Deploy 22.0.0 and later.

Enter the Product License

Prompt? Select source of the license: [Use arrows to move, enter to select, type to filter, ? for more help]
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesgenerate [Generate the license (this is only for temporary license that is used for evaluation)]
file [Path to the license file (the file can be in clean text or base64 encoded)]
editor [Copy/Paste the license to editor (the text can be in clean text or base64 encoded)]
Default valuegenerate
RemarksYou can either choose to type in the path to the license file (for example, /home/my_home/xl-deploy-license.lic) or choose to copy and paste the license information in the editor.
The license file can be in plain text format or in base64 encoded format. The generated license is a temporary evaluation license.
Prompt? Provide license file for the server: [? for help]
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesN/A
Default value-
RemarksIf you select a file input type for the license. Type in the path to the license file (for example, /home/my_home/xl-deploy-license.lic)

Enter the Deploy Master Replica Count

Prompt? Enter the deploy master server replica count: [? for help] (3)
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesNA
Default value3
RemarksType the number of Deploy master server replicas you want. There is a limitation if you selected generated evaluation license, for now there is no replication of the license between replicas, so you must select in that case 1.

Enter the Deploy Master PVC Size

Prompt? Enter PVC size for Deploy master (Gi): [? for help] (10)
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesNA
Default value10
RemarksType the persistent volume claim (PVC) size for Deploy master server.

Select Access Modes

Prompt? Select between supported Access Modes for the Deploy pods: [Use arrows to move, enter to select, type to filter, ? for more help]
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesReadWriteOnce [ReadWriteOnce]
ReadWriteMany [ReadWriteMany]
Default value for DeployReadWriteOnce [ReadWriteOnce]
RemarksSelect the access mode. For the Deploy pods is enough ReadWriteOnce, so the selected storage class must minimally support selected access mode.

Enter the Deploy Worker Replica Count

Prompt? Enter the deploy worker replica count: [? for help] (3)
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesNA
Default value3
RemarksType the number of Deploy worker replicas you want.

Enter the Deploy Worker PVC Size

Prompt? Enter PVC size for Deploy worker (Gi): [? for help] (10)
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesNA
Default value10
RemarksType the persistent volume claim (PVC) size for Deploy worker.

Enter the Deploy Central Configuration PVC Size

Prompt? Enter PVC size for Central Configuration (Gi): [? for help] (0.500000)
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesNA
Default value0.500000
RemarksType the persistent volume claim (PVC) size for Deploy central configuration.

Select Ingress Type

Prompt? Select between supported ingress types: [Use arrows to move, enter to select, type to filter, ? for more help]
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesroute [Openshift Route]
nginx [NGINX]
haproxy [HAProxy]
external [External - IngressClass resource should already exist]
none [None - Ingress will not be set up during installation]
Default valuenginx [NGINX]
in case of Openshift route [Openshift Route]
RemarksSelect one of the ingress controllers—nginx or haproxy.
You can also choose not to set up the ingress controller at the time of installation or choose to use an external ingress controller.
No ingress controller needed, if you were to use an OpenShift cluster, in that case, you can use Openshift route resource.  

Enable TLS/SSL

Important: If you want to enable the TLS protocol in your cluster, you must have the TLS secret created in the namespace before you start the installation or upgrade. This means that you must have created the namespace and the TLS secret already. Use the same TLS secret when you answer this prompt.

Prompt? Do you want to enable an TLS/SSL configuration (if yes, requires existing TLS secret in the namespace): [? for help] (y/N)
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesNoYes
Available valuesNA
Default valueNo
RemarksType Yes to enable TLS/SSL or No otherwise. The default is No. If you want to enable TLS/SSL, keep the TLS secret handy to enter at the next prompt.
Prompt? Provide the TLS secret name with the key and certificate: [? for help]
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesNoYes
Available valuesThe list of secrets available in the selected namespace.
Default value-
RemarksInput the TLS secret. Check the Configure SSL/TLS — Deploy - Step 3—Create Secret

Enter the Domain Name

Prompt? Provide DNS name for accessing UI of the server: [? for help]
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesNA
Default valueNA
RemarksType the domain name for accessing the Digital.ai Deploy server. For example, xlr-operator.apps.opcluster.p1.openshiftapps.com

Enter the Administrator Password

Prompt? Provide administrator password: [? for help]
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesNA
Default valueRandomly generated administrator password.
RemarksA default password is generated randomly and you can use it if you choose to, in which case you must copy the password and keep it handy.
You can also type your own administrator password at the prompt.

Select the OIDC Configuration

Prompt? Type of the OIDC configuration: [Use arrows to move, enter to select, type to filter, ? for more help]
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesexternal [External OIDC Configuration]
identity-service [Identity Service Configuration]
no-oidc [No OIDC Configuration]
Default valueno-oidc [No OIDC Configuration]
RemarksChoose one of the options based on the OIDC authentication setup you have or want to have.

For more information, see:

Enter the Operator Image Name to Use

Prompt? Enter the operator image to use (eg: <imageName> from <repositoryName>/<imageName>:<tagName>): [? for help]
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesNA
Default valueThe latest image from the Digital.ai repository, for example, deploy-operator
RemarksType the Kubernetes Operator Docker Hub image name you want to use.
By default, the latest image for the product — Deploy — deploy-operator

Enter the Operator Image Tag to Use

Prompt? Enter the operator image to use (eg: <tageName> from <repositoryName>/<imageName>:<tagName>): [? for help]
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesNA
Default valueThe latest image from the Digital.ai repository, for example, 23.3.0
RemarksType the Kubernetes Operator Docker Hub image tag you want to use.
By default, the latest image for the product — Deploy — which you install—would be used.
Example: 23.3.0

Select the Java Repository Keystore

Prompt? Select source of the repository keystore: [Use arrows to move, enter to select, type to filter, ? for more help]
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesgenerate [Generate the repository keystore during installation (you need to have keytool utility installed in your path)]
file [Path to the repository keystore file (the file can be in the raw format or base64 encoded)]
editor [Copy/Paste the repository keystore to editor (the content needs to be base64 encoded)]
Default valuegenerate [Generate the repository keystore during installation (you need to have keytool utility installed in your path)]
RemarksSelect if you want to generate a new JDK keystore file or use an existing one. The default is to generate a new JDK keystore.
If you have an existing keystore file, you can either choose to type in the path to the repository keystore file or copy and paste the keystore file in the editor.
Prompt? Provide repository keystore for the server: [? for help]
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesN/A
Default value-
RemarksIf you select a file input type for the keystore. Type in the path to the keystore file (for example, /opt/kestore/daid)

Enter the Keystore Passphrase

Prompt? Provide keystore passphrase: [? for help]
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesNA
Default valueA randomly generated password.
RemarksType a password for the JDK repository keystore.
A random password is auto-generated by default.
Copy the auto-generated password and keep it safe if you were to use the auto-generated password.

Select the Storage Class

Prompt? Provide storage class for the server: [Use arrows to move, enter to select, type to filter, ? for more help]
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesList that is set up on cluster by the cluster administrator
Default valueAs set up by the cluster administrator
RemarksSelect a storage class that you want to use for Digital.ai Deploy. The selected storage class must support selected access mode.

Create New PostgreSQL Server? Or Use Existing One?

Prompt? Do you want to install a new PostgreSQL on the cluster: [? for help] (Y/n)
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesNA
Default valueYes
RemarksType Yes to install a new PostgreSQL database server in your cluster or No to use an existing PostgreSQL server.
If you enter No, you will need to provide connection parameters for the Deploy, check Using an Existing PostgreSQL Database

Select the PostgreSQL Storage Class

Prompt? Storage Class to be defined for PostgreSQL: [Use arrows to move, enter to select, type to filter, ? for more help]
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesAs set up by the cluster administrator
Default valueAs set up by the cluster administrator
RemarksIf you selected a new PostgreSQL, you need to select a storage class that you want to use for PostgreSQL. The storage class needs to support minimally ReadWriteOnce access mode.

Enter the PostgreSQL PVC size

Prompt? Provide PVC size for PostgreSQL (Gi): [? for help] (8)
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesNA
Default value8
RemarksIf you selected a new PostgreSQL, you need to type the persistent volume claim for PostgreSQL. The default is 8.

Create New RabbitMQ Server? Or Use Existing One?

Prompt? Do you want to install a new RabbitMQ on the cluster: [? for help] (Y/n)
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesNA
Default valueYes
RemarksType Yes to install a new RabbitMQ server in your cluster or No to use an existing RabbitMQ server.
If you enter No, you will need to provide connection parameters for the Deploy, check Using an Existing Message Queue

Enter the RabbitMQ Replica Count

Prompt? Replica count to be defined for RabbitMQ: [? for help] (3)
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesNA
Default value3
RemarksIf you select a new RabbitMQ, type the number of replicas you need for RabbitMQ server.

Select the RabbitMQ Storage Class

Prompt? Storage Class to be defined for RabbitMQ: [Use arrows to move, enter to select, type to filter, ? for more help]
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesAs set up by the cluster administrator
Default valueAs set up by the cluster administrator
RemarksIf you select a new RabbitMQ, select a storage class that you want to use for RabbitMQ. The storage class needs to support minimally ReadWriteOnce access mode.

Enter the RabbitMQ PVC Size

Prompt? Provide PVC size for RabbitMQ (Gi): [? for help] (8)
Prompt valid for—platformEKSAKSGKEOpenShift on AWSPlain Multi-node Kubernetes
Cluster On-premise
YesYesYesYesYes
Available valuesNA
Default value8
RemarksIf you select a new RabbitMQ, type the persistent volume claim for RabbitMQ. The default is 8.

Once you are done answering the questions, the installer provides a summary of the installation choices you made. Here's an example.

1665217557157

It then proceeds with the installation by applying the resources to the cluster and completes the installation of the product. Here's an example.

1665217708304