5.15. 配置资源配额或请求
使用 Argo CD 自定义资源,您可以为 Argo CD 工作负载创建、更新和删除资源请求和限值。
5.15.1. 使用资源请求和限值配置工作负载
您可以使用资源请求和限值创建 Argo CD 自定义资源工作负载。当您要在配置了资源配额的命名空间中部署 Argo CD 实例时,这是必需的。
以下 Argo CD 实例部署 Argo CD 工作负载,如 Application Controller
、ApplicationSet Controller
、Dex
、Redis
、Repo Server
, 和 Server
,以及带有资源请求和限值的 Server。您还可以以同样的方式创建具有资源要求的其他工作负载。
apiVersion: argoproj.io/v1alpha1 kind: ArgoCD metadata: name: example spec: server: resources: limits: cpu: 500m memory: 256Mi requests: cpu: 125m memory: 128Mi route: enabled: true applicationSet: resources: limits: cpu: '2' memory: 1Gi requests: cpu: 250m memory: 512Mi repo: resources: limits: cpu: '1' memory: 512Mi requests: cpu: 250m memory: 256Mi dex: resources: limits: cpu: 500m memory: 256Mi requests: cpu: 250m memory: 128Mi redis: resources: limits: cpu: 500m memory: 256Mi requests: cpu: 250m memory: 128Mi controller: resources: limits: cpu: '2' memory: 2Gi requests: cpu: 250m memory: 1Gi
5.15.2. 修补 Argo CD 实例以更新资源要求
您可在安装后更新所有或任何工作负载的资源要求。
流程
更新 Argo CD 命名空间中的 Argo CD 实例的 Application Controller
资源请求。
oc -n argocd patch argocd example --type='json' -p='[{"op": "replace", "path": "/spec/controller/resources/requests/cpu", "value":"1"}]' oc -n argocd patch argocd example --type='json' -p='[{"op": "replace", "path": "/spec/controller/resources/requests/memory", "value":"512Mi"}]'
5.15.3. 删除资源请求
您还可以在安装后删除所有或任何工作负载的资源要求。
流程
删除 Argo CD 命名空间中的 Argo CD 实例的 Application Controller
资源请求。
oc -n argocd patch argocd example --type='json' -p='[{"op": "remove", "path": "/spec/controller/resources/requests/cpu"}]' oc -n argocd argocd patch argocd example --type='json' -p='[{"op": "remove", "path": "/spec/controller/resources/requests/memory"}]'