基于阿里云托管kubernetes的版本升级

前言

因为阿里云的knative对应得k8s版本大于1.15,而我们目前得集群环境是1.14.8,因此需要对预发环境进行版本升级。基于aliyun托管的kubernetes集群版本升级本没有什么可写,以aliyun的官方文档为指引就可以实现。然而我今天在升级时发现并没有那么简单,而且让我学到了一个我认为很重要的点:一切的问题都有解决的方案。

问题

阿里云控制台

image.png

点击升级,就会进入升级前的检查

image.png

可以看到问题出现,有一个api service异常。查看详细信息

image.png

哦是因为我之前借助于cert-manager 给服务配置https 然后没有删除干净。

处理

查看apiservice

kubectl get apiservice
NAME                                   SERVICE                                    AVAILABLE                 AGE
......
v1alpha1.certmanager.webhook.alidns    cert-manager/cert-manager-webhook-alidns   False (ServiceNotFound)   7d
......

果然这个API Service是存在问题的,反正现在也不用了,先删除它吧

kubectl delete apiservice v1alpha1.certmanager.webhook.alidns
apiservice.apiregistration.k8s.io "v1alpha1.certmanager.webhook.alidns" deleted

再次执行升级

image.png

🆗!

感想

对于托管的k8s 老实讲 没什么可操作的,因为托管一切变的简单化,也因为托管造成了一些操作上的障碍。能自建还是自建吧。

通过此次升级,让我再一次感受到在k8s中一切的问题都不叫问题,通过报错就能解决绝大多数问题。

get、describe、logs k8s解决问题的三剑客。

过手如登山,一步一重天
posted @ 2020-08-25 13:43  紫色飞猪  阅读(410)  评论(0编辑  收藏  举报