历时5月,Kubernetes1.19正式发布 !Ingress迎来GA,存储容量跟踪新特性
我们迎来了Kubernetes1.19,这是2020年发布的第二个版本,也是迄今为止最长的发布周期,总共持续了20周。它包括33个增强功能:12个增强功能达到稳定版,18个增强处在beta版,还有13个是alpha版。
由于COVID-19、George Floyd抗议事件,以及我们作为发布团队经历的其他一些全球事件,1.19的发布与常规版本有很大不同。由于上述原因,我们决定调整时间表,让SIG、工作组和贡献者能够有更多时间来完成工作。同时,也让大家有时间关注Kubernetes(http://www.alauda.cn)项目之外的生活,并确保他们良好的精神健康状态。
贡献者是Kubernetes的核心,而并非相反。Kubernetes的行为准则要求善待彼此、成就彼此,尽管我们的世界动荡不安,我们看到的依然是一个伟大且充满谦逊的社区。
1Kubernetes支持窗口增加到一年
长期支持(LTS)工作组在2019年初进行的一项调查显示,Kubernetes终端用户中有相当一部分未能在当前9个月的支持期内升级。该调查的其他结论还包括,如果补丁支持期限延长到12-14个月,30%的用户将能够跟上新版本的部署。这似乎是正确的,无论用户使用的是自建,还是商业销售的发行版。
因此,将支持期延长将有超过80%的用户享受到支持版本,而现在只有50-60%。一年的支持期为最终用户提供了必要的缓冲,并且与熟悉的年度规划周期更加协调。因此,从Kubernetes 1.19版本开始,支持窗口将延长到一年。
2存储容量跟踪
传统上,Kubernetes调度器基于这样的假设:集群中的任何地方都有额外的持久性存储,并且具有无限的容量。拓扑约束解决了第一点,但是到目前为止,pod调度仍然没有考虑到剩余的存储容量可能不足以启动新的pod。存储容量跟踪是一个新的alpha特性,通过为CSI驱动程序添加API来报告存储容量,并在为pod选择节点时在Kubernetes调度器中使用该信息。此功能可作为支持本地卷和其他容量受限的卷类型的动态资源调配的基础。
3临时通用卷
Kubernetes提供的卷插件的生命周期与pod相关,可以用作临时空间(例如,内置的emptydir卷类型)或将一些数据加载到pod中(例如,内置的configmap和secret卷类型,或“CSI inline volumes”)。新的通用临时卷alpha功能允许任何支持动态资源调配的现有存储驱动程序用作临时卷,并将卷的生命周期绑定到Pod。它可以用来提供与根磁盘不同的临时存储,例如持久内存,或者该节点上的一个单独的本地磁盘。支持卷配置的所有Storage Class参数。支持Persistent Volume Claims支持的所有功能,例如存储容量跟踪、快照和恢复以及卷大小调整
4CSI卷运行状况监控
本次Kubernetes 1.19发布了CSI运行状况监测的alpha版本。这个特性使CSI驱动程序能够与Kubernetes(https://www.alauda.cn)共享来自底层存储系统的异常卷情况,从而能够将它们作为事件报告到PVC或Pod上。该特性可以作为Kubernetes程序化检测和解决单卷运行状况问题的基础。
5Ingress正式迎来 GA
在将Ingress API推向GA方面,API本身已经在beta版中可用了很长时间,由于不断被用户和负载均衡/Ingress Controller提供商等所使用和采用,它已经获得了事实上的GA状态。在没有完全替代的情况下放弃它是不可行的做法。它是一个重要的API,并捕获了一系列重要的用例。在这一点上,更谨慎的做法是将当前的API声明作为社区支持的V1版,并对其状态进行编码,同时开发 Ingress API V2版本,或具有超集特性的新的API。
6结构化日志
在v1.19之前,在Kubernetes控制平面进行日志记录无法保证日志消息和对Kubernetes对象的引用保持统一的结构。这使得解析、处理、存储、查询和分析日志变得困难,并且迫使管理员和开发人员在大多数情况下依赖基于一些正则表达式的临时解决方案。由于这些问题的存在,任何基于这些日志的分析解决方案都很难实现和维护。
7新的klog方法
Kubernetes 1.19版本引入了klog库的新方法,这些方法为格式化日志消息提供了一个更结构化的接口。每个现有的格式化日志方法(Infof、Errorf)都与结构化方法(InfoS、ErrorS)相匹配。新的日志记录方法接受日志消息作为第一参数,并将键值对列表作为第二变量参数。这种方法允许渐进地采用结构化日志记录,而不需要一次将所有Kubernetes指向新的API。
8kubelet的客户端TLS证书轮换
kubelet使用私钥和证书向kube-apiserver验证kubelet。当kubelet第一次启动时,通过集群外机制将证书提供给kubelet。自从kubernetes v1.8以来,集群开始引入一个beta过程,用于获取初始证书/密钥对,并在证书到期时对其进行轮替。在Kubernetes v1.19中,这一功能进入稳定版本。
在kubelet启动期间,将扫描文件系统,以查找由证书管理器管理的现有证书/密钥对。如果有可用的证书/密钥,则将加载该证书/密钥。如果没有,kubelet将检查其配置文件中的编码证书值或文件引用。如果证书是引导证书,那么它将用于生成密钥、创建证书签名请求并从API服务器请求签名证书。
在证书到期后,证书管理器负责提供正确的证书,生成新的私钥并请求新的证书。由于kubelet请求将证书签名作为其引导序列的一部分,并且不断对来自kubelet的证书签名请求进行自动批准,因此整个集群的可管理性将大幅提升。
9其他更新
以下功能迎来稳定版:
Seccomp
Kubelet客户端TLS证书轮换
限制节点对API的访问
重新设计Event API
Ingress进入V1稳定版
Certificate Signing Request API
无需Docker构建 Kubelet
重大变化:
节点拓扑管理器
新的端点API
将Kubernetes支持窗口延长到一年
其他重要特性:
运行多个Scheduling Profiles
Certificate Signing Request API
不可变Secrets 和ConfigMaps
10Kubernetes 1.19版本logo
是你们激发了Kubernetes 1.19发布标识的灵感!这个版本更像是一场马拉松,它证明了当这个世界是一个荒芜之地时,我们可以走到一起,做一些不可思议的事情。
原文链接:
https://kubernetes.io/blog/2020/08/26/kubernetes-release-1.19-accentuate-the-paw-sitive/
历时5月,Kubernetes1.19正式发布 !Ingress迎来GA,存储容量跟踪新特性的更多相关文章
- Java 11 正式发布,这 8 个逆天新特性教你写出更牛逼的代码
美国时间 09 月 25 日,Oralce 正式发布了 Java 11,这是据 Java 8 以后支持的首个长期版本. 为什么说是长期版本,看下面的官方发布的支持路线图表. 可以看出 Java 8 扩 ...
- Java 11正式发布,这几个逆天新特性教你写出更牛逼的代码
就在前段时间,Oracle 官方宣布 Java 11 (18.9 LTS) 正式发布,可在生产环境中使用! 这无疑对我们来说是一大好的消息.作为一名java开发者来说,虽然又要去学习和了解java11 ...
- JDK 16 正式发布,一次性发布 17 个新特性…不服不行!
上一篇:Java 15 正式发布, 14 个新特性 JDK 16 正式发布 牛逼啊,JDK 15 刚发布半年(2020/09/15),JDK 16 又如期而至(2021/03/16),老铁们,跟上. ...
- kubernetes1.7正式发布
Kubernetes发布历史回顾 Kubernetes 1.0 - 2015年7月发布 Kubernetes 1.1 - 2015年11月发布 Kubernetes 1.2 - 2016年3月发布 K ...
- Kubernetes1.4正式发布
Kubernetes1.4正式发布. 昨天刚预测1.4即将正式发布,结果晚上Kubernetes1.4就正式发布了. 先看看Kubernetes发布历史: Kubernetes 1.0 - 2015年 ...
- Kubernetes1.5正式发布
Kubernetes1.5正式发布 修复了很多已知问题 进一步增强federation相关特性 将PetSet改名为StatefulSet 将ScheduledJobs改名为CronJobs 新增了命 ...
- vue3.0和2.0的区别,Vue-cli3.0于 8月11日正式发布,更快、更小、更易维护、更易于原生、让开发者更轻松
vue3.0和2.0的区别Vue-cli3.0于 8月11日正式发布,看了下评论,兼容性不是很好,命令有不少变化,不是特别的乐观vue3.0 的发布与 vue2.0 相比,优势主要体现在:更快.更小. ...
- kubernetes1.5新特性跟踪(续)
Kubernetes发布历史回顾 Kubernetes 1.0 - 2015年7月发布 Kubernetes 1.1 - 2015年11月发布 Kubernetes 1.2 - 2016年3月发布 K ...
- kubernetes1.5新特性跟踪
Kubernetes发布历史回顾 Kubernetes 1.0 - 2015年7月发布 Kubernetes 1.1 - 2015年11月发布 Kubernetes 1.2 - 2016年3月发布 K ...
随机推荐
- Windows查看端口被占用的程序!
"到底是谁占用了80端口,该怎么查,怎么终止它?",这里就简单讲解一下,在windows下如何查看80端口占用情况?是被哪个进程占用?如何终止等. 这里主要是用到windows下的 ...
- bjdctf_2020_router
这道题其实主要考linux下的命令.我们来试一下!!! 可以看到,只要我们在命令之间加上分号,就可以既执行前面的命令,又执行后面的命令... 这道题就不看保护了,直接看一下关键的代码. 这里可以看到s ...
- MES目前应用很多,为什么APS计划排程系统应用很少?
一.APS自动化计划排程能带来哪些效益? 1.提高订单准时交货率,提高客户满意度 2.缩短生产制造周期,提高生产效率 3.多品种.小批量.以销定产,快速解决插单.急单预测交期问题 4.减少物料采购提前 ...
- 教会你彻底解决android studio c/c++ jni代码无法跳转
时不时总会遇到原来c c++ jni代码跳转很欢乐,突然也不知道咋滴了build也能build成功,运行也能正常运行,就是代码不能跳转了,首先来科普下一些背景知识. 如果让代码跳转起来,大概需要做哪些 ...
- java 数据类型:集合接口Collection之List~ArrayList:remove移除;replaceAll改变原有值;sort排序;迭代器listIterator();
什么是List集合: 特点: 元素有序可重复的集合. 集合中每个元素都有其对应的顺序索引. List集合默认按元素的添加顺序设置元素的索引,索引从0开始. List接口的常用方法: List可以使 ...
- Chrome导出导入书签
Chrome导出标签 Chrome导入书签
- RuoYi项目整合Mybatis-Plus 框架
RuoYi框架默认使用的是Mybatis框架 但是有的习惯使用MP框架,这就很不方便, 不过可以简单进行整合 引入依赖 <dependency> <groupId>com.ba ...
- Mac下好用的“visio”之 OmniGraffle Pro
!!版权声明:本文为博主原创文章,版权归原文作者和博客园共有,谢绝任何形式的 转载!! 作者:mohist 1.官方网站:https://www.omnigroup.com/omnigraffle/ ...
- nim_duilib(12)之menu(2)
introduction 更多控件用法,请参考 here 和 源码. 本文将介绍menu的选项注册回调 before starting 本文的代码基于上一篇 stage1 回到项目demo_xml, ...
- 【LeetCode】283. Move Zeroes 解题报告(Java & Python)
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 方法一:首尾指针 方法二:头部双指针+双循环 方法三 ...