1.14. 使用 Red Hat OpenShift GitOps 安装 OLM Operator
带有集群配置的 Red Hat OpenShift GitOps 管理特定集群范围的资源,并负责安装集群 Operator 或任何命名空间范围的 OLM Operator。
考虑作为集群管理员的情况,您必须安装 OLM Operator,如 Tekton。您可以使用 OpenShift Container Platform Web 控制台手动安装 Tekton Operator 或 OpenShift CLI,在集群中手动安装 Tekton 订阅和 Tekton Operator 组。
Red Hat OpenShift GitOps 将 Kubernetes 资源放置在 Git 存储库中。作为集群管理员,使用 Red Hat OpenShift GitOps 管理和自动化其他 OLM Operator 安装,而无需手动步骤。例如,在使用 Red Hat OpenShift GitOps 将 Tekton 订阅放在 Git 仓库后,Red Hat OpenShift GitOps 会自动从 Git 仓库获取此 Tekton 订阅,并在集群中安装 Tekton Operator。
1.14.1. 安装集群范围的 Operator 复制链接链接已复制到粘贴板!
Operator Lifecycle Manager (OLM) 为集群范围的 Operator 使用 openshift-operators 命名空间中的默认 global-operators Operator 组。因此,您不必在 Gitops 仓库中管理 OperatorGroup 资源。但是,对于命名空间范围的 Operator,您必须管理该命名空间中的 OperatorGroup 资源。
要安装集群范围的 Operator,请在 Git 仓库中创建并放置所需 Operator 的 Subscription 资源。
示例:Grafana Operator 订阅
apiVersion: operators.coreos.com/v1alpha1
kind: Subscription
metadata:
name: grafana
spec:
channel: v4
installPlanApproval: Automatic
name: grafana-operator
source: redhat-operators
sourceNamespace: openshift-marketplace
1.14.2. 安装 namepace-scoped Operator 复制链接链接已复制到粘贴板!
要安装命名空间范围的 Operator,请在 Git 仓库中创建并放置所需 Operator 的 Subscription 和 OperatorGroup 资源。
示例:Ansible Automation Platform Resource Operator
# ...
apiVersion: v1
kind: Namespace
metadata:
labels:
openshift.io/cluster-monitoring: "true"
name: ansible-automation-platform
# ...
apiVersion: operators.coreos.com/v1
kind: OperatorGroup
metadata:
name: ansible-automation-platform-operator
namespace: ansible-automation-platform
spec:
targetNamespaces:
- ansible-automation-platform
# ...
apiVersion: operators.coreos.com/v1alpha1
kind: Subscription
metadata:
name: ansible-automation-platform
namespace: ansible-automation-platform
spec:
channel: patch-me
installPlanApproval: Automatic
name: ansible-automation-platform-operator
source: redhat-operators
sourceNamespace: openshift-marketplace
# ...
当使用 Red Hat OpenShift GitOps 部署多个 Operator 时,您必须在对应的命名空间中创建单个 Operator 组。如果一个命名空间中存在多个 Operator 组,则在该命名空间中创建的任何 CSV 都会变为带有 TooManyOperatorGroups 原因的 failure 状态。在相应命名空间中的 Operator 组数量达到一个后,所有以前有 failure 状态的 CSV 都会过渡到 pending 状态。您需要手动批准待处理的安装计划以完成 Operator 安装。