Kubernetes 1.12公布:Kubelet TLS Bootstrap与Azure虚拟机规模集(VMSS)迎来通用版本号
https://mmbiz.qpic.cn/mmbiz_jpg/A1HKVXsfHNn5CZvS4CDOibc49lc7UYSlENgwicPLZnPN1xJ3XtLTGsyBlBlvNN1nuYYxcZRpsHibVV9ecP96LQLow/640" alt="640" />
今天,我们非常高兴地推出Kubernetes 1.12版本号,这也是我们今年以来公布的第三个版本号。
此次公布继续关注内部改进与功能完好,旨在进一步提升与Kubernetes对接时的稳定性。
这一最新版本号亦在安全性与Azure等关键功能上做出增强。另外。最新版本号还为两项备受期待功能的通用版本号——分别为Kubelet TLS Bootstrap与Azure虚拟机规模集(简称VMSS)——提供支持。
这些新特性。意味着新版本号将带来更强大的安全性、可用性、弹性以及易用性。同一时候亦可帮助用户更快将生产应用推向市场。
最后。此版本号也再次表明Kubernetes的开发人员团队正日趋成熟并不断壮大。
以下来看此版本号中的几大主要新特性:
Kubelet TLS Bootstrap通用版本号正式亮相
https://mmbiz.qpic.cn/mmbiz_png/b2YlTLuGbKDsbJzupnILVFhPtMaRjmvPKYRqTMjibE9pnd8oiawLVrQbOHQe4wBXkBQkzpKCWPKBqWgOLgwccBug/640" alt="640" />
我们非常高兴地公布Kubelet TLS Bootstrap的通用版本号(简称GA)。
在Kubernetes 1.4其中,我们曾引入一个API,用于从集群级证书颁发机构(简称CA)处进行证书申请。此API的初衷在于为kubelet提供TLSclient证书配置。通过这项功能,kubelet将可以自行引导至TLS安全集群,更可以自己主动实现签名证书的供应与分发。
之前,在首次执行kubelet时,用户必须在集群启动期间立足带外进程为其提供client凭证。
这部分工作须要由提供这些凭证的操作人员完毕。非常明显。此类任务对于手动执行而言过为繁重,且非常难轻松实现自己主动化,因此不少操作人员倾向于为所有kubelet部署一套具有单一凭证及单一身份的集群。但在这样的设置之下,节点授权器(Node Authorizer)与节点限制准入控制器(NodeRestriction admission controller)等节点锁定功能将无法部署。
为了缓解这样的情况,SIG Auth为kubelet引入了一种新的私钥与CSR生成方法,可将其提交至集群级证书签名流程其中。
眼下的v1(通用版本号)标识代表着其已经拥有生产级别的稳定性与就绪水平,且具有长期向下兼容性保证。
除此之外,kubeletserver证书引导程序与轮换机制也正朝着beta測试版迈进。眼下。在kubelet首次启动时。其会生成一个自签名证书/密钥对,用于接收传入的TLS连接。
此项功能的详细流程为:以本地方式生成一个密钥,而后面向集群APIserver发送一条证书签名请求以获取由集群root证书颁发机构签名的关联证书。此外,当证书即将过期时,其还会利用同样的机制申请经过更新的证书。
对Azure虚拟机规模集(简称VMSS)以及Cluster-Autoscaler的支持现已稳定
https://mmbiz.qpic.cn/mmbiz_png/b2YlTLuGbKDsbJzupnILVFhPtMaRjmvPKYRqTMjibE9pnd8oiawLVrQbOHQe4wBXkBQkzpKCWPKBqWgOLgwccBug/640" alt="640" />
Azure虚拟机规模集(简称VMSS)同意用户依据需求或设置的计划创建并管理可自己主动添加或降低的同类虚拟机资源池。
通过这样的方式。您将可以轻松对多套虚拟机进行管理、扩展以及负载均衡,从而提供更高的可用性与应用程序弹性。终于支撑起以Kubernetes工作负载形式执行的大规模应用程序。
凭借这一新的稳定功能,Kubernetes现已支持利用Azure VMSS扩展容器化应用程序,包含将其与cluster-autoscaler相集成以依据同样条件自己主动调整Kubernetes集群的规模。
其它值得关注的功能更新
RuntimeClass 是一种新的集群范围资源,可以将容器执行时属性在控制层中进行表达。
眼下。这项功能正处于alpha測试阶段。
面向Kubernetes与CSI的快照/恢复功能眼下也处于alpha測试阶段。其负责提供标准化API设计(CRD)。并为CSI分卷驱动程序提供PV快照/恢复支持。
拓扑感知动态配置眼下处于beta測试阶段,其使得存储资源可以感知到自身所处位置。此外,其对AWS EBS以及GCE PD的支持功能也在beta測试其中。
可配置Pod进程命名空间共享正逐步进入beta測试阶段。意味着用户可以在Pod之内配置容器,并通过在PodSpec中设置选项以共享同一通用PID命名空间。
按条件taint节点眼下处于beta測试阶段,意味着用户可以利用taint来表达阻止调度的节点条件。
Horizontal Pod Autoscaler中的随意/自己定义指标转向第二轮beta測试,用以检验其它功能增强效果。
此次又一次设计的Horizontal Pod Autoscaler功能包含对自己定义指标及状态条件的支持能力。
Horizontal Pod Autoscaler的规模调整提速功能亦逐步转向beta測试阶段。
Pod垂直伸缩功能眼下处于beta測试阶段,意味着用户可以在Pod的生命周期之内改变其中的资源限制条件。更详细地讲,这项功能对于pet(即撤销及重建成本极高的Pod)管理极具实际意义。
通过KMS实现的静态加密眼下处于beta測试阶段。其加入了很多其它加密提供程序。包含Google Cloud KMS、Azure Key Vault、AWS KMS以及Hashicorp Vault等。可以对存储在etcd中的数据进行加密。
推出时间
Kubernetes 1.12眼下已经可在GitHub上进行下载[1]。要開始使用Kubernetes,建议大家參阅相关交互式教程[2]。大家也可以利用Kubeadm安装此次公布的1.12版本号。
公布团队
此次最新版本号的实现源自数百位技术与非技术内容贡献者的共同努力。这里要特别感谢VMware开源技术中心编排与容器领域负责人Tim Pepper带领的公布团队。
该团队中的36位成员协调此次公布中的各项工作。包含文档、測试、验证以及功能完整性等等。
随着Kubernetes社区的发展壮大,我们的公布进程亦代表着开源软件开发领域的一项惊人成就。Kubernetes正迅速获得很多其它用户的青睐,而这样的增长亦创造出积极的反馈周期——很多其它贡献者为我们提交代码,并创造出更具活力的Kubernetes发展态势。
眼下,Kubernetes拥有超过2万2千名个人贡献者。活跃社区成员总量则超过4万5千人。
相关链接:
https://github.com/kubernetes/kubernetes/releases/tag/v1.12.0
https://kubernetes.io/docs/tutorials/
原文链接:https://kubernetes.io/blog/2018/09/27/kubernetes-1.12-kubelet-tls-bootstrap-and-azure-virtual-machine-scale-sets-vmss-move-to-general-availability/
Kubernetes实战培训
https://mmbiz.qpic.cn/mmbiz_png/b2YlTLuGbKDsbJzupnILVFhPtMaRjmvPKYRqTMjibE9pnd8oiawLVrQbOHQe4wBXkBQkzpKCWPKBqWgOLgwccBug/640?
" alt="640?" />
Kubernetes应用实战培训将于2018年10月12日在深圳开课,3天时间带你系统学习Kubernetes。
本次培训包含:容器基础、Docker基础、Docker进阶、Kubernetes架构及部署、Kubernetes经常使用对象、Kubernetes网络、存储、服务发现、Kubernetes的调度和服务质量保证、监控和日志、Helm、项目实践等。点击下方图片查看详情。
Kubernetes 1.12公布:Kubelet TLS Bootstrap与Azure虚拟机规模集(VMSS)迎来通用版本号的更多相关文章
- Kubernetes - Kubelet TLS Bootstrapping
一.简单说明 写这个的初衷是自己搜索TLS Bootstrapping的时候没有搜到自己想要的东西,因为TLS Bootstrapping经过很多版本之后也发生了一些变化,所以网上很多也是老的内容了. ...
- 使用Kubeadm搭建Kubernetes(1.12.2)集群
Kubeadm是Kubernetes官方提供的用于快速安装Kubernetes集群的工具,伴随Kubernetes每个版本的发布都会同步更新,在2018年将进入GA状态,说明离生产环境中使用的距离越来 ...
- Kubernetes v1.12/v1.13 二进制部署集群(HTTPS+RBAC)
官方提供的几种Kubernetes部署方式 minikube Minikube是一个工具,可以在本地快速运行一个单点的Kubernetes,尝试Kubernetes或日常开发的用户使用.不能用于生产环 ...
- 使用 Kubeadm 安装部署 Kubernetes 1.12.1 集群
手工搭建 Kubernetes 集群是一件很繁琐的事情,为了简化这些操作,就产生了很多安装配置工具,如 Kubeadm ,Kubespray,RKE 等组件,我最终选择了官方的 Kubeadm 主要是 ...
- 二进制安装 kubernetes 1.12(三) - 部署 Master 节点组件
在Master节点部署组件 在部署Kubernetes之前一定要确保etcd.flannel.docker是正常工作的,否则先解决问题再继续. 创建 CA 证书 mkdir -p /iba/master ...
- 二进制安装 kubernetes 1.12(一) - 安装 ETCD
软件环境 软件 版本 操作系统 CentOS 7.4 Docker 18-ce Kubernetes 1.12 服务器角色 角色 IP 组件 k8s-master 192.168.0.205 kube ...
- k8s TLS bootstrap解析-k8s TLS bootstrap流程分析
当k8s集群开启了TLS认证后,每个节点的kubelet组件都要使用由kube-apiserver的CA签发的有效证书才能与kube-apiserver通信:当节点非常多的时候,为每个节点都单独签署证 ...
- 12 款最好的 Bootstrap 设计工具
作为一位设计师,会经常追寻新鲜有趣的设计工具,这些工具会提高工作的效率,使得工作更有效, 最重要的是使工作变得更方便.非常肯定的说,随着日益增长的工具和应用的数量,设计和开发变得越来越简单了. 其中最 ...
- 使用kubeadm安装Kubernetes 1.12
使用kubeadm安装Kubernetes 1.12 https://blog.frognew.com/2018/10/kubeadm-install-kubernetes-1.12.html 测试环 ...
随机推荐
- 栈 VS 队列
linkStack.javalinkQueue.java程序强调栈和队列是概念上的实体,独立于它们的具体实现.用数组或者是用链表实现栈都是一样的.栈的重要性在于它的push()操作和pop()操作.以 ...
- SpringBoot使用WebJars
本人主要做的是java,但是从第一份工作开始,就一直在做一个写前端又写后端的程序员,相信很多朋友和我一样,不仅要会后台代码,还要懂得很多的前端代码,例如javascipt和css样式. 本文就为大家简 ...
- [C程序设计基础]快速排序
//从大到小排序 ///三个参数 a要排序的 数组, l扫左边的 r扫右边 void quickSort(int a[],int l, int r){ /// 左边要小于 右边才有意义 if (l & ...
- python基础一 ------字符串的多种分隔符分隔
#-*-coding:utf-8-*-''' 字符串的切割 当需要的分隔符是一个是: s.split("分隔符") 当分隔符是多个时: s = "abcd,1 ...
- CC2431 代码分析④-衣锦还乡的CC2431
我们在第二节就分析到了 finishCollection( void ),但是当我们分析完第三节后,整个系统才真正执行到这里,我们依然像第二节一样把这个函数全部贴出来 /*************** ...
- [HNOI2018]排列
Description: 给定 \(n\) 个整数 \(a_1, a_2, \dots, a_n, 0 \le a_i \le n\),以及 \(n\) 个整数 \(w_1, w_2, \dots, ...
- LINUX文件及目录管理命令基础
Linux命令行组成结构 Linux命令结构 在Linux中一切皆文件,一切皆命令! 命令提示符: [root@tt ~]# [xiaohui@tt ~]$ Linux命令行常用快捷键 ctrl + ...
- [Vijos1763]Wormhole (贪心/模拟?)
已经是NOIP考前的最后一天了 现在在杭州的宾馆里 因为自己没带电脑 因此用ADMAN的电脑 题目描述 一维的世界就是一个数轴.这个世界的狭小我们几乎无法想象. 在这个数轴上,有N个点.从左到右依次标 ...
- 64位ubuntu搭建android开发环境问题解决方案
安装32位库支持,删除eclipse 的配置文件和.android目录(测试环境ubuntu 14.04) sudo apt-get install libc6-i386 lib32stdc++6 l ...
- C++程序设计方法4:类模板
类模板 在定义类时也可以将一些类型抽象出来,用模板参数来替换,从而使类更具有通用性.这种类被称为模板类,例如: template <typename T> class A { T data ...