Autopilot Installation

Note: This Installation is only for ISD UI (formerly known as Autopilot) which connects customer OSS Argo with one or more agents.

Introduction:

This document provides step-by-step instructions for installing ISD+Agent on a Kubernetes cluster.

The installation involves the following components:

  • ISD UI and associated components (Audit, Platform, Autopilot)

  • Additional supporting/common components (DB, Redis, OpenLDAP)

Environment Requirements:

  • It is assumed that you have a k8s cluster with nginx and cert-manager already installed. If not, refer to the document here for more information on the Environment setup for ISD for Argo.

  • For production-grade installation, please refer to the Infrastructure requirements here.

ISD-Autopilot Installation Steps:

Follow the instructions below for ISD for Argo Autopilot installation:

  1. Create a namespace in your cluster using the command below.

    kubectl create ns <namespace name>
  2. Clone the enterprise argo repo and change directory to enterprise-argo using the commands below.

    git clone https://github.com/OpsMx/enterprise-argo.git
    cd enterprise-argo/charts/isdargo/

    Note: The isd-argo-minimal-values.yaml provided in the repo is adequate and recommended for Full Installation. If you would like to have some advanced-level configurations for secret management, cluster configuration, etc, you can use values.yaml. If you need any additional clarifications with respect to values.yaml for installation, please contact OpsMx support.

  3. Run below commands in your terminal.

    sed -i "s/installArgoCD: true/installArgoCD: false/g" isd-argo-minimal-values.yaml
    
    sed -i "s/installArgoRollouts: true/installArgoRollouts: false/g" isd-argo-minimal-values.yaml
    
    sed -i "s/installdemoapps: true/installdemoapps: false/g" isd-argo-minimal-values.yaml
    
    sed -i "s/autoconfigureagent: true/autoconfigureagent: false/g" isd-argo-minimal-values.yaml
  4. Configure URL for Autopilot as per your DNS record. Choose the agent host URL as per your domain name [For eg: if your domain name is ending with: *.devops.com, the corresponding agent host URL should be: <YOUR-CHOICE_OF_Controller-Name>.devops.com]

  5. Modify the below commands by replacing the URL that you have configured and run those commands from your terminal.

    sed -i "s/ISD.REPLACE.THIS.WITH.YOURCOMPANY.COM/<Provide your ISD url here>/g" isd-argo-minimal-values.yaml
    
    sed -i "s/controller.exampleopsmx.net/<YOUR-CHOICE_OF_Controller-Name>.devops.com>/g" isd-argo-minimal-values.yaml
  6. Run the below command to install Autopilot.

    helm install <RELEASE_NAME> . -n <NAMESPACE-NAME> -f isd-argo-minimal-values.yaml

    Update the following information in the above command: Release name: You can give any name as release name (better to give namespace name as release name).

    Namespace name: Give the namespace name which you have created before.

  7. After successful installation, you can see the pods in your namespace. Use the below command to check the pods in your namespace.

    kubectl get pods -n <namespace name>
  8. Once all the pods are up and running, you can access the applications with URLs you have configured before. Use the below command to get those URLs.

    kubectl get ing -n <namespace name>
  9. Access ingress URL (both for Argo and ISD) through the browser & login into application using the credentials listed below:

    • User Name: admin

    • Password: Execute the following command to retrieve the password

      kubectl get secret openldap -o jsonpath='{.data.LDAP_ADMIN_PASSWORD}'| base64 -d

Once the Autopilot installation is completed and the user is able to login to ISD, the next step is to integrate Argo Cd with ISD. For more information regarding Integration of Argo Cd with ISD, refer to the section “Argo CD Integration with ISD”.

Last updated