2.5.5. 卸载 Vertical Pod Autoscaler Operator
您可以从 OpenShift Container Platform 集群中删除 Vertical Pod Autoscaler Operator(VPA)。卸载后,已由现有 VPA CR 修改的 pod 的资源请求不会改变。任何新 pod 都会根据工作负载对象中的定义获得资源,而不是之前由 VPA 提供的的建议。
您可以使用 oc delete vpa <vpa-name>
命令删除特定的 VPA。在卸载垂直 pod 自动扩展时,同样的操作适用于资源请求。
删除 VPA Operator 后,建议您删除与 Operator 相关的其他组件,以避免潜在的问题。
先决条件
- 已安装 Vertical Pod Autoscaler Operator。
流程
-
在 OpenShift Container Platform web 控制台中,点击 Operators
Installed Operators。 - 切换到 openshift-vertical-pod-autoscaler 项目。
- 找到 VerticalPodAutoscaler Operator,点 Options 菜单。点击 Uninstall Operator。
- 在对话框中点 Uninstall。
- 可选: 要删除与 Operator 关联的所有操作对象,请在对话框中选择 Delete all operand instance for this operator 复选框。
- 点击 Uninstall。
可选: 使用 OpenShift CLI 删除 VPA 组件:
删除 VPA 变异 Webhook 配置:
$ oc delete mutatingwebhookconfigurations/vpa-webhook-config
列出所有 VPA 自定义资源:
$ oc get verticalpodautoscalercheckpoints.autoscaling.k8s.io,verticalpodautoscalercontrollers.autoscaling.openshift.io,verticalpodautoscalers.autoscaling.k8s.io -o wide --all-namespaces
输出示例
NAMESPACE NAME AGE my-project verticalpodautoscalercheckpoint.autoscaling.k8s.io/vpa-recommender-httpd 5m46s NAMESPACE NAME AGE openshift-vertical-pod-autoscaler verticalpodautoscalercontroller.autoscaling.openshift.io/default 11m NAMESPACE NAME MODE CPU MEM PROVIDED AGE my-project verticalpodautoscaler.autoscaling.k8s.io/vpa-recommender Auto 93m 262144k True 9m15s
删除列出的 VPA 自定义资源。例如:
$ oc delete verticalpodautoscalercheckpoint.autoscaling.k8s.io/vpa-recommender-httpd -n my-project
$ oc delete verticalpodautoscalercontroller.autoscaling.openshift.io/default -n openshift-vertical-pod-autoscaler
$ oc delete verticalpodautoscaler.autoscaling.k8s.io/vpa-recommender -n my-project
列出所有 VPA 自定义资源定义(CRD):
$ oc get crd
输出示例
NAME CREATED AT ... verticalpodautoscalercheckpoints.autoscaling.k8s.io 2022-02-07T14:09:20Z verticalpodautoscalercontrollers.autoscaling.openshift.io 2022-02-07T14:09:20Z verticalpodautoscalers.autoscaling.k8s.io 2022-02-07T14:09:20Z ...
删除列出的 VPA CRD:
$ oc delete crd verticalpodautoscalercheckpoints.autoscaling.k8s.io verticalpodautoscalercontrollers.autoscaling.openshift.io verticalpodautoscalers.autoscaling.k8s.io
删除 CRD 会删除关联的角色、集群角色和角色绑定。但是,可能存在一些必须手动删除的集群角色。
列出任何 VPA 集群角色:
$ oc get clusterrole | grep openshift-vertical-pod-autoscaler
输出示例
openshift-vertical-pod-autoscaler-6896f-admin 2022-02-02T15:29:55Z openshift-vertical-pod-autoscaler-6896f-edit 2022-02-02T15:29:55Z openshift-vertical-pod-autoscaler-6896f-view 2022-02-02T15:29:55Z
删除列出的 VPA 集群角色。例如:
$ oc delete clusterrole openshift-vertical-pod-autoscaler-6896f-admin openshift-vertical-pod-autoscaler-6896f-edit openshift-vertical-pod-autoscaler-6896f-view
删除 VPA Operator:
$ oc delete operator/vertical-pod-autoscaler.openshift-vertical-pod-autoscaler