-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #48 from stakater/managed-addons-argocd
ArgoCD Docs
- Loading branch information
Showing
6 changed files
with
117 additions
and
7 deletions.
There are no files selected for viewing
Empty file.
25 changes: 25 additions & 0 deletions
25
content/managed-addons/argocd/for-administrators/availability.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
# High Availability | ||
|
||
When configuring the ArgoCD Custom Resource within the GitOps Operator Instance Helm chart, you have the option to enable high availability for your ArgoCD instance. High availability in ArgoCD is a feature that provides redundancy and fault tolerance, ensuring continuous operation of the ArgoCD server even in the event of failures or disruptions. | ||
|
||
Enabling high availability involves setting up multiple replicas of the ArgoCD server, distributed across different nodes or availability zones in your cluster. This configuration ensures that if one replica becomes unavailable, the other replicas can continue serving requests and managing deployments without interruption. | ||
|
||
By leveraging high availability in ArgoCD, you can achieve improved reliability, scalability, and resilience for your continuous deployment workflows. It helps to mitigate the impact of server failures, network issues, or maintenance activities, ensuring uninterrupted access and management of your applications. | ||
|
||
With high availability enabled, your ArgoCD instance can handle increased traffic and workload, as requests can be distributed among the available replicas. This helps to optimize performance and responsiveness, even during peak usage periods. | ||
|
||
Moreover, high availability in ArgoCD also enhances the recovery process in case of failures. If one replica goes down, the remaining replicas can automatically take over the workload, minimizing the impact on your deployments and ensuring business continuity. | ||
|
||
The following section of YAML enables high availability in ArgoCD Custom Resource. | ||
|
||
```yaml | ||
ha: | ||
enabled: false | ||
resources: | ||
limits: | ||
cpu: 500m | ||
memory: 256Mi | ||
requests: | ||
cpu: 250m | ||
memory: 128M | ||
``` |
29 changes: 29 additions & 0 deletions
29
content/managed-addons/argocd/for-administrators/installation.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
# Installation | ||
|
||
ArgoCD is installed as part of GitOps Operator Dominator chart from `SAAP-addons` repository, along with other managed-addons owned by Team Dominator. | ||
|
||
## Installing OpenShift GitOps Operator Chart | ||
|
||
ArgoCD can be installed seamlessly in your Red Hat OpenShift environment through the Red Hat OpenShift GitOps Operator. This operator simplifies the installation process by providing a standardized way to manage GitOps tooling, including ArgoCD. | ||
|
||
RedHat OpenShift GitOps Operator chart is available in [SAAP-addons repository](https://github.com/stakater-ab/SAAP-addons/tree/main/rh-OpenShift-GitOps-operator). By installing the Helm chart, you can quickly set up ArgoCD with default configurations and settings. | ||
|
||
During the installation process, a subscription is created to install the GitOps Operator. This subscription ensures that you have access to the latest version of the operator and can receive updates and bug fixes seamlessly. The operator is responsible for managing the ArgoCD deployment and keeping it up to date. | ||
|
||
In addition to the operator, an operator group is also installed as part of the setup. The operator group is used to define the scope and target namespace for the operator, allowing for effective management and control over the ArgoCD deployment within your OpenShift environment. | ||
|
||
By leveraging the Red Hat OpenShift GitOps Operator, installing ArgoCD becomes a streamlined process. You can easily manage and update your ArgoCD deployment while benefiting from the rich ecosystem and support provided by Red Hat and the OpenShift platform. | ||
|
||
## Installing OpenShift GitOps Instance Chart | ||
|
||
A second GitOps Operator Instance Helm chart, also available in [SAAP-addons repository](https://github.com/stakater-ab/SAAP-addons/tree/main/rh-OpenShift-GitOps-instance), installs the instance for GitOps Operator. This Helm chart enables you to customize the behavior of the operator according to your specific requirements. | ||
|
||
By installing the GitOps Operator Instance Helm chart, you create two essential Custom Resources: App Project and ArgoCD. | ||
|
||
The ArgoCD Custom Resource is particularly significant as it allows you to define various configurations for your ArgoCD instance. These configurations include the `ArgoCD-server`, which is responsible for the core functionality of ArgoCD. Additionally, you can define configurations for `Grafana` and `Prometheus`, enabling you to monitor the health and performance of your ArgoCD deployment. | ||
|
||
Furthermore, the ArgoCD Custom Resource allows you to define RBAC (Role-Based Access Control) configurations, ensuring that only authorized individuals have access to the ArgoCD instance. You can also configure the `repo-server`, which manages the synchronization of your application manifests stored in a version control repository. | ||
|
||
For high availability scenarios, the ArgoCD Custom Resource enables you to configure a `ha-server`, ensuring redundancy and fault tolerance. Finally, you can define configurations for the `controller`, which is responsible for orchestrating deployments and managing the lifecycle of your applications. | ||
|
||
By utilizing the GitOps Operator Instance Helm chart and customizing the ArgoCD Custom Resource, you have fine-grained control over the configuration and behavior of your ArgoCD instance. This empowers you to tailor ArgoCD to meet your specific deployment needs and ensures a highly efficient and secure continuous deployment workflow. |
5 changes: 5 additions & 0 deletions
5
content/managed-addons/argocd/for-administrators/observability.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
# Observability | ||
|
||
Enabling observability in the ArgoCD Custom Resource involves configuring and enabling Prometheus and Grafana, two popular monitoring and visualization tools, within your ArgoCD deployment. By enabling `prometheus` and `grafana` to "true" in the ArgoCD Custom Resource, you can activate and leverage the capabilities of Prometheus and Grafana for comprehensive observability. | ||
|
||
With Prometheus and Grafana enabled, you can leverage the power of these tools to monitor the performance and health of your ArgoCD deployment. You can gain insights into resource utilization patterns, track synchronization and deployment metrics, and identify any potential bottlenecks or issues. The visualizations and dashboards offered by Grafana allow you to easily track and analyze the collected metrics, helping you make informed decisions and take proactive measures to optimize your continuous deployment workflows. |
13 changes: 13 additions & 0 deletions
13
content/managed-addons/argocd/for-administrators/resource-requirements.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
# Resource Requirements | ||
|
||
Every time you install the Red Hat OpenShift GitOps Operator, the resources on the namespace are installed within the defined limits. If the default installation does not set any limits or requests, the Operator fails within the namespace with quotas. Without enough resources, the cluster cannot schedule ArgoCD related pods. The following table details the resource requests and limits for the default workloads: | ||
|
||
| Workloads | CPU requests | CPU limits | Memory Requests | Memory Limits | | ||
| --- | --- | --- | --- | --- | | ||
| ArgoCD-application-controller | 1 | 2 | 1024M | 2048M | | ||
| applicationset-controller | 1 | 2 | 512M | 1024M | | ||
| ArgoCD-server | 0.125 | 0.5 | 128M | 256M | | ||
| ArgoCD-repo-server | 0.5 | 1 | 256M | 1024M | | ||
| ArgoCD-redis | 0.25 | 0.5 | 128M | 256M | | ||
| ArgoCD-dex | 0.25 | 0.5 | 128M | 256M | | ||
| `HAProxy` | 0.25 | 0.5 | 128M | 256M | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters