前段时间安装Kubernetes v1.16.2,然后从v1.14版本的拷贝yaml文件过来执行,很多都报没有相应的api,查看一下新版本的api

admissionregistration.k8s.io/v1
admissionregistration.k8s.io/v1beta1
apiextensions.k8s.io/v1
apiextensions.k8s.io/v1beta1
apiregistration.k8s.io/v1
apiregistration.k8s.io/v1beta1
apps/v1
authentication.k8s.io/v1
authentication.k8s.io/v1beta1
authorization.k8s.io/v1
authorization.k8s.io/v1beta1
autoscaling/v1
autoscaling/v2beta1
autoscaling/v2beta2
batch/v1
batch/v1beta1
certificates.k8s.io/v1beta1
coordination.k8s.io/v1
coordination.k8s.io/v1beta1
custom.metrics.k8s.io/v1beta1
events.k8s.io/v1beta1
extensions/v1beta1
metrics.k8s.io/v1beta1
networking.k8s.io/v1
networking.k8s.io/v1beta1
node.k8s.io/v1beta1
policy/v1beta1
rbac.authorization.k8s.io/v1
rbac.authorization.k8s.io/v1beta1
scheduling.k8s.io/v1
scheduling.k8s.io/v1beta1
storage.k8s.io/v1
storage.k8s.io/v1beta1
v1

发现确实有更改

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

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

NetworkPolicy
PodSecurityPolicies
Ingress
DaemonSet
Deployment
StatefulSet
ReplicaSet

API 具体调整细节如下

DaemonSet, Deployment, StatefulSet 和 ReplicaSet 从 extensions/v1beta1 改用 apps/v1;apps/v1 从 v1. 版本开始提供API。

NetworkPolicies 从 extensions/v1beta1 改用 networking.k8s.io/v1;networking.k8s.io/v1 从 v1. 版本开始提供API。

PodSecurityPolicies 从 extensions/v1beta1 改用 policy/v1beta1;policy/v1beta1 从 v1. 版本开始提供API。
Ingress 从 extensions/v1beta1 改用 networking.k8s.io/v1beta1;networking.k8s.io/v1beta1 从v1. 版本开始提供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/v1beta1 和 scheduling.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

迁移到新的 Ingress API 只需要更改 API 路径——API 字段保持不变。然而,迁移其他资源(如Deployment)将需要基于更改的字段进行一些更新。你可以使用 kubectl convert 命令自动转换现有对象:

kubectl convert -f <file> --output-version <group>/<version>

例如,要将旧的 Deployment 转换为 apps/v1,可以执行:kubectl convert -f ./my-deployment.yaml --output-version apps/v1。注意,这可能使用非理想的默认值。要了解关于特定资源的更多信息,请检查 Kubernetes API reference[1]。

测试

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

--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

参考链接

Kubernetes v1.16 对API的更改的更多相关文章

  1. Kubernetes v1.16 发布 | 云原生生态周报 Vol. 20

    作者:心贵.进超.元毅.心水.衷源.洗兵 业界要闻 Kubernetes v1.16 发布 在这次发布中值得关注的一些特性和 Feature: CRD 正式进入 GA 阶段: Admission We ...

  2. 使用 kubeadm 安装 kubernetes v1.16.0

    近日通过kubeadm 安装 kubernetes v1.16.0,踩过不少坑,现记录下安装过程. 安装环境: 系           统:CentOS Linux release 7.6 Docke ...

  3. Kubernetes V1.16.2部署Dashboard V2.0(beta5)

    Kubernetes V1.16.2部署Dashboard V2.0(beta5) 在Master上部署Dashboard 集群安装部署请看安装Kubernetes V1.16.2 kubectl g ...

  4. 安装Kubernetes V1.16.2

    安装Kubernetes V1.16.2 准备硬件环境 利用VirtualBox准备两台Linux虚拟机(K8S集群2台起步),系统用CentOS(我用的是的CentOS-7-x86_64-DVD-1 ...

  5. Ubuntu 18.04 环境下 kubernetes v1.16.2 单机部署说明

    一.安装环境 本次部署使用阿里云ECS 操作系统: Ubuntu  18.04 64位 实例规格: ecs.c6.large 2U4G 二.kubernetes 版本 k8s.gcr.io/kube- ...

  6. kubernetes V1.16 Ingress-nginx部署

    Ingress 在Kubernetes中,服务和Pod的IP地址仅可以在集群网络内部使用,对于集群外的应用是不可见的.为了使外部的应用能够访问集群内的服务,在Kubernetes中可以通过NodePo ...

  7. kubernetes实战(二十六):kubeadm 安装 高可用 k8s v1.16.x dashboard 2.x

    1.基本配置 基本配置.内核升级.基本服务安装参考https://www.cnblogs.com/dukuan/p/10278637.html,或者参考<再也不踩坑的Kubernetes实战指南 ...

  8. k8s kubernetes 核心笔记 镜像仓库 项目k8s改造(含最新k8s v1.16.2版本)

    k8s kubernetes 核心笔记 镜像仓库 项目k8s改造 2019/10/24 Chenxin 一 基本资料 一 参考: https://kubernetes.io/ 官网 https://k ...

  9. 二进制搭建Kubernetes集群(最新v1.16.0版本)

    目录 1.生产环境k8s平台架构 2.官方提供三种部署方式 3.服务器规划 4.系统初始化 5.Etcd集群部署 5.1.安装cfssl工具 5.2.生成etcd证书 5.2.1 创建用来生成 CA ...

随机推荐

  1. C#版简易RSS阅读器

    C#版简易RSS阅读器.由VB版修改完成,感谢aowind的技术支持! 源代码: using System; using System.Drawing; using System.Collection ...

  2. Dllregisterserver调用失败解决方法

    在做一个注册com组件时,出现这样的情况 出现这个错误一般是和权限问题有关,命令提示符需要以管理员权限运行才可以注册成功. 最简单的解决方法就是: 在开始菜单右击—>命令提示符(管理员)(A) ...

  3. css如何让<a>标签,根据输入的内容长度调整宽度,宽度自适应,那位大仙帮帮忙

    css如何让<a>标签,根据输入的内容长度调整宽度,宽度自适应,那位大仙帮帮忙 5 样式 .ceshi{float:left; margin-left:13px; width:180px; ...

  4. git配置密钥(私钥、ssh、公钥)

    参照: https://blog.csdn.net/weixin_42063071/article/details/80999690 经常帮人配置git的私钥,来总结一下简单的流程真心希望对大家有所帮 ...

  5. 【GDAL】GDAL栅格数据结构学习笔记(一): 关于Metadata

    在维护一段代码时看到前任程序员写的获取栅格数据的CellSize的功能,竟然在知道GDAL的情况下去调用AE的接口来解算,觉得费解. 原来的思路是使用AE的Raster对象读取出Raster的文件大小 ...

  6. 测开之路二十:比较v1和v2

    根据V1和V2的版本号,如果v1>v2,返回1,如果v1<v2,返回-1,除此之外返回0 # 如果v1>v2,返回1,如果v1<v2,返回-1,除此之外返回0v1 = inpu ...

  7. spring boot 尚桂谷学习笔记09 数据访问

    springboot 与数据库访问 jdbc, mybatis, spring data jpa,  1.jdbc原生访问 新建项目 使用 springboot 快速构建工具 选中 web 组件 sq ...

  8. 迪杰斯特拉算法(Dijkstra)

    模板一: 时间复杂度O(n2) int dijkstra(int s,int m) //s为起点,m为终点 { memset(dist,,sizeof(dist)); //初始化,dist数组用来储存 ...

  9. Action.c(28): Error -27796: Failed to connect to server "xxxx": [10060] Connection timed out

    Error -27796: Failed to connect to server "125.93.51.230:8080": [10061] Connection refused ...

  10. 杯子(glass)

    题目描述 一天,CC买了N个容量可以认为是无限大的瓶子,开始时每个瓶子里有1升水.接着~~CC发现瓶子实在太多了,于是他决定保留不超过K个瓶子.每次他选择两个当前含水量相同的瓶子,把一个瓶子的水全部倒 ...