6.3. 卸载 Web 终端
卸载 web 终端需要两步:
- 删除安装 Operator 时添加的组件和自定义资源(CR)。
- 卸载 Web Terminal Operator。
卸载 Web Terminal Operator 不会移除安装 Operator 时创建的任何自定义资源定义(CRD)或受管资源。为了安全起见,必须手动卸载这些组件。删除这些组件还允许您通过确保在卸载 Operator 时不会闲置终端来保存集群资源。
先决条件
-
使用具有
cluster-admin
权限的账户访问 OpenShift Container Platform 集群。
6.3.1. 删除 Web 终端组件和自定义资源
使用 CLI 删除安装 Web Terminal Operator 期间创建的 CR。
流程
运行以下命令以确保所有
DevWorkspace
CR 及其相关的 Kubernetes 对象(如部署)被删除。$ oc delete devworkspaces.workspace.devfile.io --all-namespaces --all --wait
$ oc delete workspaceroutings.controller.devfile.io --all-namespaces --all --wait
$ oc delete components.controller.devfile.io --all-namespaces --all --wait
警告如果此步骤未完成,则终结器很难轻松地完全卸载 Operator。
运行以下命令以删除 CRD:
$ oc delete customresourcedefinitions.apiextensions.k8s.io workspaceroutings.controller.devfile.io
$ oc delete customresourcedefinitions.apiextensions.k8s.io components.controller.devfile.io
$ oc delete customresourcedefinitions.apiextensions.k8s.io devworkspaces.workspace.devfile.io
删除
DevWorkspace-Webhook-Server
部署:$ oc delete deployment/devworkspace-webhook-server -n openshift-operators
注意运行此步骤及以下步骤时,无法使用
oc exec
命令在容器中运行命令。删除 Webhook 后,您将可以再次使用oc exec
命令。运行以下命令以删除所有闲置服务、secret 和配置映射:
$ oc delete all --selector app.kubernetes.io/part-of=devworkspace-operator,app.kubernetes.io/name=devworkspace-webhook-server
$ oc delete serviceaccounts devworkspace-webhook-server -n openshift-operators
$ oc delete configmap devworkspace-controller -n openshift-operators
$ oc delete clusterrole devworkspace-webhook-server
$ oc delete clusterrolebinding devworkspace-webhook-server
运行以下命令以删除变异或验证 Webhook 配置:
$ oc delete mutatingwebhookconfigurations controller.devfile.io
$ oc delete validatingwebhookconfigurations controller.devfile.io