跳过内容

新 Kubernetes 版本

新 kubernetes 版本的清单

检查 k/k 中使用的 go 版本

更新基础镜像

更新依赖项 (apimachinery 等)

这是迄今为止过程中最痛苦的部分。首先,你必须说服 dep 更新依赖项,然后你必须进行代码更改。

对于 dep,你可能需要移除对任何已移除包的导入,否则 dep 将忽略你的 Gopkg.toml。这里前进的道路是使用 vgo (也称为 go),它有一个更好的模型。

然后,你必须修复任何更改的代码。这逐渐变得更好,但如果我们

  • 停止使用 apimachinery / codegen 并切换到 CRD/cluster-api
  • 停止从 kubernetes/kubernetes 分销功能 - 这也逐渐变得更好。

更新默认安装的 docker 版本

检查 CNI 版本

源:*kube-up

检查准入插件

  • https://kubernetes.ac.cn/docs/reference/access-authn-authz/admission-controllers/#is-there-a-recommended-set-of-admission-controllers-to-use
  • https://github.com/kubernetes/kubernetes/blob/master/cluster/gce/config-default.sh

检查新的弃用标志

审阅 e2e 测试输出,查找来自 kube-apiserver、kubelet、kube-scheduler 等人的工件

例如标记 --address 已弃用,请改用 --insecure-bind-address。标记 --insecure-port 已弃用,将来某个版本将移除此标记。

检查主要的新功能(处于测试版或 GA,而非 alpha 版)

检查新的 aws-sdk-go 库(如果我们要关注比 k8s 更新的版本)