kubernetes - 升级集群时如何处理基于 kops 的 kubernetes api 的更新?
问题描述
目前,我们运行 15 版的基于 kops 的集群。我们计划先将其升级到 16 版,然后再进一步升级。但是,yaml 中各种 kubernetes 服务的 api 版本也需要更改。在集群升级之前,您将如何解决这个问题?有没有办法用不兼容的 api 版本枚举集群中的所有对象,或者最好的方法是什么?我怀疑 kops 创建的对象,例如 kube-system 对象会自动升级。
解决方案
当您升级集群时,API 服务器将负责升级集群中的所有现有资源。当您想要部署更多资源并且升级后这些资源仍在使用旧的 API 版本时,就会出现问题。在这种情况下,您的部署(例如kubectl apply
)将失败。
即集群中已经运行的任何东西都不会中断。但是如果他们仍然使用旧版本,未来的部署将会。
kOps 管理的资源已经使用新的 API 版本。
推荐阅读
- nscursor - 如何创建带有 alpha 掩码的自定义 NSCursor?
- android - 我的 Flutter 应用程序中的 Google 登录失败
- mongodb - 如何在从其他集合 mongodb 嵌入的数组中选择具有 id 的集合
- javascript - 简单每秒点击一个按钮事件
- jsonschema - 当父属性不存在时阻止依赖属性验证
- ios - 如何从拖放创建新的 UIWindowScene?
- jquery - 弹出窗口未触发 focusout() 或 blur()
- clojure - 文件名无效,得到 xxxxxx 但应为 xxxxxxxx
- python - 如何从 exec() 越狱?
- javascript - 在组件之间传递值:传递引用与主题