CIM Deployment on ArgoCD
Introduction
Argo CD is a declarative continuous delivery tool for Kubernetes applications. It uses the GitOps style to create and manage Kubernetes clusters. When any changes are made to the application configuration in Git, Argo CD will compare it with the configurations of the running application and notify users to bring the desired and live state into sync.
A detailed listing of the components used and related information is already plotted in a table at this table:1.0 giving an exact listing of paths and components with all possible details added.
First, you need to connect the repository settings → repos
create the new application → new apps
There are two different ways to deploy the application in argocd.
1) helm charts
2) directory manifest
Creating application by using helm
Prune Resources
This feature allows resource pruning to happen as a final, implicit wave of a sync operation after the other resources have been deployed and become healthy, and after all other waves have been completed successfully. This can also be configured at the individual resource level.
Self Heal
Automatic Sync does not cover the case when an application is out of sync due to an unexpected change in the target cluster. With Self-Healing enabled, Argo CD automatically forces the desired state from Git into the cluster every time when state deviation is detected.
Auto create namespace
it will automatically create the namespace
The application naming convention should be the same as defined in table [1.0]
Repository URL
In the repository URL section, you just need to paste the current repository URL.
Revision
In the revision section, you just need to paste the current branch name.
PATH
the path is defined in table 1.0 for every component.
Cluster URL
the cluster URL should be the same across the deployment
Namespace
In the namespace section, you need to paste the name of the namespace in which you will create the application.
Values Files
for the single node cluster we use values-small.yaml.
for multi-node / HA cluster we use values-small.yaml.
Creating applications by directory
Prune Resources
This feature allows resource pruning to happen as a final, implicit wave of a sync operation after the other resources have been deployed and become healthy, and after all other waves have been completed successfully. This can also be configured at the individual resource level.
Self Heal
Automatic Sync does not cover the case when an application is out of sync due to an unexpected change in the target cluster. With Self-Healing enabled, Argo CD automatically forces the desired state from Git into the cluster every time when state deviation is detected.
Auto create namespace
it will automatically create the namespace
The application naming convention should be the same as defined in table [1.0]
Repository URL
in the repository URL section, you just need to paste the current repository url.
Revision
in the revision section, you just need to paste the current branch name.
PATH
the path is defined in table 1.0 for every component.
Cluster URL
the cluster URL should be the same across the deployment
Namespace
In the namespace section, you need to paste the name of the namespace in which you will create the application.
Directory Recurse
When deploying the manifest through the directory Directory Recurse must be checked
table:1.0 please follow the below naming convention to deploy the cim on argocd.
Application Name | Path | Namespace | Configuration |
---|---|---|---|
cim | kubernetes/cim | expertflow | directory recurse |
rasa-x | kubernetes/external/rasa-x-1.1.2-helm | rasa-x | helm |
ef-postgresql | kubernetes/external/bitnami/postgresql | ef-external | helm |
superset | kubernetes/external/superset | ef-external | helm |
keycloak | kubernetes/external/bitnami/keycloak | ef-external | helm |
mongo | kubernetes/external/bitnami/mongodb | ef-external | helm |
minio | kubernetes/external/bitnami/minio | ef-external | helm |
redis | kubernetes/external/bitnami/redis | ef-external | helm |
grafana | kubernetes/external/bitnami/grafana | ef-external | helm |
use the following to access the components from the browser
Components | Path |
---|---|
keycloak | https: //{FQDN}/auth/ |
unified-admin | https: //{FQDN}/unified-admin |
unified-agent | https: //{FQDN}/unified-agent |
garfana | https: //{FQDN}/garafana |
rasa | https: //{FQDN}: 8000 |