第 1 章 准备安装 Red Hat OpenShift GitOps


在 OpenShift Container Platform 上安装 Red Hat OpenShift GitOps 前,请阅读以下有关大小要求和先决条件的信息。大小要求还为 Red Hat OpenShift GitOps Operator 实例化的默认 ArgoCD 实例提供大小详情。

1.1. GitOps 的大小要求

Red Hat OpenShift GitOps 是为云原生应用程序实施持续部署的一种声明方法。通过 GitOps,您可以定义并配置应用程序的 CPU 和内存要求。

每次安装 Red Hat OpenShift GitOps Operator 时,命名空间上的资源都会在定义的限制中安装。如果默认安装没有设置任何限制或请求,Operator 会使用配额在命名空间中失败。如果没有足够资源,集群无法调度 ArgoCD 相关 pod。下表列出了默认工作负载的资源请求和限值:

WorkloadCPU 请求CPU 限值内存请求内存限值

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

另外,您还可以在 oc 命令中使用 ArgoCD 自定义资源来查看特定并修改它们:

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

1.1.1. argocd-redis 的大小要求

在 Red Hat OpenShift GitOps Operator 中应用程序的容量规划阶段,您必须确保为 argocd-redis pod 分配足够数量的资源,如 memory、CPU 和存储。

Redis pod 的默认内存限值可能不足以管理大量资源。在这些情况下,您必须提高内存限制,监控内存指标,并在应用程序部署扩展时更改内存配置。

以下命令显示 openshift-gitops 命名空间中的 Redis pod 的内存配置示例:

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

输出示例

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

1
分配给 pod 的最大资源限值阈值。
2
分配给 pod 的最低资源限值阈值。

以下示例命令更改 Redis pod 的内存配置。最高资源限值阈值设置为 8 GiB,最低值设为 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"}]'

输出示例

argocd.argoproj.io/openshift-gitops patched

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.