Worker OEA Installation
Note: This installation is only for installing the Argo Components, intended to be used with the agent.
Introduction:
This document provides step-by-step instructions for installing Argo + Agent on a Kubernetes cluster; it is assumed that the user is already using ISD in their environment.
The installation involves the following components:
Argo Components (Argo CD, Rollouts)
OpenLDAP for authenticating Argo CD
Note: Worker OEA Installation 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.
Worker OEA Installation Steps:
Follow the instructions below for Worker OEA Installation:
Create a namespace in your cluster using the command below.
Clone the enterprise argo repo and change directory to enterprise-argo using the commands below.
Run the below commands in your Terminal.
Configure URLs for Argo CD and Argo rollouts as per your DNS record.
Modify the below commands by replacing the URLs that you have configured and run those commands from your terminal.
Run the below command to install Argo.
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.
After successful installation, you can see the pods in your namespace. Use the below command to check the pods in your namespace.
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.
Access ingress URL (both for Argo and ISD) through the browser & login into the application
using the credentials listed below:
User Name: admin
Password: Execute the following command to retrieve the password
Argo CD Integration with ISD
Prerequisites:
ISD should be up and running to proceed further with integration of worker OEA/Agent
Agent Host URL should be mapped with Agent GRPC service external IP address
ISD Agent host mapping with GRPC service:
Note: If agent-grpc service external IP is already mapped to an agent host URL as part of Autopilot installation and updated in controller configmap, please ignore the steps 1 to 5.
Follow the instructions below to integrate Argo CD with ISD:
Prepare a URL for agent grpc IP mapping as per your agent host URL.
Map ISD agent-grpc external IP to agent host URL.
To get agent-grpc external IP, connect to kubernetes cluster where you have installed the ISD application and run the below command in your cluster.
Note: ISD namespace is the namespace where you have installed your ISD application.
Edit controller config map and replace the URL as mentioned below. To edit the config map run below command.
Replace the URL in the config map under data section as mentioned below and save it.
Restart the controller pod using the command below.
Login to ISD application
Create the Agent in ISD UI and Download the manifest file to your local machine. For more information on how to create an Agent, refer here.
Modify the following highlighted fields from the agent manifest file and save it. Search with namespace in the Agent manifest file which is downloaded from the ISD UI and replace the “namespace : default” with namespace value where argocd is running and save the file.
Modify the replicas under spec section as per your requirements(by default it will have 3).
Argo CD Integration using Agent:
Create a new config map as shown below and modify the fields wherever mentioned.
You can generate the API token in Argo CD application and provide it in the above configmap. To generate the API token in Argo CD, refer here.
Connect to Kubernetes cluster where you have installed Argo CD and Rollouts(Worker OEA install).
Apply agent file and config map file in your cluster using below command.
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.
Now you can create applications in Argo CD and it will get synced in ISD automatically.
Last updated