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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | kubectl current context | |||||
Default value | kubectl current context | |||||
Remarks | Confirm 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | Openshift [Openshift] AWSEKS [AWS EKS] PlainK8s [Plain multi-node K8s cluster] AzureAKS [Azure AKS] GoogleGKE [Google Kubernetes Engine] | |||||
Default value | - | |||||
Remarks | You 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | NA | |||||
Default value | digitalai | |||||
Remarks | Type 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | dai-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 | - | |||||
Remarks | Select 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
Prompt | Select type of image registry (current default is default): [? for help] (default) | |||||
---|---|---|---|---|---|---|
Prompt valid for—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | default [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 value | default [Default (Uses various public image registries for the installation images)] | |||||
Remarks | Type 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | NA | |||||
Default value | xebialabs | |||||
Remarks | Type 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | xl-deploy | |||||
Default value | xl-deploy Depending on the product you chose to install earlier, the default value would will be xl-deploy for Digital.ai Deploy. | |||||
Remarks | Type 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.
- Digital.ai Deploy Operator Image
- Digital.ai Deploy Image
- Digital.ai Deploy Task Engine Image
- Digital.ai Deploy Central Configuration Image
Prompt | ? Enter the application image tag (eg: <tagName> from <repositoryName>/<imageName>:<tagName>): [? for help] | |||||
---|---|---|---|---|---|---|
Prompt valid for—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | NA | |||||
Default value | The latest Deploy release available in the repository, for example, 23.3.0 | |||||
Remarks | Type 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | NA | |||||
Default value | deploy-task-engine | |||||
Remarks | Type 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | NA | |||||
Default value | central-configuration | |||||
Remarks | Type 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | generate [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 value | generate | |||||
Remarks | You 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | N/A | |||||
Default value | - | |||||
Remarks | If 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | NA | |||||
Default value | 3 | |||||
Remarks | Type 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | NA | |||||
Default value | 10 | |||||
Remarks | Type 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | ReadWriteOnce [ReadWriteOnce] ReadWriteMany [ReadWriteMany] | |||||
Default value for Deploy | ReadWriteOnce [ReadWriteOnce] | |||||
Remarks | Select 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | NA | |||||
Default value | 3 | |||||
Remarks | Type 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | NA | |||||
Default value | 10 | |||||
Remarks | Type 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | NA | |||||
Default value | 0.500000 | |||||
Remarks | Type 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | route [Openshift Route] nginx [NGINX] haproxy [HAProxy] external [External - IngressClass resource should already exist] none [None - Ingress will not be set up during installation] | |||||
Default value | nginx [NGINX] in case of Openshift route [Openshift Route] | |||||
Remarks | Select 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | No | Yes | ||
Available values | NA | |||||
Default value | No | |||||
Remarks | Type 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | No | Yes | ||
Available values | The list of secrets available in the selected namespace. | |||||
Default value | - | |||||
Remarks | Input 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | NA | |||||
Default value | NA | |||||
Remarks | Type 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | NA | |||||
Default value | Randomly generated administrator password. | |||||
Remarks | A 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | external [External OIDC Configuration] identity-service [Identity Service Configuration] no-oidc [No OIDC Configuration] | |||||
Default value | no-oidc [No OIDC Configuration] | |||||
Remarks | Choose one of the options based on the OIDC authentication setup you have or want to have. |
For more information, see:
- for Deploy: Select the Type of OIDC Configuration.
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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | NA | |||||
Default value | The latest image from the Digital.ai repository, for example, deploy-operator | |||||
Remarks | Type 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | NA | |||||
Default value | The latest image from the Digital.ai repository, for example, 23.3.0 | |||||
Remarks | Type 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | generate [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 value | generate [Generate the repository keystore during installation (you need to have keytool utility installed in your path)] | |||||
Remarks | Select 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | N/A | |||||
Default value | - | |||||
Remarks | If 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | NA | |||||
Default value | A randomly generated password. | |||||
Remarks | Type 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | List that is set up on cluster by the cluster administrator | |||||
Default value | As set up by the cluster administrator | |||||
Remarks | Select 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | NA | |||||
Default value | Yes | |||||
Remarks | Type 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | As set up by the cluster administrator | |||||
Default value | As set up by the cluster administrator | |||||
Remarks | If 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | NA | |||||
Default value | 8 | |||||
Remarks | If 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | NA | |||||
Default value | Yes | |||||
Remarks | Type 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | NA | |||||
Default value | 3 | |||||
Remarks | If 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | As set up by the cluster administrator | |||||
Default value | As set up by the cluster administrator | |||||
Remarks | If 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—platform | EKS | AKS | GKE | OpenShift on AWS | Plain Multi-node Kubernetes Cluster On-premise | |
Yes | Yes | Yes | Yes | Yes | ||
Available values | NA | |||||
Default value | 8 | |||||
Remarks | If 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.
It then proceeds with the installation by applying the resources to the cluster and completes the installation of the product. Here's an example.