如何手工删除kubernetes 旧版本集群实例,

某天发现去年创建的K8S集群的 vm, worker node, cluster 还在,忘了删除,没有检查过billing item, 每月产生小额费用。

先去退订vm, 后来发现cluster因为版本升级原因,属于旧版本,不再支持。 需要手工命令删除。

参阅 https://cloud.ibm.com/docs/containers?topic=containers-cs_troubleshoot_clusters#infra_errors

期间有些CLI cmd 也因为版本升级原因,执行报错。主要是命令行和权限原因,最后经过多次尝试,还是成功删除了旧版本K8S.

下面是相关文档和操作命令。

 

Update

升级

去年创建过K8S ver1.14, 现在升级到ver1.19, 旧版本不再support,

参阅 http://ibm.biz/k8s-1-16-apis

https://www.ibm.com/cloud/blog/announcements/kubernetes-version-1-16-removes-deprecated-apis

 

按照原来CLI操作,系统会提示的升级命令如下 (也可以在Portal UI里面升级)

ibmcloud ks cluster update            // 会报错,因为IC CLI先升级了,不再支持这个命令

ibmcloud ks worker update

 

请使用“ibmcloud plugin update container-service”来升级插件。

请使用“ibmcloud config --check-version=false”来禁用更新检查。 //不建议用

http://ibm.biz/k8s-1-16-apis

 

手动删除

去年创建过K8S ver1.14, 现在升级到ver1.19, 旧版本不再support,  旧版本cluster 无法删除, 需要手动删除

参阅 https://cloud.ibm.com/docs/containers?topic=containers-cs_troubleshoot_clusters#infra_errors

 

CLI操作命令如下,

1. ibmcloud ks api-key info --cluster “my-cluster-名称” //获取有关集群 “my-cluster-名称”的 API 密钥所有者.

2. ibmcloud iam user-policies “xu@cnx邮箱地址”  //正在以邮箱地址身份获取当前帐户下用户的策略...

3. ibmcloud sl user list  //显示 “ user_id,  邮箱地址”

4. ibmcloud sl user permissions “user_id” //显示操作权限

                                            

注意,可能 create cluster的是其他user, 不是你 primary user, 主要更改 cluster owner的 API_Key 才能操作

ibmcloud cs api-key reset -s  # answer y to confirm  这样把cluster owner的api_key 改为有权限的我 primary user.

ibmcloud ks rm --cluster “my-cluster-name”  //进行手工删除

ibmcloud cs cluster rm --cluster “my-cluster-name”  // 会显示ok, 但是集群还在,没有删除掉

ibmcloud ks worker rm --cluster “my-cluster-name”  --worker  000001ce  //需要把下面的集群节点先删除

ibmcloud ks worker rm --cluster “my-cluster-name”  --worker  000002b7

ibmcloud cs cluster rm --cluster “my-cluster-name”  // 再次检查

ibmcloud ks worker ls --cluster “my-cluster-name”  // 检查删除效果

 

注意,集群状态在deleting 状态,需要等候半天时间,再次检查,会发现手工删除K8S集群成功了。

 

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐