一览Kubernetes 1.20:到底更新了啥

2024-05-25 14:58

本文主要是介绍一览Kubernetes 1.20:到底更新了啥,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

作者:Kubernetes 1.20 发布团队

在这里插入图片描述
我们很高心宣布kubernetes 1.20版本发布了,这是2020年第3个版本也是最后一个版本!该版本包括42个功能增强:11个功能已经能稳定使用了,15个功能还是beta阶段,16个功能即将进入alpha阶段。

1.20版本的发布周期已经回到以前11周的正常发布周期。这是该段时间中最密集的发布之一:Kubernetes 创新周期仍在呈上升趋势。此版本有比稳定功能更多的 alpha功能,这表明在云原生生态系统中还有许多需要探索的地方。

主要主题

卷快照操作趋于稳定

此功能提供了一种触发卷快照操作的标准方法,并允许用户以可移植的方式在任何 Kubernetes 环境和支持的存储提供程序上合并快照操作。

此外,这些 Kubernetes 快照原语充当基本构建基块,可解锁为 Kubernetes 开发高级企业级存储管理功能(包括应用程序或群集级备份解决方案)的能力。

请注意,快照支持需要 Kubernetes 分发者捆绑快照控制器、快照 CRD 和验证的Webhook。还必须在群集上部署支持快照功能的 CSI 驱动程序。

Kubectl Debug 功能进入bata阶段

kubectl alpha debug在1.20本部进入Bata阶段,现在成为了kubectl debug。该功能支持直接从 kubectl 进行常见工作流的调试。此版本 kubectl 中支持的故障排除方案包括:

  • 通过使用其他容器镜像或命令创建pod的副本,对启动时崩溃的工作负载进行故障排除。
  • 通过添加具有调试工具的新容器或者pod的新副本中或使用临时容器,来对distroless容器进行故障排除。(临时容器是一个是Alpha 功能,默认情况下未启用的 。)
  • 通过创建在主机命名空间中运行的容器并访问主机的文件系统,就可以在节点上排除故障。请注意,作为新的内置命令,kubectl debug优先于任何名为"debug"的kubectl 插件。您必须重命名受影响的插件。

现在,kubectl alpha debug已弃用,并将在随后的版本中删除。更新你的脚本使用kubectl debug。想得到kubectl debug的更多信息,请访问 https://kubernetes.io/docs/tasks/debug-application-cluster/debug-running-pod/。

Bata:API 优先级和公平性

在 1.18 中引入,Kubernetes 1.20 现在默认启用 API 优先级和公平性 (APF)。这允许kube-apiserver按优先级对传入的请求进行分类。

Alpha版的更新:IPV4/IPV6

为了支持基于用户和社区反馈的双栈IPv4/IPv6服务,双栈 IPv4/IPv6 已重新实现。这允许将 IPv4 和 IPv6 service cluster IP 地址分配给单个service,还可以将service从单个 IP 栈转换到双 IP 栈,反之亦然。

GA(通用版本):PID资源限制已经稳定

进程 ID (pids) 是 Linux 主机上的基础资源。要避免主机稳定性受到影响,我们需要在达到任务上限但又不触及资源上限这两项条件之间取得平衡点。

管理员需要使用各种机制来确保用户的pods不会导致主机守护程序(runtime、kubelet 等)运行的 pid 被耗尽。此外,必须让 pod 中的 pids 受到限制,以确保它们对节点上的其他工作负载不被影响。默认启用该功能一年后,SIG 节点将 PID 的资源限制功能在SupportNodePidsLimit(节点到 pod 的PID 隔离)和SupportPodPidsLimit( 限制 每个 Pod的PID 的能力)都已经到了GA阶段。

Alpha:优雅关机节点

用户和群集管理员都希望pod 将遵循预期的 pod 生命周期,包括 pod 的终止。目前,当节点关机时,pod 不遵循预期的 pod 终止生命周期,并且不会正常终止,这可能会导致工作负载的某些问题。GracefulNodeShutdown功能现在位于 Alpha 中。 GracefulNodeShutdown使 kubelet 能监听到到节点系统关关机了,从而在系统关闭期间正常终止pods。

主要变化

Dockershim被弃用了

Dockershim已经正式被弃用了。kubernetes对 Docker 的支持已弃用,将在将来的版本中删除。Docker 生成的镜像将继续在集群中使用符合所有 CRI 的运行时,因为 Docker 镜像遵循开放容器计划 (OCI) 镜像规范。Kubernetes社区已经写了一篇关于弃用Dockershim的博客,并为此专门提供了页面说明,页面地址是:https://blog.k8s.io/2020/12/02/dockershim-faq/

执行探测超时的处理

有关执行探测超时的长期错误已修复,该错误可能会影响现有 pod 定义。在此修复之前,timeoutSeconds该字段未得到尊重。相反,探测器将无限期地运行,甚至超过其配置的截止时间,直到返回结果。在本次更改之后,如果未指定值,则探针仅默认应用1秒。如果探针耗费的时间超过1秒,则现有Pod定义可能无法自给自足。本次修复还添加了一项名为ExecProbeTimeout的特征门,允许集群操作人员还原至先前行为;但在后续发行版中,此功能将被锁定及删除。要恢复先前行为,集群操作人员应将此特征门设置为false。

有关详细信息,请查看有关配置探测器的更新文档,地址是:https://kubernetes.io/blog/2020/12/08/kubernetes-1-20-release-announcement/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#configure-probes

其他更新

稳定功能
  • RuntimeClass,详细说明见:https://github.com/kubernetes/enhancements/issues/585
  • Built-in API Types Defaults,详细说明见:https://github.com/kubernetes/enhancements/issues/1929
  • Add Pod-Startup Liveness-Probe Holdoff,详细说明见:https://github.com/kubernetes/enhancements/issues/950
  • Support CRI-ContainerD On Windows,详细说明见:https://github.com/kubernetes/enhancements/issues/1001
  • SCTP Support for Services,详细说明见:https://github.com/kubernetes/enhancements/issues/614
  • Adding AppProtocol To Services And Endpoints,详细说明见:https://github.com/kubernetes/enhancements/issues/1507
显著功能的更新
  • CronJobs,官方很推崇该更新,强烈建议了解,地址为:https://github.com/kubernetes/enhancements/issues/19

版本发布详情

您可以在发行说明中查看 1.20 版本的完整详细信息。

如何获得

Kubernetes 1.20 可在GitHub地址https://github.com/kubernetes/kubernetes/releases/tag/v1.20.0 上下载。

参与

如果您有兴趣为 Kubernetes 社区做出贡献,特殊兴趣小组 (SAG) 是一个很好的起点。他们中的许多人可能会和你的兴趣一致!如果您想与社区分享一些东西,您可以参加每周一次的社区会议。

我的微信公众号

这篇关于一览Kubernetes 1.20:到底更新了啥的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1001833

相关文章

一文带你搞懂Python中__init__.py到底是什么

《一文带你搞懂Python中__init__.py到底是什么》朋友们,今天我们来聊聊Python里一个低调却至关重要的文件——__init__.py,有些人可能听说过它是“包的标志”,也有人觉得它“没... 目录先搞懂 python 模块(module)Python 包(package)是啥?那么 __in

售价599元起! 华为路由器X1/Pro发布 配置与区别一览

《售价599元起!华为路由器X1/Pro发布配置与区别一览》华为路由器X1/Pro发布,有朋友留言问华为路由X1和X1Pro怎么选择,关于这个问题,本期图文将对这二款路由器做了期参数对比,大家看... 华为路由 X1 系列已经正式发布并开启预售,将在 4 月 25 日 10:08 正式开售,两款产品分别为华

MySQL更新某个字段拼接固定字符串的实现

《MySQL更新某个字段拼接固定字符串的实现》在MySQL中,我们经常需要对数据库中的某个字段进行更新操作,本文就来介绍一下MySQL更新某个字段拼接固定字符串的实现,感兴趣的可以了解一下... 目录1. 查看字段当前值2. 更新字段拼接固定字符串3. 验证更新结果mysql更新某个字段拼接固定字符串 -

MySQL新增字段后Java实体未更新的潜在问题与解决方案

《MySQL新增字段后Java实体未更新的潜在问题与解决方案》在Java+MySQL的开发中,我们通常使用ORM框架来映射数据库表与Java对象,但有时候,数据库表结构变更(如新增字段)后,开发人员可... 目录引言1. 问题背景:数据库与 Java 实体不同步1.1 常见场景1.2 示例代码2. 不同操作

一文详解SQL Server如何跟踪自动统计信息更新

《一文详解SQLServer如何跟踪自动统计信息更新》SQLServer数据库中,我们都清楚统计信息对于优化器来说非常重要,所以本文就来和大家简单聊一聊SQLServer如何跟踪自动统计信息更新吧... SQL Server数据库中,我们都清楚统计信息对于优化器来说非常重要。一般情况下,我们会开启"自动更新

Kubernetes常用命令大全近期总结

《Kubernetes常用命令大全近期总结》Kubernetes是用于大规模部署和管理这些容器的开源软件-在希腊语中,这个词还有“舵手”或“飞行员”的意思,使用Kubernetes(有时被称为“... 目录前言Kubernetes 的工作原理为什么要使用 Kubernetes?Kubernetes常用命令总

Redis缓存问题与缓存更新机制详解

《Redis缓存问题与缓存更新机制详解》本文主要介绍了缓存问题及其解决方案,包括缓存穿透、缓存击穿、缓存雪崩等问题的成因以及相应的预防和解决方法,同时,还详细探讨了缓存更新机制,包括不同情况下的缓存更... 目录一、缓存问题1.1 缓存穿透1.1.1 问题来源1.1.2 解决方案1.2 缓存击穿1.2.1

Linux Mint Xia 22.1重磅发布: 重要更新一览

《LinuxMintXia22.1重磅发布:重要更新一览》Beta版LinuxMint“Xia”22.1发布,新版本基于Ubuntu24.04,内核版本为Linux6.8,这... linux Mint 22.1「Xia」正式发布啦!这次更新带来了诸多优化和改进,进一步巩固了 Mint 在 Linux 桌面

SpringCloud配置动态更新原理解析

《SpringCloud配置动态更新原理解析》在微服务架构的浩瀚星海中,服务配置的动态更新如同魔法一般,能够让应用在不重启的情况下,实时响应配置的变更,SpringCloud作为微服务架构中的佼佼者,... 目录一、SpringBoot、Cloud配置的读取二、SpringCloud配置动态刷新三、更新@R

Ubuntu 24.04 LTS怎么关闭 Ubuntu Pro 更新提示弹窗?

《Ubuntu24.04LTS怎么关闭UbuntuPro更新提示弹窗?》Ubuntu每次开机都会弹窗提示安全更新,设置里最多只能取消自动下载,自动更新,但无法做到直接让自动更新的弹窗不出现,... 如果你正在使用 Ubuntu 24.04 LTS,可能会注意到——在使用「软件更新器」或运行 APT 命令时,