第 10 章 卸装
您可以卸载 OpenShift 沙盒容器并删除机密容器环境。
10.1. 卸载 OpenShift 沙盒容器
您可以使用 OpenShift Container Platform Web 控制台或命令行卸载 OpenShift 沙盒容器。
您可以通过执行以下任务卸载 OpenShift 沙盒容器:
- 删除工作负载 pod。
-
删除
KataConfig
自定义资源(CR)。 - 卸载 OpenShift 沙盒容器 Operator。
-
删除
KataConfig
自定义资源定义(CRD)。
在删除 KataConfig
CR 前,您必须删除工作负载 pod。如果提供,pod 名称通常具有前缀 podvm
和自定义标签。如果您在云供应商上部署 OpenShift 沙盒容器或机密容器,且任何资源在遵循这些步骤后仍然保留,您可能会从云供应商收到这些资源的意外几率。在云供应商上卸载 OpenShift 沙盒容器后,检查云供应商控制台以确保删除所有资源的步骤。
10.1.1. 使用 Web 控制台卸载 OpenShift 沙盒容器
您可以使用 OpenShift Container Platform Web 控制台卸载 OpenShift 沙盒容器。
10.1.1.1. 删除工作负载 pod
您可以使用 OpenShift Container Platform Web 控制台删除 OpenShift 沙盒容器工作负载 pod。
先决条件
-
您可以使用具有
cluster-admin
角色的用户访问集群。 - 您有一个使用 OpenShift 沙盒容器运行时类的 pod 列表。
流程
-
在 OpenShift Container Platform Web 控制台中导航至 Workloads
Pods。 - 在 Search by name 字段中输入您要删除的 pod 的名称。
- 点 pod 名称打开它。
-
在 Details 页面中,检查是否为 Runtime 类 显示
kata
或kata-remote
。 -
点击 Options 菜单
并选择 Delete Pod。
- 点击 Delete。
为每个 pod 重复此步骤。
卸载使用云供应商部署的 OpenShift 沙盒容器时,您必须删除所有 pod。任何剩余的 pod 资源都可能会导致云供应商出现意外几率。
10.1.1.2. 删除 KataConfig 自定义资源
您可以使用 Web 控制台删除 KataConfig
自定义资源(CR)。
删除 KataConfig
CR 会从集群中移除并卸载 kata
或 kata-remote
运行时及其相关资源。
删除 KataConfig
CR 会自动重启 worker 节点。重启可能需要 10 到 60 分钟。妨碍重启时间的因素如下:
- 带有更多 worker 节点的大型 OpenShift Container Platform 部署。
- 激活 BIOS 和 Diagnostics 实用程序。
- 在硬盘而不是 SSD 上部署。
- 在物理节点上部署,如裸机,而不是在虚拟节点上部署。
- CPU 和网络较慢。
先决条件
-
您可以使用具有
cluster-admin
角色的用户访问集群。 -
您已删除所有使用
kata
或kata-remote
作为runtimeClass
的 pod。
流程
-
在 OpenShift Container Platform web 控制台中导航至 Operators
Installed Operators。 -
在 Search by name 字段中输入
OpenShift 沙盒容器 Operator
。 - 点 Operator 打开它,然后点 KataConfig 选项卡。
-
点 Options 菜单
并选择 Delete
KataConfig
。 - 在确认窗口中点击 Delete。
等待 kata
或 kata-remote
运行时和资源卸载以及 worker 节点重启,然后继续下一步。
卸载使用云供应商部署的 OpenShift 沙盒容器时,您必须删除所有 pod。任何剩余的 pod 资源都可能会导致云供应商出现意外几率。
10.1.1.3. 卸载 OpenShift 沙盒容器 Operator
您可以使用 OpenShift Container Platform Web 控制台卸载 OpenShift 沙盒容器 Operator。
先决条件
-
您可以使用具有
cluster-admin
角色的用户访问集群。 -
您已删除所有使用
kata
或kata-remote
作为runtimeClass
的 pod。 -
您已删除
KataConfig
自定义资源。
流程
-
导航到 Operators
Installed Operators。 -
在 Search by name 字段中输入
OpenShift 沙盒容器 Operator
。 在 Operator Details 页面右侧,从 Actions 列表中选择 Uninstall Operator。
此时会显示 Uninstall Operator? 对话框。
- 点 Uninstall 删除 Operator、Operator 部署和 pod。
-
导航至 Administration
Namespaces。 -
在 Search by name 字段中输入
openshift-sandboxed-containers-operator
。 -
点 Options 菜单
并选择 Delete Namespace。
-
在确认对话框中,输入
openshift-sandboxed-containers-operator
并点 Delete。
10.1.1.4. 删除 KataConfig CRD
您可以使用 OpenShift Container Platform Web 控制台删除 KataConfig
自定义资源定义(CRD)。
先决条件
-
您可以使用具有
cluster-admin
角色的用户访问集群。 -
您已删除所有使用
kata
或kata-remote
作为runtimeClass
的 pod。 -
您已删除
KataConfig
自定义资源。 - 您已卸载了 OpenShift 沙盒容器 Operator。
流程
-
在 Web 控制台中,导航到 Administration
CustomResourceDefinitions。 -
在 Search by name 字段中输入
KataConfig
名称。 - 点 Options 菜单并选择 Delete CustomResourceDefinition。
- 在确认窗口中点击 Delete。
10.1.2. 使用 CLI 卸载 OpenShift 沙盒容器
您可以使用命令行界面(CLI)卸载 OpenShift 沙盒容器。
10.1.2.1. 删除工作负载 pod
您可以使用 CLI 删除 OpenShift 沙盒容器工作负载 pod。
先决条件
-
已安装 JSON 处理器(
jq
)工具。
流程
运行以下命令来搜索 pod:
$ oc get pods -A -o json | jq -r '.items[] | \ select(.spec.runtimeClassName == "<runtime>").metadata.name' 1
- 1
- 将
<runtime
> 替换为裸机部署的kata
,或使用 AWS、Azure、IBM Z® 和 IBM® LinuxONE 部署的kata-remote
。
运行以下命令来删除每个 pod:
$ oc delete pod <pod>
卸载使用云供应商部署的 OpenShift 沙盒容器时,您必须删除所有 pod。任何剩余的 pod 资源都可能会导致云供应商出现意外几率。
10.1.2.2. 删除 KataConfig 自定义资源
您可以使用命令行删除 KataConfig
自定义资源(CR)。
删除 KataConfig
CR 会从集群中移除运行时及其相关资源。
删除 KataConfig
CR 会自动重启 worker 节点。重启可能需要 10 到 60 分钟。妨碍重启时间的因素如下:
- 带有更多 worker 节点的大型 OpenShift Container Platform 部署。
- 激活 BIOS 和 Diagnostics 实用程序。
- 在硬盘而不是 SSD 上部署。
- 在物理节点上部署,如裸机,而不是在虚拟节点上部署。
- CPU 和网络较慢。
先决条件
-
已安装 OpenShift CLI(
oc
)。 -
您可以使用具有
cluster-admin
角色的用户访问集群。 -
您已删除所有使用
kata
或kata-remote
作为runtimeClass
的 pod。
流程
运行以下命令来删除
KataConfig
CR:$ oc delete kataconfig example-kataconfig
OpenShift 沙盒容器 Operator 会删除最初为在集群中启用运行时创建的所有资源。
重要当您删除
KataConfig
CR 时,CLI 会停止响应,直到所有 worker 节点重启为止。在执行验证前,您必须等待删除过程完成。运行以下命令验证自定义资源是否已删除:
$ oc get kataconfig example-kataconfig
输出示例
No example-kataconfig instances exist
卸载使用云供应商部署的 OpenShift 沙盒容器时,您必须删除所有 pod。任何剩余的 pod 资源都可能会导致云供应商出现意外几率。
10.1.2.3. 卸载 OpenShift 沙盒容器 Operator
您可以使用命令行卸载 OpenShift 沙盒容器 Operator。
先决条件
-
已安装 OpenShift CLI(
oc
)。 -
您可以使用具有
cluster-admin
角色的用户访问集群。 -
您已删除所有使用
kata
或kata-remote
作为runtimeClass
的 pod。 -
您已删除
KataConfig
自定义资源。
流程
运行以下命令来删除订阅:
$ oc delete subscription sandboxed-containers-operator -n openshift-sandboxed-containers-operator
运行以下命令来删除命名空间:
$ oc delete namespace openshift-sandboxed-containers-operator
10.1.2.4. 删除 KataConfig CRD
您可以使用命令行删除 KataConfig
自定义资源定义(CRD)。
先决条件
-
已安装 OpenShift CLI(
oc
)。 -
您可以使用具有
cluster-admin
角色的用户访问集群。 -
您已删除所有使用
kata
或kata-remote
作为runtimeClass
的 pod。 -
您已删除
KataConfig
自定义资源。 - 您已卸载了 OpenShift 沙盒容器 Operator。
流程
运行以下命令来删除
KataConfig
CRD:$ oc delete crd kataconfigs.kataconfiguration.openshift.io
运行以下命令验证 CRD 已被删除:
$ oc get crd kataconfigs.kataconfiguration.openshift.io
输出示例
Unknown CRD kataconfigs.kataconfiguration.openshift.io