前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >K8S 1.10 | 技术角度解读 10 大模块更新

K8S 1.10 | 技术角度解读 10 大模块更新

作者头像
DevOps时代
发布2018-06-22 12:47:12
7770
发布2018-06-22 12:47:12
举报
文章被收录于专栏:DevOps时代的专栏

2018 年 Kubernetes 第一个版本 1.10 已经发布。新版本持续增强了 Kubernetes 的成熟性、可扩展性以及可插拔性。最新的版本在 3 个关键功能(存储、安全和网络)增加了其稳定性。

像往常一样,本次 Kubernetes 1.10 版本发布依然存在处于不同阶段(alpha,beta 和 GA)的功能,其中一些功能在此版本中值得特别关注。那么哪些功能的变动会对我们的应用产生影响呢?

接下来就请你跟我们一起从技术专业角度,听一线工程师解读 Kubernetes 1.10 新功能,看最权威的上游 GitHub release notes 怎么说!

新发布的 Kubernetes 1.10 版本有几个值得注意的新增特性,包括引入了 kubectl 外部证书提供者(alpha 版本)、在安装的时候可以从 DNS service 切换到 CoreDNS(beta 版本)、容器存储接口(CSI)以及本地持久数据卷到了 beta 版本。

主要更新 10 个模块

1

Node

Node 方面的更新大多围绕控制层面:

  • Kubelet 动态配置(Dynamic Kubelet Configuration beta 版本):可以在 Node 不下线的情况下改变 Kubelet 的配置;
  • 可配置 Pod 中的容器是否共享一个 namespace(alpha 版本);
  • CRI 方面也做了一些改进,并升级到 v1alpha2 版本:支持 Windows 容器的配置; CRI 验证测试的 beta 版本。

此外,资源管理 Working Group 在 1.10 版本中将 3 个功能升级到了 beta 版本:

  • CPU Manager
  • 允许用户请求独有的 CPU 核,这将带来几个方面的性能提升;
  • 对网络延时敏感的应用;
  • 对 CPU 缓存敏感的应用。
  • Huge Pages
  • 允许 Pod 请求 2Mi 或者 1Gi 的 Huge Pages;
  • 这将对内存有很大需求的应用带来好处。
  • Device Plugin
  • 提供了第三方设备资源发现的机制;
  • 包括 GPU,FPGA,高性能 NIC,InfiniBand;
  • 以及其他相似的需要特定设置的计算资源。

2

Sig-storage

Kubernetes 1.10 版本对本地存储和持久化存储都进行了增强:

  • Mount namespace propagation 允许容器以 rslave 的方式挂载存储卷,这样主机的挂载就可以在容器里面可见,或者以 rshared 的方式挂载,这样容器里面的挂载,主机也可以看到。
  • Local Ephemeral Storage Capacity Isolation 允许设置本地临时存储的 requests 和 limits 。 另外,你也可以创建本地持久化存储,也就是说可以利用 attach 到本地的磁盘来创建 PV, 而不像以前那样,只能基于网络存储卷创建 PV。
  • PV 方面,1.10 版本包含 PV/PVC 保护, 如果 PVC/PV 正在被 Pod/PVC 使用,那么就不能直接删除 PVC/PV。
  • 这个版本还包括本地持久化存储的 Topology Aware Volume Scheduling ,稳定版本的 Detailed storage metrics of internal state 以及 beta 版本的 Out-of-tree CSI Volume Plugins.

3

Windows

1.10 版本继续对 Windows 进行现有 feature 增强,包括容器 CPU 资源,镜像文件系统数据,和 flexvolumes。 还增加了 Windows 服务控制管理器(Windows service control manager)支持,对单容器 Pod 进行 Hyper-V 隔离实验性支持。

4

OpenStack

SIG-OpenStack 更新 OpenStack provider 。可以使用更新的 APIs,合并代码到一个库,和 Cloud Provider Working Group 合作制定长久计划,把 provider 相关的代码移动到一个单独的代码库里面,改善代码测试,增强与 OpenStack 开发社区的联系。

5

API-machinery

API Aggregation 在 1.10 中升级为稳定版本,可以用于生产。 Webhooks 也有了许多改进,包括对 alpha 版本 self-hosting authorizer webhooks 的支持。

6

Auth

Kubernetes 1.10 版本为新的 authentication 方法添加奠定了基础,包括 alpha 版本的 External client-go credential providers 和 TokenRequest API。另外,Pod Security Policy 允许管理员决定 Pods 可以跑在什么样的 contexts 中,还允许管理员限制 node 对 API 的访问。

7

Azure

Kubernetes 1.10 包含 alpha 版本的 Azure support for cluster-autoscaler, 还有 support for Azure Virtual Machine Scale Sets。

8

CLI

新版本包含了对 kubectl get and describe 的改进,以便更好地与 extensions 结合。为了更好的用户体验,server 端将会返回这些信息。

9

Cluster Lifecycle

这个版本包括对 beta 版本 out-of-process and out-of-tree cloud providers 的支持。

0

Network

Kubernetes 1.10 关于网络的变化集中在控制层面。用户现在可以对 Pod 的 resolv.conf 进行配置,而不是依赖 cluster DNS,这个是 beta 版本,用户还可以配置 NodePort IP 地址,也可以把默认的 DNS 插件改为 CoreDNS (beta 版本)。

工程师技术评论

「K8sMeetup 中国社区」此次邀请到两位 Caicloud(才云科技) 工程师,为 Kubernetes 1.10 做了一个简短评论:

  • 1.10 版本中将 Device Plugin 升级到了 beta 版本,这将对 GPU 设备的发现、调度和管理带来更好的支持,包括深度学习在内的应用也可以更好地运行在 Kubernetes 平台上。才云科技和 Google 等公司共同发起的 Kubeflow 项目也将在第一时间使用这个新的特性,来验证在真实的用户场景下的性能。
  • alpha 版本的 GPU 功能(ResourceName 是 alpha.kubernetes.io/nvidia-gpu)将在 1.11 版本中逐渐被废除,请大家及时切换到 Device Plugin 这个新的功能。
  • 对存储部分来说,主要是对一些 alpha 版本 feature 的升级增强。这次更改主要集中在 CSI、 Local Storage(Ephemeral and Persistent)、Storage Object In Use Protection 以及 PV 和 Scheduling 的结合等。 这些 features 都升级成了 beta 版本,功能更加稳定。

蒸蒸日上

用户亮点

根据 CNCF 最近的一项调查显示,超 49% 的亚洲受访者正在使用 Kubernetes 进行生产;另有 49% 的受访者正在评估其用于生产的可能性。目前,全球范围内已有众多组织正在大规模地使用 Kubernetes 进行生产。以下是几个颇具特色的用户案例:

  • 全球最大的电信设备制造商华为公司,将其内部 IT 部门的应用迁移到 Kubernetes 上运行。这使得全球部署周期从本来的一周时间缩减到几分钟,应用交付的效率提高了 10 倍。
  • 全球五大在线旅行社及酒店集团之一的锦江之星,使用 Kubernetes 将其软件发布速度从几小时缩减至几分钟。此外,他们还利用 Kubernetes 来提高其在线 workload 的可扩展性和可用性。
  • 来自德国的媒体和软件公司 Haufe Group,利用 Kubernetes 将发布新版本的时间控制在半小时内。该公司实现了将夜间容量缩减至一半,硬件成本节省 30% 的应用效果。
  • 全球最大的资产管理公司 BlackRock ,使用 Kubernetes 进行快速迁移,并在 100 天内完成了一款投资者研究网络应用程序的开发与交付。

最后让我们对整个 Kubernetes 社区努力工作表示感谢,是他们的努力工作让 Kubernetes 1.10 成为功能最丰富的版本之一。作为一个快速发展的开源项目,Kubernetes 逐渐走向成熟并积极适应用户的需求,所有这一切都归功于整个 Kubernetes 生态系统的众多贡献者。

原文链接:

https://github.com/kubernetes/sig-release/blob/master/releases/release-1.10/release-notes-draft.md

参考文献:

https://coreos.com//blog/kubernetes-110-released

http://blog.kubernetes.io/

http://blog.kubernetes.io/2018/03/kubernetes-1.10-stabilizing-storage-security-networking.html

注:本文转载自公众号 k8sMeetup

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-06-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 DevOps时代 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档