基于阿里云托管kubernetes的版本升级
前言
因为阿里云的knative对应得k8s版本大于1.15,而我们目前得集群环境是1.14.8,因此需要对预发环境进行版本升级。基于aliyun托管的kubernetes集群版本升级本没有什么可写,以aliyun的官方文档为指引就可以实现。然而我今天在升级时发现并没有那么简单,而且让我学到了一个我认为很重要的点:一切的问题都有解决的方案。
问题
阿里云控制台
点击升级,就会进入升级前的检查
可以看到问题出现,有一个api service异常。查看详细信息
哦是因为我之前借助于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
再次执行升级
🆗!
感想
对于托管的k8s 老实讲 没什么可操作的,因为托管一切变的简单化,也因为托管造成了一些操作上的障碍。能自建还是自建吧。
通过此次升级,让我再一次感受到在k8s中一切的问题都不叫问题,通过报错就能解决绝大多数问题。
get、describe、logs k8s解决问题的三剑客。
过手如登山,一步一重天