日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

應用使用HPA

由于Argo CD會定時同步Git倉庫和集群中應用的狀態,會和通過容器水平伸縮(HPA)來控制Pod副本數的行為發生沖突。因此對于使用GitOps發布的應用,如果使用容器水平伸縮控制Pod副本數,您需要對應用進行相應配置避免產生沖突。配置方式按照副本數分為默認1個副本和默認多個副本兩種場景。

默認1個副本

如果您的應用默認的Pod副本數為1,并且應用使用HPA來控制副本數,則僅需要將Git倉庫應用中的Deployment資源的replicas字段注釋掉。

示例如下:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
spec:
  # do not include replicas in the manifests if you want replicas to be controlled by HPA
  # replicas: 1
  template:
    spec:
      containers:
      - image: nginx:1.7.9
        name: nginx
        ports:
        - containerPort: 80
...

默認多個副本

如果您的應用需要默認使用多個副本,該場景下需要根據Diffing Customization進行配置,忽略spec.replicas的Differences,這樣Argo CD不會去管理Pod的副本數,副本數會被HPA單獨管理。

以下為您提供應用級別和系統級別兩種配置方式,更多信息,請參見Argo CD Diffing Customization

Ignore Differences應用級別的配置

應用級別的配置是指僅對于指定Application中的資源生效,配置Application的.spec.ignoreDifferences忽略Deployment資源的spec.replicas

如需對確定Deployment生效,可以指定其name和namespace。

示例如下:

apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
  name: app-test
  namespace: argocd
spec:
  ignoreDifferences:
  - group: apps
    kind: Deployment
    #name: test
    #namespace: default
    jsonPointers:
    - /spec/replicas
  ...

Ignore Differences系統級別的配置

系統級別的配置是指對于整個艦隊的資源生效。在argocd/argocd-cm中配置,忽略由managers管理的Kubernetes資源的spec.replicas

配置示例如下,其中ACK One GitOps需要配置manager controlplane-kcm

apiVersion: v1
data:
  ...
  resource.customizations.ignoreDifferences.all: |
    managedFieldsManagers:
    - kube-controller-manager
    - controlplane-kcm
    jsonPointers:
    - /spec/replicas
kind: ConfigMap
metadata:
  name: argocd-cm
  namespace: argocd

相關文檔