1.4. 在集群级别运行 Argo CD 实例
默认 Argo CD 实例和附带的控制器(由 Red Hat OpenShift GitOps Operator 安装)现在可以通过设置一个简单的配置切换在集群的基础架构节点上运行。
流程
标记现有节点:
$ oc label node <node-name> node-role.kubernetes.io/infra=""
可选:如果需要,您还可以在基础架构节点上应用污点并隔离工作负载,并防止其他工作负载在这些节点上调度:
$ oc adm taint nodes -l node-role.kubernetes.io/infra \ infra=reserved:NoSchedule infra=reserved:NoExecute
在
GitOpsService
自定义资源中添加runOnInfra
切换:apiVersion: pipelines.openshift.io/v1alpha1 kind: GitopsService metadata: name: cluster spec: runOnInfra: true
可选:如果将污点添加到节点,则将
容限
添加到GitOpsService
自定义资源中。Example
apiVersion: pipelines.openshift.io/v1alpha1 kind: GitopsService metadata: name: cluster spec: runOnInfra: true tolerations: - effect: NoSchedule key: infra value: reserved - effect: NoExecute key: infra value: reserved
-
通过在控制台 UI 中查看 Pods
Pod details,验证 openshift-gitops
命名空间中的工作负载现在已调度到基础架构节点上。
注意
任何手工添加到默认 Argo CD 自定义资源中的 nodeSelectors
和 tolerations
,都会被 GitOpsService
自定义资源的 tolerations
覆盖。
其他资源
- 要了解更多有关污点和容限的信息,请参阅使用节点污点控制 pod 放置。
- 如需有关基础架构机器集的更多信息,请参阅 创建基础架构机器集。