ISD-Argo Full Installation via curl command

Introduction

This document provides step-by-step instructions for installing ISD-Argo with an agent on a Kubernetes cluster using a single curl command.

The installation involves the following components:

  • OEA(OpsMx Enterprise for Argo)-UI and associated components (Audit, Platform, Autopilot)

  • Argo components (ArgoCD + Argo Rollouts)

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

In Full Installation mode, you can install ISD + Master OEA (Argo components: ArgoCD+Rollouts) and you can connect worker OEAs with/without an agent.

Note: ISD-Argo Full Installation via curl command v4.1.1 supports the following Argo Components:

  • Argo CD - v2.4.8

  • Argo Rollout - v1.2.0

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-Argo Full Installation Steps:

ISD-Argo full installation can be done using a single curl command. It is Helm in the backend. You can decide the modes as per the type of installation and provide the required inputs.

Follow the instructions below for Full Installation of ISD for Argo:

  1. Run the following curl command for installation.

    curl -o install.sh https://raw.githubusercontent.com/opsmx/enterprise-argo/main/curl/4.1.1/install.sh && chmod 777 install.sh && ./install.sh

  2. After running the above curl command, enter the following inputs.

    • Specify Mode of installation: ISD-ARGO

    • Specify Namespace: isdargo

    • Specify ISD-UI URL: isd.argo.opsmx.net

    • Specify ArgoCD URL: argocdagent.argo.opsmx.net

    • Specify ArgoRollout URL: argoroll.argo.opsmx.net

    After passing the above parameters, the output appears as follows. Wait for the installation to complete.

    $ curl -o install.sh https://raw.githubusercontent.com/opsmx/enterprise-argo/main/curl/4.1.1/install.sh && chmod 777 install.sh && ./install.sh
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                     Dload  Upload   Total   Spent    Left  Speed
    100 12816  100 12816    0     0  21870      0 --:--:-- --:--:-- --:--:-- 21870
      * I S D - A R G O *                                                                        
    ------------------------------------------------------------
     System Requirements 
    ------------------------------------------------------------
       Configuration with at least 4 cores and 16 GB memory
       Kubernetes cluster 1.19 or later                    
       Helm 3 is setup on the client system   Installation - https://helm.sh/docs/intro/install/
       Nginx ingress controlled installed     Installation - https://kubernetes.github.io/ingress-nginx/deploy/
       Cert-manager installed                 Installation - https://cert-manager.io/docs/installation/kubernetes/
    -------------------------
    Press enter to continue...
    -------------------------------------
               Pre Installation          
    -------------------------------------
    Please Specify the required data for installation ....
    
    Installation Modes
     _________________________________________________________
    |         Description                    -      Mode      |
    |---------------------------------------------------------|
    |To install only ISD mode is             -       ISD      |
    |                                                         |
    |Full installation with ISD-ARGO mode is -     ISD-ARGO   |
    |_________________________________________________________|
    
    Specify Mode of installation: ISD-ARGO
    
    Specify Namespace: isdargo
    Specify ISD-UI URL: isd.argo.opsmx.net
    Specify ArgoCD URL: argocdagent.argo.opsmx.net
    Specify ArgoRollout URL: argoroll.argo.opsmx.net
    ---
    Checking for dependency......
    Kubectl present in server..
    Helm present in server..
    yq present in server..
    Existing CRD's analysisruns.argoproj.io
    -------------------------------------
                 Installation     
    -------------------------------------
    Adding the helm repo....
    Updating the helm repo ...
    Creating the Namespace ...
    namespace/isdargo created
    
    Installing...
    
    NAME: isdargoisdargo
    LAST DEPLOYED: Mon Oct 31 10:13:24 2022
    NAMESPACE: isdargo
    STATUS: deployed
    REVISION: 1
    TEST SUITE: None
    -------------------------------------
                 Post Installation       
    -------------------------------------
    ISD services to be stabilize
           ISD services are Up and Ready..
    
               ....Installation Completed Sucessfully....
    
           Access the ISD    --> https://isd.argo.opsmx.net
    
           Access the ArgoCD --> https://argocdagent.argo.opsmx.net
    
           Access the Argorollouts --> https://argoroll.argo.opsmx.net
    
           Login with Openldap Credentials
          ------------------------------------------------------

  3. Once the installation is successfully completed, you can find the URLs of ISD, Argo CD, Argo Rollouts and Login Credentials in the output.

  4. Access the URLs (ISD/Argo CD/Argo Rollouts) through 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
  5. Now go to the ISD UI and refresh it, you will see the Agent in healthy status, which means the agent is successfully connected to ISD. Refer to the image below.

  6. Now you can create applications in Argo CD/Argo Rollouts and they will get synced in ISD automatically.

Last updated