4.3. 安装 Red Hat OpenShift GitOps

Red Hat OpenShift GitOps 使用 Argo CD 管理特定集群范围的资源,包括:集群 Operator、可选 Operator Lifecycle Manager(OLM)Operator 和用户管理。

先决条件

  • 访问 OpenShift Container Platform web 控制台。
  • 以具有 cluster-admin 角色的用户身份登录。
  • 以管理员身份登陆到 OpenShift Container Platform 集群。
  • 您的集群启用了 Marketplace 功能,或者手动配置 Red Hat Operator 目录源。
警告

如果您已安装 Argo CD Operator 的 Community 版本,请在安装 Red Hat OpenShift GitOps Operator 前删除 Argo CD Community Operator。

本指南介绍如何将 Red Hat OpenShift GitOps Operator 安装到 OpenShift Container Platform 集群,并登录 Argo CD 实例。

重要

latest 频道启用 Red Hat OpenShift GitOps Operator 最新稳定版本的安装。目前,这是安装 Red Hat OpenShift GitOps Operator 的默认频道。

要安装 Red Hat OpenShift GitOps Operator 的特定版本,集群管理员可以使用对应的 gitops-<version> 频道。例如,要安装 Red Hat OpenShift GitOps Operator 版本 1.8.x,您可以使用 gitops-1.8 频道。

4.3.1. 在 Web 控制台中安装 Red Hat OpenShift GitOps Operator

流程

  1. 打开 Web 控制台的 Administrator 视角,并进入左侧菜单中的 OperatorsOperatorHub
  2. 搜索 OpenShift GitOps,点 Red Hat OpenShift GitOps 标题,然后点 Install

    Red Hat OpenShift GitOps 将安装在集群的所有命名空间中。

安装 Red Hat OpenShift GitOps Operator 后,它会自动设置 openshift-gitops 命名空间中的已就绪的 Argo CD 实例,并在控制台工具栏中显示 Argo CD 图标。您可以在项目下为您的应用程序创建后续的 Argo CD 实例。

4.3.2. 使用 CLI 安装 Red Hat OpenShift GitOps Operator

您可以使用 CLI 从 OperatorHub 安装 Red Hat OpenShift GitOps Operator。

流程

  1. 创建一个 Subscription 对象 YAML 文件,以便为 Red Hat OpenShift GitOps 订阅一个命名空间,如 sub.yaml

    订阅示例

    apiVersion: operators.coreos.com/v1alpha1
    kind: Subscription
    metadata:
      name: openshift-gitops-operator
      namespace: openshift-operators
    spec:
      channel: latest 1
      installPlanApproval: Automatic
      name: openshift-gitops-operator 2
      source: redhat-operators 3
      sourceNamespace: openshift-marketplace 4

    1
    指定您要订阅 Operator 的频道名称。
    2
    指定要订阅的 Operator 的名称。
    3
    指定提供 Operator 的 CatalogSource 的名称。
    4
    CatalogSource 的命名空间。将 openshift-marketplace 用于默认的 OperatorHub CatalogSource。
  2. 订阅应用到集群:

    $ oc apply -f openshift-gitops-sub.yaml
  3. 安装完成后,确保 openshift-gitops 命名空间中的所有 pod 都在运行:

    $ oc get pods -n openshift-gitops

    输出示例

    NAME                                                      	READY   STATUS	RESTARTS   AGE
    cluster-b5798d6f9-zr576                                   	1/1 	Running   0      	65m
    kam-69866d7c48-8nsjv                                      	1/1 	Running   0      	65m
    openshift-gitops-application-controller-0                 	1/1 	Running   0      	53m
    openshift-gitops-applicationset-controller-6447b8dfdd-5ckgh 1/1 	Running   0      	65m
    openshift-gitops-redis-74bd8d7d96-49bjf                   	1/1 	Running   0      	65m
    openshift-gitops-repo-server-c999f75d5-l4rsg              	1/1 	Running   0      	65m
    openshift-gitops-server-5785f7668b-wj57t                  	1/1 	Running   0      	53m

4.3.3. 使用 Argo CD admin 帐户登录到 Argo CD 实例

Red Hat OpenShift GitOps Operator 会自动创建一个可用的 Argo CD 实例,可在 openshift-gitops 命名空间中使用。

先决条件

  • 在集群中安装了 Red Hat OpenShift GitOps Operator。

流程

  1. 在 Web 控制台的 Administrator 视角中,导航到 OperatorsInstalled Operators,以验证是否安装了 Red Hat OpenShift GitOps Operator。
  2. 进入 red hat applications menu icon menu → OpenShift GitOpsCluster Argo CD。Argo CD UI 的登录页面显示在新窗口中。
  3. 获取 Argo CD 实例的密码:

    1. 在控制台左侧面板中,使用视角切换器切换到 Developer 视角。
    2. 使用 Project 下拉列表,再选择 openshift-gitops 项目。
    3. 使用左侧导航面板导航到 Secrets 页面。
    4. 选择 openshift-gitops-cluster 实例来显示密码。
    5. 复制密码。

      注意

      要使用 OpenShift Container Platform 凭证登录,请在 Argo CD 用户界面中选择 LOG IN VIA OPENSHIFT 选项。

  4. 使用此密码和 admin 作为用户名在新窗口中登录到 Argo CD UI。
注意

您不能在同一命名空间中创建两个 Argo CD CR。