今天,我们高兴地宣布Kubernetes 1.14版本的正式亮相,这亦是我们在2019年当中进行的首次发布!
Kubernetes 1.14版本由31项增强功能组成,具体包括:10项稳定版功能,12项beta测试功能,以及7项全新功能。此次版本的核心主题在于可扩展性,以及在Kubernetes上支持更多工作负载。本轮共有三项主要功能迎来通用版本,另有一项重要安全功能步入beta测试阶段。
与此前发布的各个Kubernetes版本相比,这一次进入稳定阶段的增强功能数量达到了历史新高。对于用户与运营人员而言,这无疑是我们践行承诺、支持使用期望的一大重要里程碑。此外,1.14版本当中还迎来了多项值得关注的Pod与RBAC增强功能,我们将在后文中“其它值得关注的功能”章节中对此做出讨论。
下面,让我们深入了解此版本中的各大主要功能。

对Windows节点的生产级支持

在此之前,Kubernetes当中的Windows节点一直处于beta测试阶段,旨在允许众多用户以实验性方式体验Kubernetes for Windows容器的实际价值。如今,Kubernetes开始正式支持将Windows节点添加为工作节点并部署Windows容器,从而确保庞大的Windows应用程序生态系统得以利用我们平台提供的强大功能。这意味着以往在Windows应用程序与Linux应用程序层面投入大量资金的企业不必再寻求独立的协调器管理自身工作负载,而能够不再受到具体操作系统类型的影响提升整体部署的运营效率。
本次Kubernetes为Windows容器带来的核心功能特性包括:

  • 支持将Windows Server 2019引入工作节点与容器

  • 支持采用Azure-CNI、 OVN- Kubernetes以及Flannel的树外网络

  • 改进了对Pod、服务类型、工作负载控制器以及指标/配额的支持能力,以便与Linux容器的自有功能实现更为紧密的匹配

值得关注的Kubectl更新

新的Kubectl说明文档与徽标
Kubectl的说明文档经过完全重写,其重点在于利用声明性Resource Config实现资源管理。这份文档目前以独立站点的形式发布,采用电子书格式,并在k8s.io文档中提供对应链接(具体请访问 https://kubectl.docs.kubernetes.io)。
您也将在新的文档站点中看到新的kubectl徽标与吉祥物(音为kubee-cuddle)设计外观。
Kustomize集成
Kustomize的声明性Resource Config创作功能现在可以通过-k标记(适用于apply及get等命令)以及Kustomize子命令在kubectl中获取。Kustomize旨在帮助用户创作及复用包含Kubernetes各原生概念的Resource Config。用户现在能够利用kubectl apply -k dir/将拥有kustomization.yaml的目录适用于集群。此外,用户也可以将定制化Resource Config发送至stdout,而无需通过kubectl kustomize dir/加以应用。这些新的功能被记录在新的说明文档当中,具体请参阅:https://kubect.docs.kubernetes.io。
我们还将继续通过Kubernetes的kustomize repo对Kustomize子命令进行开发。最新的Kustomize功能将以独立的Kustomize二进制文件(发布至kustomize repo)的形式更为频率地发布,且在每一轮Kubernetes发布之前在kubectl中得以更新。
kubectl插件机制逐步趋于稳定kubectl插件机制允许开发人员将自己的定制化kubectl子命令以独立二进制文件的形式发布出来。这些成果将可帮助kubectl与附加porcelain(例如添加set-ns命令)实现更多新的高级功能。
各插件必须采用kubectl-作为命名前缀,并保存在用户的$PATH当中。在通用版本中,插件机制已经迎来大幅简化,目前其整体效果类似于Git插件系统。
持久本地卷迎来通用版本

这项功能正逐渐稳定,允许用户将本地连接存储作为持久卷来源。考虑到实际性能与成本要求,分布式文件系统与数据库往往成为持久性本地存储的主要用例。与云服务供应商相比较,本地SSD一般可提供超越远程磁盘的性能水平。而与裸机方案相比,除了性能之外,本地存储通常成本更低,亦是配置分布式文件系统的一项必要条件。
PID限制正转向beta测试阶段

进程ID(简称PID)属于Linux主机上的一种基本资源。毫无疑问,我们无法接受在未出现任何其它资源限制的情况下,因为进程ID不足而影响任务运行,甚至导致主机稳定性降低。管理员需要相关机制以确保用户Pod中的PID不会被耗尽,否则各类主机守护程序(包括运行时与kubelet等)都将受到影响。此外,管理员还需要确保在各Pod之间限制PID,从而保证其不致影响到运行在节点上的其它工作负载。
在目前的beta功能中,管理员可以对每个Pod中的PID数量进行预定义,从而实现Pod与Pod间的PID隔离。此外,管理员还可以通过node allocatable为用户Pod保留大量可供分配的PID,即以alpha测试功能的方式实现类似的Pod与Pod间PID隔离。我们计划在下一版本当中将此项功能转为beta测试版。

更多其它值得关注的功能

Pod优先级与抢占机制使得Kubernetes调度程序能够首先调度更为重要的Pod,从而在集群资源不足时删除不太重要的Pod,最终为意义更重大的Pod保留运行空间。具体重要性由优先级机制负责指定。
Pod Readiness Gates能够为Pod的就绪情况提供外部反馈扩展点。
强化默认的RBAC的clusterrolebingdings发现能力,其移除了原本默认可通过未授权访问的API集发现功能,旨在提升CRD隐私性以及默认集群的总体安全水平。

推出时间

目前Kubernetes 1.14已可通过GitHub[1]进行下载。要开始使用Kubernetes,我们建议您首先查看各交互式教程[2]。您也可以利用kubeadm[3]轻松安装本次发布的1.14版本。
相关链接:

  • https://github.com/kubernetes/kubernetes/releases/tag/v1.14.0

  • https://kubernetes.io/docs/tutorials/

  • https://kubernetes.io/docs/setup/independent/create-cluster-kubeadm/

相关服务请访问:https://support.huaweicloud.com/cce/index.html?utm_content=cce_helpcenter_2019

Kubernetes 1.14发布:对Windows节点的生产级支持、Kubectl更新与持久本地卷通用版本已全面到来的更多相关文章

  1. 从Kubernetes 1.14 发布,看技术社区演进方向

    Kubernetes 1.14 正式发布已经过去了一段时间,相信你已经从不同渠道看过了各种版本的解读. 不过,相比于代码 Release,马上就要迎来5周岁生日的Kubernetes 项目接下来如何演 ...

  2. 用于云计算的自我更新、自我修补的Linux版本已发布!

    自动化是 IT 行业的增长趋势,其目的是消除重复任务中的手动干扰.Oracle 通过推出 Oracle Autonomous Linux 向自动化世界迈出了又一步,这无疑将使 IoT 和云计算行业受益 ...

  3. 解决 Prometheus 不能获取 Kubernetes 集群上 Windows 节点的 Metrics

    背景 接上一篇 快速搭建 Windows Kubernetes , 我们发现原来在 Windows Kubernetes 会有一些与在 Linux 上使用不一样的体验,俗称坑,例如 hostAlias ...

  4. 二进制方式安装Kubernetes 1.14.2高可用详细步骤

    00.组件版本和配置策略 组件版本 Kubernetes 1.14.2 Docker 18.09.6-ce Etcd 3.3.13 Flanneld 0.11.0 插件: Coredns Dashbo ...

  5. kubernetes 1.14安装部署dashboard

    简单介绍: Dashboard是一个基于web的Kubernetes用户界面.您可以使用Dashboard将容器化应用程序部署到Kubernetes集群,对容器化应用程序进行故障诊断,并管理集群资源. ...

  6. centos7使用kubeadm安装部署kubernetes 1.14

    应用背景: 截止目前为止,高热度的kubernetes版本已经发布至1.14,在此记录一下安装部署步骤和过程中的问题排查. 部署k8s一般两种方式:kubeadm(官方称目前已经GA,可以在生产环境使 ...

  7. Asp.net Core 1.0.1升级到Asp.net Core 1.1.0 Preview版本发布到Windows Server2008 R2 IIS中的各种坑

    Asp.net Core 1.0.1升级到Asp.net Core 1.1.0后,程序无法运行了 解决方案:在project.json中加入runtime节点 "runtimes" ...

  8. 使用Kubernetes演示金丝雀发布

    使用Kubernetes演示金丝雀发布 为了更直观的看出金丝雀发布的效果,我们这里使用了Prometheus监控来观察这个过程.不知道怎么使用Prometheus的同学请看使用Prometheus监控 ...

  9. Cloud Native Weekly | Kubernetes 1.13发布

    云原生一周精选 1——Kubernetes 1.13发布 2——Kubernetes首次出现重大安全漏洞 3——Docker和微软公司推出云原生应用的部署规范 4——谷歌推出beta版本的Cloud ...

随机推荐

  1. Python:实现图片裁剪的两种方式——Pillow和OpenCV

    原文:https://blog.csdn.net/hfutdog/article/details/82351549 在这篇文章里我们聊一下Python实现图片裁剪的两种方式,一种利用了Pillow,还 ...

  2. 利用Nginx限制静态页面的访问权限(防盗链、禁止爬虫)

    1.限制爬虫配置 if ($http_user_agent ~* "spider|crapy|Sogou web spider|Baiduspider|Googlebot|Bingbot|3 ...

  3. C++ 理解函数对象与lambda表达式

    参考<21天学通C++>第21与第22章节,对函数对象进行介绍,同时通过lambda表达式这一匿名函数对象的简洁方式加深对函数对象的理解.本篇博文的主要内容是: (1) 函数对象的概念: ...

  4. git的快速入门

    Git是目前世界上最先进的分布式版本控制系统(注意,仅仅是一个程序,而不是正真意义上的系统). Why为什么需要版本控制? 场景1:大学毕业前夕,你在完成毕业论文,初稿A写好了,找老师修改,老师提出意 ...

  5. nmcli简单使用

    nmcli connection 查看所有网卡信息 nmcli connection show ens33 查看网卡具体信息 nmcli connection reload 是配置文件生效

  6. python学习-58 configparse模块

    configparse模块 1.生成文件 import configparser # 配置解析模块 config = configparser.ConfigParser() # config = { ...

  7. 02 File类的方法练习——遍历文件夹

    思路 需要遍历的文件夹 File 使用listFile列出下级文件及文件夹 判断得到的list是否为空,为空则输出当前文件夹名称 如果不为空,逐个判断是文件还是文件夹 如果是文件,输出文件名 如果是文 ...

  8. WSL部署记录

    1. 管理员打开PowerShell,开启WSL功能: Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Sub ...

  9. 虚拟机VMware中安装Ubuntu18.04

    准备工作 Ubuntu 获取地址: 官网 清华镜像站 VMware 获取地址链接 安装过程 Vmware的安装过程此处不在赘述,不清楚如何安装的请自行百度,参见VMware14安装教程 然后就是Vmw ...

  10. mouseenter 与 mouseover 区别于选择

    mouseover事件, 箭头在子元素移动会触发冒泡事件,  子元素的鼠标箭头可触父元素方法, 相反,mouseenter事件功能与mouseover类似, 但鼠标进入某个元素不会冒泡触发父元素方法. ...