Questo contenuto non è disponibile nella lingua selezionata.

Chapter 1. Preparing to install Red Hat OpenShift GitOps


Read the following information about sizing requirements and prerequisites before you install Red Hat OpenShift GitOps on OpenShift Container Platform. Sizing requirements also provides the sizing details for the default ArgoCD instance that is instantiated by the Red Hat OpenShift GitOps Operator.

1.1. Sizing requirements for GitOps

Red Hat OpenShift GitOps is a declarative way to implement continuous deployment for cloud-native applications. Through GitOps, you can define and configure the CPU and memory requirements of your application.

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:

WorkloadCPU requestsCPU limitsMemory requestsMemory limits

argocd-application-controller

1

2

1024Mi

2048Mi

applicationset-controller

1

2

512Mi

1024Mi

argocd-server

0.125

0.5

128Mi

256Mi

argocd-repo-server

0.5

1

256Mi

1024Mi

argocd-redis

0.25

0.5

128Mi

256Mi

argocd-dex

0.25

0.5

128Mi

256Mi

HAProxy

0.25

0.5

128Mi

256Mi

Optionally, you can also use the ArgoCD custom resource with the oc command to see the specifics and modify them:

oc edit argocd <name of argo cd> -n namespace

1.1.1. Sizing requirements for argocd-redis

During the capacity planning stage for your application in the Red Hat OpenShift GitOps Operator, you must ensure that an adequate amount of resources, such as memory, CPU, and storage, are allocated for the argocd-redis pod.

The default memory limit for the Redis pod might not be enough to manage a large number of resources. In these instances, you must increase the memory limit, monitor the memory metrics, and change the memory configuration while the application deployment scales up.

The following command shows the example of the memory configuration for a Redis pod in the openshift-gitops namespace:

$ oc get argocd -n openshift-gitops openshift-gitops -o json | jq '.spec.redis.resources'

Example Output

{
    "limits": { 1
        "cpu": "500m",
        "memory": "256Mi"
  },
  "requests": { 2
    "cpu": "250m",
    "memory": "128Mi"
  }
}

1
The highest resource limit threshold allocated to the pod.
2
The lowest resource limit threshold allocated to the pod.

The following example command changes the memory configuration for a Redis pod. The highest resource limit threshold is set to 8 GiB and the lowest is set to 256 MiB.

$ oc patch argocd -n openshift-gitops openshift-gitops --type json -p '[{"op": "replace", "path":  \
  "/spec/redis/resources/limits/memory", "value": "8Gi"}, {"op": "replace", "path": \
  "/spec/redis/resources/requests/memory", "value": "256Mi"}]'

Example Output

argocd.argoproj.io/openshift-gitops patched

Red Hat logoGithubRedditYoutubeTwitter

Formazione

Prova, acquista e vendi

Community

Informazioni sulla documentazione di Red Hat

Aiutiamo gli utenti Red Hat a innovarsi e raggiungere i propri obiettivi con i nostri prodotti e servizi grazie a contenuti di cui possono fidarsi.

Rendiamo l’open source più inclusivo

Red Hat si impegna a sostituire il linguaggio problematico nel codice, nella documentazione e nelle proprietà web. Per maggiori dettagli, visita ilBlog di Red Hat.

Informazioni su Red Hat

Forniamo soluzioni consolidate che rendono più semplice per le aziende lavorare su piattaforme e ambienti diversi, dal datacenter centrale all'edge della rete.

© 2024 Red Hat, Inc.