apiVersion: argoproj.io/v1alpha1
kind: RolloutManager
metadata:
name: argo-rollout
namespace: openshift-gitops
spec: {}
要在安装 Red Hat OpenShift GitOps Operator 到集群后使用 Argo Rollouts 并管理渐进式交付,您可以在选择的命名空间中创建和配置一个RolloutManager自定义资源 (CR) 实例。您可以为单个或多个命名空间设置RolloutManager CR 的范围。
您可以访问具有cluster-admin权限的集群。
您可以访问 OpenShift Container Platform Web 控制台。
Red Hat OpenShift GitOps 1.9.0 或更高版本已安装在您的集群上。
要使用 Red Hat OpenShift GitOps 中的 Argo Rollouts 管理部署的渐进式交付,您必须在您选择的命名空间中创建和配置一个RolloutManager自定义资源 (CR)。默认情况下,任何新的argo-rollouts实例都只有权限管理其部署所在命名空间中的资源,但您可以根据需要在多个命名空间中使用 Argo Rollouts。
Red Hat OpenShift GitOps 1.9.0 或更高版本已安装在您的集群上。
以集群管理员身份登录 OpenShift Container Platform Web 控制台。
在**管理员**视角下,点击**Operators** → **已安装的 Operators**。
从**项目**下拉菜单中创建或选择您想要创建和配置RolloutManager自定义资源 (CR) 的项目。
从已安装的 Operators 中选择**Red Hat OpenShift GitOps**。
在**详细信息**选项卡下的**提供的 API**部分,点击**RolloutManager**面板中的**创建实例**。
在**创建 RolloutManager**页面上,选择**YAML 视图**并使用默认 YAML 或根据您的需求进行编辑。
RolloutManager CRapiVersion: argoproj.io/v1alpha1
kind: RolloutManager
metadata:
name: argo-rollout
namespace: openshift-gitops
spec: {}
点击**创建**。
在**RolloutManager**选项卡下的**RolloutManagers**部分,验证 RolloutManager 实例的**状态**字段是否显示为**阶段:可用**。
在左侧导航窗格中,验证命名空间范围内的支持资源的创建。
点击**工作负载** → **部署**以验证argo-rollouts部署是否可用,且**状态**显示为正在运行的1 of 1 pods。
点击**工作负载** → **密钥**以验证argo-rollouts-notification-secret密钥是否可用。
点击**网络** → **服务**以验证argo-rollouts-metrics服务是否可用。
点击**用户管理** → **角色**以验证argo-rollouts角色和argo-rollouts-aggregate-to-admin、argo-rollouts-aggregate-to-edit以及argo-rollouts-aggregate-to-view集群角色是否可用。
点击**用户管理** → **角色绑定**以验证argo-rollouts角色绑定是否可用。
卸载 Red Hat OpenShift GitOps Operator 不会删除安装过程中创建的资源。在卸载 Red Hat OpenShift GitOps Operator 之前,您必须手动删除RolloutManager自定义资源 (CR)。
Red Hat OpenShift GitOps 1.9.0 或更高版本已安装在您的集群上。
您的命名空间中存在一个RolloutManager CR。
以集群管理员身份登录 OpenShift Container Platform Web 控制台。
在**管理员**视角下,点击**Operators** → **已安装的 Operators**。
点击**项目**下拉菜单,并选择包含RolloutManager CR 的项目。
从已安装的 Operators 中选择**Red Hat OpenShift GitOps**。
点击**RolloutManager**选项卡,在**RolloutManagers**部分查找 RolloutManager 实例。
点击该实例。
从下拉菜单中点击**操作** → **删除 RolloutManager**,然后在对话框中点击**删除**以确认。
在**RolloutManager**选项卡下的**RolloutManagers**部分,验证 RolloutManager 实例是否不再可用。
在左侧导航窗格中,验证命名空间范围内的支持资源的删除。
点击**工作负载** → **部署**以验证argo-rollouts部署是否已删除。
点击**工作负载** → **密钥**以验证argo-rollouts-notification-secret密钥是否已删除。
点击**网络** → **服务**以验证argo-rollouts-metrics服务是否已删除。
点击**用户管理** → **角色**以验证argo-rollouts角色和argo-rollouts-aggregate-to-admin、argo-rollouts-aggregate-to-edit以及argo-rollouts-aggregate-to-view集群角色是否已删除。
点击**用户管理** → **角色绑定**以验证argo-rollouts角色绑定是否已删除。
您可以在 Linux 上安装 Argo Rollouts CLI。
您已安装 OpenShift Container Platform CLI (oc)。
通过运行以下命令下载最新版本的 Argo Rollouts CLI 二进制文件kubectl-argo-rollouts
$ curl -LO https://github.com/argoproj/argo-rollouts/releases/latest/download/kubectl-argo-rollouts-linux-amd64
通过运行以下命令确保kubectl-argo-rollouts二进制文件可执行。
$ chmod +x ./kubectl-argo-rollouts-linux-amd64
通过运行以下命令将kubectl-argo-rollouts二进制文件移动到系统路径。
# mv ./kubectl-argo-rollouts-linux-amd64 /usr/local/bin/kubectl-argo-rollouts
|
确保您拥有运行此命令的超级用户权限。 |
通过运行以下命令并接收类似的输出,验证插件是否已正确安装。
$ oc argo rollouts version
kubectl-argo-rollouts: v1.6.6+737ca89
BuildDate: 2024-02-13T15:39:31Z (1)
GitCommit: 737ca89b42e4791e96e05b438c2b8540737a2a1a
GitTreeState: clean
GoVersion: go1.20.14 (2)
Compiler: gc
Platform: linux/amd64 (3)
| 1 | Argo Rollouts 二进制文件的构建日期信息。 |
| 2 | 用于构建 Argo Rollouts 二进制文件的 Go 语言版本。 |
| 3 | 用于构建 Argo Rollouts 二进制文件的平台。 |
如果您是 macOS 用户,您可以使用Homebrew包管理器安装 Argo Rollouts CLI。
您已安装 Homebrew (brew) 包管理器。
运行以下命令以安装 Argo Rollouts CLI
$ brew install argoproj/tap/kubectl-argo-rollouts
要在 Argo CD 实例上启用 Argo Rollouts UI,请完成以下步骤。
您可以访问具有cluster-admin权限的集群。
您已在 OpenShift Container Platform 集群上安装了 Red Hat OpenShift GitOps Operator。
您已配置了**RolloutManager**自定义资源 (CR)。
登录 OpenShift Container Platform Web 控制台。
在 Web 控制台的**管理员**视角下,点击**Operators** → **已安装的 Operators**。
从已安装的 Operators 列表中选择**Red Hat OpenShift GitOps**,然后点击**Argo CD**选项卡。
在openshift-gitops命名空间下的**Argo CD**选项卡中选择 Argo CD 实例。
点击**YAML**并添加以下配置以配置 Argo Rollouts UI
apiVersion: argoproj.io/v1beta1
kind: ArgoCD
metadata:
name: argocd
spec:
server:
enableRolloutsUI: true (1)
| 1 | 将此值设置为true以配置enableRolloutsUI字段。 |
点击**保存**。
在 Web 控制台的**管理员**视角中,导航到 菜单 → **OpenShift GitOps** → **集群 Argo CD**。Argo CD Web UI 的登录页面将显示在新窗口中。
要在 Argo CD Web UI 中访问 Argo Rollouts UI,请配置包含 Argo Rollouts 资源的示例应用程序。
|
|