8.5. 卸载 Web 终端


卸载 Web Terminal Operator 不会删除安装 Operator 时创建的任何自定义资源定义 (CRD) 或受管资源。为了安全起见,您必须手动卸载这些组件。通过删除这些组件,您可以保存集群资源,因为在卸载 Operator 时终端不会闲置。

卸载 web 终端需要两步:

  1. 卸载 Web Terminal Operator 和安装 Operator 时添加的相关自定义资源 (CR)。
  2. 卸载 DevWorkspace Operator 及其作为 Web Terminal Operator 依赖项添加的相关自定义资源。

8.5.1. 删除 Web Terminal Operator

您可以通过删除 Web Terminal Operator 和 Operator 使用的自定义资源来卸载 web 终端。

先决条件

  • 您可以使用集群管理员权限访问 OpenShift Container Platform 集群。
  • 已安装 oc CLI。

流程

  1. 在 web 控制台的 Administrator 视角中,导航到 Operators Installed Operators
  2. 滚动过滤器列表或在 Filter by name 框中输入关键字以查找 Web Terminal Operator。
  3. 点击 Web Terminal Operator 的 Options 菜单 kebab ,然后选择 Uninstall Operator
  4. Uninstall Operator 确认对话框中,点 Uninstall 从集群中删除 Operator、Operator 部署和 pod。Operator 会停止运行,并且不再接收更新。

8.5.2. 删除 DevWorkspace Operator

要完全卸载 web 终端,还必须删除 DevWorkspace Operator 和 Operator 使用的自定义资源。

重要

DevWorkspace Operator 是一个独立 Operator,可能需要作为集群中安装的其他 Operator 的依赖项。只有在确保不再需要 DevWorkspace Operator 时,才按照以下步骤操作。

先决条件

  • 您可以使用集群管理员权限访问 OpenShift Container Platform 集群。
  • 已安装 oc CLI。

流程

  1. 删除 Operator 使用的 DevWorkspace 自定义资源,以及任何相关的 Kubernetes 对象:

    $ oc delete devworkspaces.workspace.devfile.io --all-namespaces --all --wait
    $ oc delete devworkspaceroutings.controller.devfile.io --all-namespaces --all --wait
    警告

    如果此步骤未完成,则终结器很难完全卸载 Operator。

  2. 删除 Operator 使用的 CRD:

    警告

    DevWorkspace Operator 提供了使用转换 Webhook 的自定义资源定义(CRD)。无法删除这些 CRD 可能会导致集群中的问题。

    $ oc delete customresourcedefinitions.apiextensions.k8s.io devworkspaceroutings.controller.devfile.io
    $ oc delete customresourcedefinitions.apiextensions.k8s.io devworkspaces.workspace.devfile.io
    $ oc delete customresourcedefinitions.apiextensions.k8s.io devworkspacetemplates.workspace.devfile.io
    $ oc delete customresourcedefinitions.apiextensions.k8s.io devworkspaceoperatorconfigs.controller.devfile.io
  3. 验证所有涉及的自定义资源定义都已移除。以下命令不应该显示任何输出:

    $ oc get customresourcedefinitions.apiextensions.k8s.io | grep "devfile.io"
  4. 删除 devworkspace-webhook-server 部署、变异并验证 Webhook:

    $ oc delete deployment/devworkspace-webhook-server -n openshift-operators
    $ oc delete mutatingwebhookconfigurations controller.devfile.io
    $ oc delete validatingwebhookconfigurations controller.devfile.io
    注意

    如果您在没有删除变异并验证 Webhook 的情况下删除 devworkspace-webhook-server 部署,则无法使用 oc exec 命令在集群中的容器中运行命令。删除 Webhook 后,您可以再次使用 oc exec 命令。

  5. 删除任何剩余的服务、secret 和配置映射。取决于具体的安装,以下命令中包含的一些资源可能不存在。

    $ oc delete all --selector app.kubernetes.io/part-of=devworkspace-operator,app.kubernetes.io/name=devworkspace-webhook-server -n openshift-operators
    $ oc delete serviceaccounts devworkspace-webhook-server -n openshift-operators
    $ oc delete clusterrole devworkspace-webhook-server
    $ oc delete clusterrolebinding devworkspace-webhook-server
  6. 卸载 DevWorkspace Operator:

    1. 在 web 控制台的 Administrator 视角中,导航到 Operators Installed Operators
    2. 滚动过滤器列表或在 Filter by name 框中输入关键字以查找 DevWorkspace Operator。
    3. 点 Operator 的 Options 菜单 kebab ,然后选择 Uninstall Operator
    4. Uninstall Operator 确认对话框中,点 Uninstall 从集群中删除 Operator、Operator 部署和 pod。Operator 会停止运行,并且不再接收更新。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.