K8sMeetup 中国社区第一时间整理了 v1.20 的亮点内容,为大家详细介绍此版本的主要功能。

作者:Bach(才云)、bot(才云)

技术校对:星空下的文仔(才云)

美国时间 12 月 8 日,Kubernetes v1.20 正式发布,这是 2020 年的第三个新版本,也是最后一个版本。该版本包含 42 个增强功能:其中 11 个增强功能趋于稳定,15 个进入 Beta,16 个进入 Alpha。

之前扩展发布周期后,v1.20 发布周期恢复到正常的 11 周。这是近来功能最密集的版本之一:Kubernetes 更新速度仍在加快。该版本 Alpha 增强功能比稳定的增强功能更多,这表明在云原生生态系统中还有许多值得探索的空间。

K8sMeetup

Major Themes

新版本主要围绕以下主题:

1

存储卷快照功能趋于稳定

现在提供了触发存储卷快照功能的标准方法,并允许用户以可移植的方式在 Kubernetes 环境或任何受支持的存储提供程序上合并快照操作。同时,Kubernetes 快照原语可作为基础构建块,能提供 Kubernetes 开发企业级存储管理功能的能力,包括应用程序以及集群备份解决方案。

另外,快照支持需要 Kubernetes 发行厂商捆绑 Snapshot 控制器、Snapshot CRD 和验证 Webhook。支持快照功能的 CSI 驱动程序也要部署在集群上。

2

Kubectl Debug 进入 Beta

kubectl alpha debug 功能在 v1.20 进入 Beta 版,并更名为 kubectl debug。该功能能通过 kubectl 提供常见调试工作流的支持。现在 kubectl 支持的故障排除方案包括:

  • 通过创建使用其他容器镜像的 Pod 副本解决启动时工作负载崩溃的问题。

  • 通过在 Pod 的新副本或临时容器(临时容器是一项默认不启用的 Alpha 功能。)使用调试工具添加新容器来解决 Distroless 容器的故障。

  • 通过在主机命名空间中创建能运行并具有访问主机文件系统权限的容器,对节点进行故障排除。

作为新的内置命令,kubectl debug 比任何名字带有 “debug” 的 kubectl 插件优先级都要高,因此必须重命名受影响的插件。

在 v1.20 中,不建议继续使用 kubectl alpha debug。后续发行版中其也被删除,建议更新脚本使用 kubectl debug。

3

Beta:API 优先级和公平性

v1.18 版本引入的 API 优先级和公平性(APF)功能现在在 Kubernetes v1.20 默认启用,它能让 kube-apiserver 按优先级对传入的请求进行分类。

4

IPV4/IPV6 Alpha 功能更新

IPv4/IPv6 双协议栈基于用户和社区反馈重新实现,现在既可以将 IPv4 与 IPv6 服务集群 IP 地址分配给单个服务,也可以在服务中实现单 IP 栈与双 IP 栈的切换。

5

GA:限制进程 PID

进程 ID(PID)是 Linux 主机上的基本资源,为避免主机不稳定,要达到任务限制与资源限制的平衡。

管理员需要一些机制来确保用户 Pod 不会导致 PID 耗尽,以避免主机守护程序(运行时、kubelet 等)停止运行。另外,也要确保在容器之间限制 PID,以确保不会对节点上其他工作负载造成影响。在一年前默认启用后,SIG Node 通过 SupportNodePidsLimit(node-to-pod PID 隔离)和 SupportPodPidsLimit(能在 Pod 限制 PID)将限制进程 PID 推向 GA。

6

Alpha:节点优雅关闭

用户和集群管理员希望 Pod 以预定的 Pod 生命周期运行,包括 Pod 终止。但目前节点关闭时,Pod 不会遵循预期的 Pod 终止生命周期,并无法正常终止,这可能会导致工作负载出现问题。GracefulNodeShutdown 功能现在进入 Alpha,它能让 kubelet 知道节点系统关闭,从而在系统关闭期间正常终止 Pod。

K8sMeetup

重要更新

以下是 v1.20 中值得关注的变化:

1

Dockershim 弃用

v1.20 将弃用 Dockershim,即 Docker 容器运行时接口(CRI),这意味着不再支持 Docker,并将在后续版本中删除。由于Docker 镜像遵循开放容器倡议(OCI)镜像规范,所以 Docker 产生的镜像能在所有 CRI 兼容运行时的集群中正常使用。详情可见《Kubernetes 弃用 Docker 来龙去脉》。

2

Exec 探针超时处理

修正了长期存在的 exec 探针超时错误,该 bug 可能会对现有 pod 定义造成影响。在发布该修复程序之前,exec 探针未考虑 timeoutSeconds 字段,并会无限期运行,甚至超过配置限制,直到返回结果。此次修复后,如果未指定值,探针会默认为 1 秒;如果探针时间超过 1 秒,现有 Pod 定义可能无法满足。此次修复还添加了一个名为 ExecProbeTimeout 的 feature gate,它能让集群操作员还原到以前的行为,但在后续发行版中,它将被锁定并删除。如果要恢复以前的行为,要将该 feature gate 设置为 false。

K8sMeetup

其他更新

1

以下特性进入稳定

  • RuntimeClass

  • 内置 API 类型默认值

  • 添加 Pod-Startup Liveness-Probe 延迟

  • 在 Windows 上支持 CRI-ContainerD

  • SCTP 支持 Service

  • 将 AppProtocol 添加到 Service 和 Endpoint

2

重要功能更新

  • #19 CronJobs:用于执行所有与时间相关的操作,即备份,报告生成等。

K8sMeetup

发布 logo

对于许多人来说,2020 年是充满挑战的一年,但是 Kubernetes 的贡献者在此版本中提供了创纪录的增强功能。这是一项巨大的成就,因此发布负责人希望在今年结束时有所成就,并向 Kubernetes 1.14-Caturnetes 致敬,包括一只名为 “Humphrey” 的 “rad” 猫。

本文只简单介绍了 Kubernetes v1.20 中的一些重要增强功能,以及企业用户和个人开发者可能会比较关注的新功能。关于新版本的更多内容,请查看官方文档:

https://kubernetes.io/blog/2020/12/08/kubernetes-1-20-release-announcement/

https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.20.md

Kubernetes学习总结(4)——Kubernetes v1.20 重磅发布 | 新版本核心主题 主要变化解读相关推荐

  1. 华为重磅发布5G核心芯片天罡,全球首款5G折叠屏手机2月面世

    大规模集成有源 PA(功放)和无源阵子:极强算力,实现 2.5 倍运算能力的提升,搭载最新的算法及 Beamforming(波束赋形),单芯片可控制高达业界最高 64 路通道:极宽频谱,支持 200M ...

  2. 国产3D打印数据准备软件重磅发布新版本,助力2万用户效率提升

    正如3D打印技术参考在此前曾介绍过的,漫格科技推出的VoxelDance工业级3D打印准备软件工业用户量已超2万,并与国内重量级的增材制造OEM厂商,如铂力特.易加三维.汉邦科技.鑫精合.雷佳等均已达 ...

  3. 二进制安装kubernetes(v1.20.16)

    目录 1.集群规划 2.软件版本 3.下载地址 4.初始化虚拟机 4.1安装虚拟机 4.2升级内核 4.3安装模块 4.4系统设置 4.5设置hoss 4.6设置IPv4转发 4.7时间同步 4.8安 ...

  4. Kubernets集群管理-升级 kubernetes 集群版本到v1.21.14

    Kubernets集群管理-kubernets集群升级 文章目录 Kubernets集群管理-kubernets集群升级 前言 一.检查kubernets各组件当前版本 二.升级控制节点平面kuber ...

  5. 【kubernetes】k8s v1.20高可用多master节点部署

    一,安装环境 1,硬件要求 内存:2GB或更多RAM CPU: 2核CPU或更多CPU 硬盘: 30GB或更多 2,本次环境说明: 操作系统:CentOS 7.9 内核版本:3.10.0-1160 虚 ...

  6. 【云原生Kubernetes系列第五篇】kubeadm v1.20 部署K8S 集群架构(人生这道选择题,总会有遗憾)

    系列文章目录 ??即日起,更新云原生相关知识,喜欢的小伙伴可以给我点个三连喔 ??收录至专栏 云原生 ??[云原生Docker系列第一篇]Docker镜像管理 ??[云原生Docker系列第二篇]Do ...

  7. kubernetes v1.20项目之部署二进制安装_系统环境配置

    kubernetes v1.20项目之二进制部署安装系统环境配置 好久没有操作过k8s了,自从离开了大厂也没有接触k8s的机会了,正好最近有朋友打听k8s相关的事情,这个文章也是自己根据自己脑子里面的 ...

  8. kubernetes v1.20项目之二进制扩容多Master

    kubernetes v1.20项目之二进制扩容多Master Master节点扮演着总控中心的角色,通过不断与工作节点上的Kubelet和kube-proxy进行通信来维护整个集群的健康工作状态.如 ...

  9. a24.ansible 生产实战案例 -- 基于kubeadm安装kubernetes v1.20 -- 集群部署(一)

    源码下载地址:https://github.com/raymond999999/kubernetes-ansible 1.高可用Kubernetes集群规划 角色 机器名 机器配置 ip地址 安装软件 ...

最新文章

  1. Yahoo网站性能优化的34条军规
  2. mysql--字段--索引的增删改查
  3. 全球及中国健康保险市场运作模式与需求潜力预测报告2022版
  4. Opera视频出海非洲面临的技术挑战及应对
  5. 深度学习-自然语言处理中的近似训练
  6. 阿里云专属数据库,重新定义云数据库新形态
  7. 数据行业工作3年,我靠这7个能力,成为领导青睐的高级数据分析师
  8. 汇编语言mul指令_跟着开源软件学汇编语言:计算器
  9. 林超贤携彭于晏带《紧急救援》再度征战2020春节档
  10. matlab运行过程中出现找不到指定模块问题解决
  11. tekla导出HTML,TEKLA常见问题解答
  12. 最全面计算机英语单词列表(三)
  13. CXPlain: Causal Explanations for Model Interpretation under Uncertainty
  14. 论文阅读-2022.1.2-A Neural Network Approach for_2016_一种用于知识驱动响应生成的神经网络方法
  15. 重头系统的学习,不会咱就学!2014.6.18
  16. FPGA-超声波避障小车(ego1)
  17. Android自我进阶总纲—善始者实繁,然克终者盖寡。
  18. 许远东:砥砺互联网,有人是先锋,有人是炮灰
  19. 数据结构(严蔚敏C语言版)代码实现持续更新中
  20. [Python从零到壹] 四十七.图像增强及运算篇之腐蚀和膨胀详解

热门文章

  1. 二叉树最小单元结点的实现
  2. adb ps shell 查看进程_注入 init 进程,使得 APP 可调试
  3. 188. 买卖股票的zui佳时机 IV(JavaScript)
  4. ajax 前端报错,Django ajax 发送post请求 前端报错解决
  5. 原 CSS3中的过渡,css3之过渡
  6. java 日期 相差的天数_JAVA计算两个日期之间相差的天数
  7. 矩形变弧度角_懒惰使人类进步:不想刷马桶,那就让马桶自己变干净丨种草机...
  8. python数据检索_python – Hachoir – 从组中检索数据
  9. 求1 2 3 java_求1+2+3+...+n,Java代码实现
  10. 实现 消息提醒图标_Mac 上自带的「提醒事项」千万别错过