首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >升级到 Kubernetes v1.16 须知API问题总结

升级到 Kubernetes v1.16 须知API问题总结

作者头像
YP小站
发布于 2020-06-04 06:40:50
发布于 2020-06-04 06:40:50
1.1K00
代码可运行
举报
文章被收录于专栏:YP小站YP小站
运行总次数:0
代码可运行

Kubernetes v1.16 发布

Kubernetes v1.16 于 2019 年 9 月发布,大家最需要关注的是部分API将弃用

v1.16.0 对以下四种类型资源的 API 做出调整

  • NetworkPolicy
  • PodSecurityPolicies
  • Ingress
  • DaemonSet, Deployment, StatefulSet 和 ReplicaSet

API 具体调整细节如下

  • DaemonSet, Deployment, StatefulSet 和 ReplicaSetextensions/v1beta1 改用 apps/v1apps/v1 从 v1.9 版本开始提供API
  • NetworkPoliciesextensions/v1beta1 改用 networking.k8s.io/v1networking.k8s.io/v1 从 v1.8 版本开始提供API。
  • PodSecurityPoliciesextensions/v1beta1 改用 policy/v1beta1policy/v1beta1 从 v1.10 版本开始提供API。
  • Ingressextensions/v1beta1 改用 networking.k8s.io/v1beta1networking.k8s.io/v1beta1 从v1.14 版本开始提供API。

默认情况不在提供上面API,如果实在要临时启用,可使用 --runtime-config apiserver 标志临时启用这些API

  • apps/v1beta1=true
  • apps/v1beta2=true
  • extensions/v1beta1/daemonsets=true,extensions/v1beta1/deployments=true,extensions/v1beta1/replicasets=true,extensions/v1beta1/networkpolicies=true,extensions/v1beta1/podsecuritypolicies=true

注意:上面提供的 API 将在 v1.18 完全删除。

下面列举部分 API 弃用预告

  • extensions/v1beta1 从 v1.20 开始将不再提供 Ingress 资源。networking.k8s.io/v1beta1 从 v1.14 开始提供API。可以通过 networking.k8s.io/v1beta1 API 检索现有的持久数据。
  • scheduling.k8s.io/v1beta1scheduling.k8s.io/v1alpha1 从 v1.17 起不再提供 PriorityClass 资源。改用 scheduling.k8s.io/v1 API,自 v1.14 起可用。可以通过 scheduling.k8s.io/v1 API 检索现有的持久数据。
  • export 自 v1.14 起已弃用,将在 v1.18 删除。
  • 不推荐使用的节点条件类型 OutOfDisk 已被删除。使用 DiskPressure 条件代替。
  • GA PodPriority 功能现在默认情况下处于打开状态,无法禁用。功能将在 v1.18 中删除。
  • alpha.service-controller.kubernetes.io/exclude-balancer 不推荐使用云负载均衡器排除节点标签(使用 Service Type = LoadBalancer),而推荐使用 node.kubernetes.io/exclude-balanceralpha.service-controller.kubernetes.io/exclude-balancer 将在 v1.18 删除。
  • admissionregistration.k8s.io/v1beta1 版本 MutatingWebhookConfiguration 和 ValidatingWebhookConfiguration 已过时,将在 v1.19 移除。使用 admissionregistration.k8s.io/v1 替代。

升级到 v1.16.0 之前需要做什么?

  • 更改 YAML 文件以引用新的 API
  • 更新自定义集成和控制器来调用新的 API
  • 更新第三方工具(ingress controllers、持续交付系统)来调用新的 API

测试

可以通过配置 --runtime-config apiserver 来测试集群,以模拟即将进行的删除。在 apiserver 启动参数中添加以下标志:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
--runtime-config=apps/v1beta1=false,apps/v1beta2=false,extensions/v1beta1/daemonsets=false,extensions/v1beta1/deployments=false,extensions/v1beta1/replicasets=false,extensions/v1beta1/networkpolicies=false,extensions/v1beta1/podsecuritypolicies=false

更多

关于升级到 v1.16.0 更多详情请见 https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.16.md

参考链接

  • https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.16.md
  • https://zhuanlan.zhihu.com/p/74626407
  • https://moelove.info/2019/07/22/K8S-%E7%94%9F%E6%80%81%E5%91%A8%E6%8A%A5-2019-07-15~2019-07-21/

欢迎大家关注交流,定期分享自动化运维、DevOps、Kubernetes、Service Mesh和Cloud Native

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-12-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 YP小站 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Kubernetes v1.16 发布
  • v1.16.0 对以下四种类型资源的 API 做出调整
  • API 具体调整细节如下
  • 下面列举部分 API 弃用预告
  • 升级到 v1.16.0 之前需要做什么?
  • 测试
  • 更多
  • 参考链接
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档