背景 链接到标题 之前已经介绍过 ClusterAPI 及相应实现方式,但是针对使用 ClusterAPI 部署的 K8s 集群社区中一直没有升级方案,其中 vmware 实现了一个简单的升级工具,可以在社区没实现之前提供使用,今天来看下这个工具是如何实现的。
cluster-api-upgrade-tool 链接到标题 项目地址:https://github.com/vmware/cluster-api-upgrade-tool
因为这只是一个单独的工具,因此代码结构比较简单:
yiran@t480:~/go/src/github.com/vmware/cluster-api-upgrade-tool master ✔ $ tree . . ├── CODE-OF-CONDUCT.md ├── CONTRIBUTING.md ├── Dockerfile ├── go.mod ├── go.sum ├── hack │ └── tools │ ├── go.mod │ ├── go.sum │ └── main.go ├── LICENSE.txt ├── main.go # 命令行入口 ├── Makefile ├── NOTICE.txt ├── pkg │ ├── internal │ │ └── kubernetes │ │ ├── client.go # 获取 client │ │ └── pod_exec.