Kubernetes 1.17带来卷快照和更简易的插件管理

译文
云计算
Kubernetes是用于部署、扩展和管理容器的市面上最广泛使用的开源容器编排工具之一。该工具最初由谷歌开发,现在由云原生计算基金会维护,近日迎来了版本1.17。

【51CTO.com快译】Kubernetes是用于部署、扩展和管理容器的市面上最广泛使用的开源容器编排工具之一。该工具最初由谷歌开发,现在由云原生计算基金会维护,近日迎来了版本1.17。

[[285404]]

版本1.17是2019年的第四个也是最终版本,含有22处改进。这些功能上的改进包括:

  • 14处改进进入到stable阶段。
  • 4处改进进入到beta阶段。
  • 4处改进进入到alpha阶段。

不妨看一下Kubernetes的这个最新版本含有的一些新改进。

先看一下其中一项比较重要的功能。

卷快照

虽然卷快照尚未进入到stable阶段,但它是许多Kubernetes管理员非常欣赏的一项功能。该功能创建持久卷的时间点副本。这些快照可用于配置新卷或将现有卷还原到以前的状态。

但是考虑到Kubernetes已含有一个卷插件(该插件为块存储和文件存储的自动化及配置、附加和挂载提供了一种功能强大的工具),为什么还要为它添加卷快照?为了回答这个问题,Kubernetes官方文档特别指出:

所有这些功能的基础是Kubernetes实现工作负载可移植性的目标:Kubernetes旨在在分布式系统应用程序和底层集群之间创建一个抽象层,以便应用程序可以做到与它们运行所依赖的集群的具体情况无关,应用程序部署不需要“针对特定集群的”知识。

快照操作被视为有状态工作负载的一项关键功能。通过提供在Kubernetes API内触发快照操作的方法,管理员现在可以在不必使用Kubernetes API的情况下处理用例。

想了解有关Kubernetes卷快照功能的更多信息,请参阅官方文档

树内插件迁移

从版本1.17开始,Kubernetes将把树内插件迁移到容器存储接口(CSI)。为什么这样?在1.17之前,Kubernetes卷插件是核心Kubernetes代码的一部分,随核心Kubernetes二进制文件一并提供。因此,为Kubernetes添加新的卷插件始终很困难。如果供应商想为核心添加存储系统,就被迫与Kubernetes发布过程保持一致。这并非总是可行的。

除此之外,第三方存储代码可能会导致核心Kubernetes二进制文件内出现可靠性和安全性问题。

这导致将树内插件迁移到CSI。Kubernetes开发人员提到这种迁移时说:“当Kubernetes集群管理员更新集群以启用CSI迁移时,现有的有状态部署和工作负载将继续像往常一样运行;不过在幕后,Kubernetes将所有存储管理操作(以前针对树内驱动程序)的控制权交给CSI驱动程序。”

其他功能

Kubernetes 1.17的其他功能包括如下:

  • 按条件为节点设置污点:表示使用污点(taint)阻止调度的节点条件。
  • 可配置的Pod进程命名空间:用户可以通过在PodSpec中设置一个选项,配置Pod中的容器以共享通用的PID名称空间。
  • 动态最大卷计数:增添了对每个节点最大卷的动态和通用机制的支持。
  • 在SubPath挂载中提供了环境变量扩展。
  • 支持自定义资源的默认设置。
  • 将频繁的Kubelet Heartbeat移到Lease Api:Kubelet在节点上创建并定期续订Lease,节点生命周期控制器将该租约视为运行状况信号。
  • 支持watch bookmark,以减轻kube-apiserver的负载。
  • 行为驱动的一致性测试:一致性行为预先定义,与验证那些行为的测试分开。
  • 服务的终结器保护:添加终结器保护以确保在删除相关的LB之前,不完全删除服务资源。
  • 避免为每个watcher独立地序列化同一对象。
  • IPv4 / IPv6双栈支持。
  • 可感知拓扑结构的服务路由。
  • 面向Windows的RunAsUserName。

想下载Kubernetes的1.17版本,请访问该版本的官方GitHub页面。想了解有关新功能的更多信息,请在此处参阅完整的变更日志

原文标题:Kubernetes 1.17 Brings Volume Snapshots, Easier Plugin Management,作者:Jack Wallen

【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】

责任编辑:未丽燕 来源: 51CTO.com
相关推荐

2021-12-06 08:00:00

Kubernetes容器数据

2022-02-24 08:26:32

Kubernetes卷快照Longhorn

2023-08-02 07:01:37

2022-04-15 15:56:30

云原生容器

2009-08-04 15:55:56

OracleEPMBI

2015-08-04 10:26:44

OpenStackKubernetes容器管理

2022-05-24 09:00:00

云计算Kubernetes安全

2022-06-21 10:20:28

元宇宙神经科学互联网

2015-05-06 16:48:55

冰峰

2023-03-03 13:06:34

大脑分层预测

2021-08-19 09:43:09

Fedora 35LLVMGo 1.17

2013-05-07 10:11:28

2015-08-05 15:10:24

UbuntuLVM

2020-02-11 12:35:19

Kubernetes容器

2022-07-21 12:53:43

Qt Creator开源

2020-07-20 07:00:00

KubernetesHostPath

2011-01-06 11:31:15

部署IPv6IPv6

2024-01-22 12:46:00

KubernetesAPI接口

2017-11-22 13:50:08

Bolts线程方法

2021-05-30 22:53:05

Go1.17版本 tip
点赞
收藏

51CTO技术栈公众号