5.2. 使用 CLI 卸载 OpenShift 沙盒容器
您可以使用 Red Hat OpenShift 命令行界面(CLI) 卸载 OpenShift 沙盒容器。按照显示它们的顺序按照以下步骤操作。
5.2.1. 使用 CLI 删除 OpenShift 沙盒容器 pod
要卸载 OpenShift 沙盒容器,您必须首先删除所有使用 kata 作为 runtimeClass 的 pod。
先决条件
-
已安装 OpenShift CLI(
oc)。 -
已安装命令行 JSON 处理器 (
jq)。
流程
运行以下命令,搜索使用
kata作为runtimeClass的 pod:$ oc get pods -A -o json | jq -r '.items[] | select(.spec.runtimeClassName == "kata").metadata.name'
要删除每个 pod,请运行以下命令:
$ oc delete pod <pod-name>
5.2.2. 使用 CLI 删除 KataConfig 自定义资源
从集群中删除并卸载 kata 运行时及其所有相关资源,如 CRI-O 配置和 RuntimeClass。
先决条件
- 已在集群中安装了 Red Hat OpenShift 4.12。
-
已安装 OpenShift CLI(
oc)。 -
您可以使用具有
cluster-admin角色的用户访问集群。
删除 KataConfig CR 会自动重启 worker 节点。重启可能需要 10 到 60 分钟。妨碍重启时间的因素如下:
- 带有更多 worker 节点的大型 Red Hat OpenShift 部署。
- 激活 BIOS 和 Diagnostics 实用程序。
- 在硬盘而不是 SSD 上部署。
- 在物理节点上部署,如裸机,而不是在虚拟节点上部署。
- CPU 和网络较慢。
流程
运行以下命令来删除
KataConfig自定义资源:$ oc delete kataconfig <KataConfig_CR_Name>
OpenShift 沙盒容器 Operator 会删除最初为在集群中启用运行时创建的所有资源。
在删除过程中,CLI 会停止响应,直到所有 worker 节点重启为止。等待进程完成,然后执行验证或继续进行后续步骤。
验证
要验证
KataConfig自定义资源是否已删除,请运行以下命令:$ oc get kataconfig <KataConfig_CR_Name>
输出示例
No KataConfig instances exist
5.2.3. 使用 CLI 删除 OpenShift 沙盒容器 Operator
通过删除 Operator 订阅、Operator 组、集群服务版本(CSV)和命名空间从集群中删除 OpenShift 沙盒容器 Operator。
先决条件
- 已在集群中安装了 Red Hat OpenShift 4.10。
-
已安装 OpenShift CLI(
oc)。 -
您已安装了 readand-line JSON 处理器(
jq)。 -
您可以使用具有
cluster-admin角色的用户访问集群。
流程
运行以下命令,从订阅中获取 OpenShift 沙盒容器的集群服务版本 (CSV) 名称:
CSV_NAME=$(oc get csv -n openshift-sandboxed-containers-operator -o=custom-columns=:metadata.name)
运行以下命令,从 Operator Lifecyle Manager(OLM)中删除 OpenShift 沙盒容器 Operator 订阅:
$ oc delete subscription sandboxed-containers-operator -n openshift-sandboxed-containers-operator
运行以下命令,删除 OpenShift 沙盒容器的 CSV 名称:
$ oc delete csv ${CSV_NAME} -n openshift-sandboxed-containers-operator运行以下命令来获取 OpenShift 沙盒容器 Operator 组名称:
$ OG_NAME=$(oc get operatorgroup -n openshift-sandboxed-containers-operator -o=jsonpath={..name})运行以下命令来删除 OpenShift 沙盒容器 Operator 组名称:
$ oc delete operatorgroup ${OG_NAME} -n openshift-sandboxed-containers-operator运行以下命令来删除 OpenShift 沙盒容器命名空间:
$ oc delete namespace openshift-sandboxed-containers-operator
5.2.4. 使用 CLI 删除 KataConfig 自定义资源定义
KataConfig 自定义资源定义 (CRD) 可让您定义 KataConfig CR。从集群中删除 KataConfig CRD。
先决条件
-
已安装 OpenShift CLI(
oc)。 -
您可以使用具有
cluster-admin角色的用户访问集群。 -
您已从集群中删除
KataConfigCR。 - 您已从集群中移除了 OpenShift 沙盒容器 Operator。
流程
运行以下命令来删除
KataConfigCRD:$ oc delete crd kataconfigs.kataconfiguration.openshift.io
验证
要验证
KataConfigCRD 是否已删除,请运行以下命令:$ oc get crd kataconfigs.kataconfiguration.openshift.io
输出示例
Unknown CR KataConfig