4.14. 配置资源配额或请求
使用 Argo CD 自定义资源,您可以为 Argo CD 工作负载创建、更新和删除资源请求和限值。
4.14.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: 1Gi4.14.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"}]'4.14.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"}]'