3.5. 删除 Red Hat OpenShift Service Mesh

这个过程允许您从现有的 OpenShift Container Platform 实例中删除 Red Hat OpenShift Service Mesh。在删除 Operator 前移除 control plane。

3.5.1. 删除 Red Hat OpenShift Service Mesh control plane

您可以使用 OpenShift Container Platform web 控制台或 CLI 删除 Service Mesh control plane。

3.5.1.1. 使用 Web 控制台删除 control plane

按照以下步骤,使用 Web 控制台删除 Red Hat OpenShift Service Mesh control plane。

先决条件

  • 已部署了 Red Hat OpenShift Service Mesh control plane。

流程

  1. 登陆到 OpenShift Container Platform Web 控制台。
  2. Project 菜单,从列表中选择 istio-system 项目。
  3. 导航到 OperatorsInstalled Operators
  4. Provided APIs 下的 Service Mesh Control Plane
  5. ServiceMeshControlPlane 菜单 kebab .
  6. Delete Service Mesh Control Plane
  7. 在确认窗口中点 Delete 删除 ServiceMeshControlPlane

3.5.1.2. 通过 CLI 删除 control plane

按照以下步骤,使用 CLI 删除 Red Hat OpenShift Service Mesh control plane。

先决条件

  • 已部署了 Red Hat OpenShift Service Mesh control plane。
  • 访问 OpenShift Container Platform 命令行界面 (CLI) 也称为 oc
流程

当删除 ServiceMeshControlPlane 时,Service Mesh 会通知 Operator 开始卸载已安装的所有内容。

提示

您可以使用一个短的别名 smcp 来替换 servicemeshcontrolplane

  1. 登录 OpenShift Container Platform CLI。
  2. 运行这个命令来获得安装的 ServiceMeshControlPlane 的名称:

    $ oc get servicemeshcontrolplanes -n istio-system
  3. 使用以上命令中的输出替换 <name_of_custom_resource>,运行这个命令来删除自定义资源:

    $ oc delete servicemeshcontrolplanes -n istio-system <name_of_custom_resource>

3.5.2. 删除安装的 Operator

您必须删除 Operator 才可以成功删除 Red Hat OpenShift Service Mesh。在移除 Red Hat OpenShift Service Mesh Operator 后,必须删除 Jaeger Operator 、Kiali Operator 和 Elasticsearch Operator。

3.5.2.1. 删除 Red Hat OpenShift Service Mesh Operator

按照以下步骤删除 Red Hat OpenShift Service Mesh Operator。

先决条件

  • 访问 OpenShift Container Platform Web 控制台。
  • 必须安装 Red Hat OpenShift Service Mesh Operator。

流程

  1. 登陆到 OpenShift Container Platform Web 控制台。
  2. OperatorsInstalled Operators页中,滚动页或使用 Filter by name 找到 Red Hat OpenShift Service Mesh Operator。然后点击它。
  3. Operator Details 页面右侧,从 Actions 下拉菜单中选择 Uninstall Operator
  4. 如果要删除所有安装相关组件,则在看到 Remove Operator Subscription 窗口提示时,勾选 Also completely remove the Operator from the selected namespace 复选框。这会删除 CSV,并删除与 Operator 关联的 Pod 、部署 、crds 和 CR。

3.5.2.2. 删除 Jaeger Operator

按照以下步骤删除 Jaeger Operator。

先决条件

  • 访问 OpenShift Container Platform Web 控制台。
  • 必须安装 Jaeger Operator。

流程

  1. 登陆到 OpenShift Container Platform Web 控制台。
  2. OperatorsInstalled Operators 页中,通过滚动页或使用 Filter by name 来找到 Jaeger Operator。然后点击它。
  3. Operator Details 页面右侧,从 Actions 下拉菜单中选择 Uninstall Operator
  4. 如果要删除所有安装相关组件,则在看到 Remove Operator Subscription 窗口提示时,勾选 Also completely remove the Operator from the selected namespace 复选框。这会删除 CSV,并删除与 Operator 关联的 Pod 、部署 、crds 和 CR。

3.5.2.3. 删除 Kiali Operator

按照以下步骤删除 Kiali Operator。

先决条件

  • 访问 OpenShift Container Platform Web 控制台。
  • 必须安装 Kiali Operator。

流程

  1. 登陆到 OpenShift Container Platform Web 控制台。
  2. OperatorsInstalled Operators 页中,通过滚动页或使用 Filter by name 找到 Kiali Operator。然后点击它。
  3. Operator Details 页面右侧,从 Actions 下拉菜单中选择 Uninstall Operator
  4. 如果要删除所有安装相关组件,则在看到 Remove Operator Subscription 窗口提示时,勾选 Also completely remove the Operator from the selected namespace 复选框。这会删除 CSV,并删除与 Operator 关联的 Pod 、部署 、crds 和 CR。

3.5.2.4. 删除 Elasticsearch Operator

按照以下步骤删除 Elasticsearch Operator。

先决条件

  • 访问 OpenShift Container Platform Web 控制台。
  • 必须安装 Elasticsearch Operator。

流程

  1. 登陆到 OpenShift Container Platform Web 控制台。
  2. OperatorsInstalled Operators 页中,通过滚动页或使用 Filter by name 找到 Elasticsearch Operator。然后点击它。
  3. Operator Details 页面右侧,从 Actions 下拉菜单中选择 Uninstall Operator
  4. 如果要删除所有安装相关组件,则在看到 Remove Operator Subscription 窗口提示时,勾选 Also completely remove the Operator from the selected namespace 复选框。这会删除 CSV,并删除与 Operator 关联的 Pod 、部署 、crds 和 CR。

3.5.2.5. 清理 Operator 资源

在使用 OperatorHub 接口删除 Red Hat OpenShift Service Mesh Operator 后会剩下一些没有被删除的资源。按照以下步骤手工删除这些资源。

先决条件

  • 具有集群管理访问权限的帐户。
  • 访问 OpenShift Container Platform 命令行界面 (CLI) 也称为 oc

流程

  1. 以集群管理员身份登录到 OpenShift Container Platform CLI。
  2. 在卸载 Operators 后运行以下命令清理资源:

    注意

    用安装了 Red Hat OpenShift Service Mesh Operator 的项目的名称替换 <operator-project> 。这通常是 openshift-operators

    $ oc delete validatingwebhookconfiguration/<operator-project>.servicemesh-resources.maistra.io
    $ oc delete mutatingwebhoookconfigurations/<operator-project>.servicemesh-resources.maistra.io
    $ oc delete -n <operator-project> daemonset/istio-node
    $ oc delete clusterrole/istio-admin clusterrole/istio-cni clusterrolebinding/istio-cni
    $ oc get crds -o name | grep '.*\.istio\.io' | xargs -r -n 1 oc delete
    $ oc get crds -o name | grep '.*\.maistra\.io' | xargs -r -n 1 oc delete