zoukankan      html  css  js  c++  java
  • Kubernetes v1.16 对API的更改

    前段时间安装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.9 版本开始提供API。
    
    NetworkPolicies 从 extensions/v1beta1 改用 networking.k8s.io/v1;networking.k8s.io/v1 从 v1.8 版本开始提供API。
    
    PodSecurityPolicies 从 extensions/v1beta1 改用 policy/v1beta1;policy/v1beta1 从 v1.10 版本开始提供API。
    Ingress 从 extensions
    /v1beta1 改用 networking.k8s.io/v1beta1;networking.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/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

    参考链接

  • 相关阅读:
    信息反馈--冲刺12
    大道至简阅读笔记02
    信息反馈—冲刺11
    第十二周总结
    大道至简阅读笔记01
    小白学习站点
    校园服务第一阶段意见评论
    第十一周总结
    信息反馈--冲刺10
    信息反馈--冲刺09
  • 原文地址:https://www.cnblogs.com/linyouyi/p/12013433.html
Copyright © 2011-2022 走看看