Kubernetes配置管理
动态审计配置(alpha)
https://github.com/kubernetes/enhancements/issues/600
Kubernetes审计配置功能允许使用webhook将审计事件转发到远程API。 从Kubernetes 1.13版本开始,用户可以设置动态审计后端,以支持在运行时推送AuditSink API对象(远程端点)。可以使用Falco检查Kubernetes审核事件。
支持自定义资源的webhook转换(alpha)
https://github.com/kubernetes/enhancements/issues/598
在版本1.13之前,可为Resource Custome Define(RCD) 定义多个版本,只要所有版本使用相同的模式(即,如果添加了新字段,则需要在所有版本中添加)。 现在,不同的CRD版本可以有不同的模式,可以定义转换webhook来处理更新。
API服务器dry-run(alpha到beta)
https://github.com/kubernetes/enhancements/issues/576
dry-run模式可以模拟真实的API请求,在不修改实际状态的情况下查看请求是否成功(准入控制器链,验证,合并冲突…),或者会发生什么。请求响应的主体应尽可能接近非dry-run模式。此模式的核心功能是启用其他用户级功能,如kubectl diff
子命令。
kubectl diff
命令(alpha到beta)
https://github.com/kubernetes/enhancements/issues/491
使用kubectl diff命令可以预览kubectl apply`命令对群集所做的变更。 这个命令的功能在于方便查看,这为集群的operator的日常工作提供了很方便的操作。需要的是注意,该命令要在API服务器上启用dry-run功能时才能生效。
简化Kubernetes集群创建(beta到稳定)
https://github.com/kubernetes/enhancements/issues/11
此功能涵盖了kubeadm
的总体用例,并简化了Kubernetes集群的创建流程。该功能不是Kubernetes 1.13版本独有的,但是在此版本中将有一些文档上的改进,改进的地方包括kubeadm init
使用中的不同阶段,kubeadm alpha
的新子命令或者是在部署示例中包含的CoreDNS等。
Kubernetes核心组件
基于taint的驱逐 (alpha到beta)
https://github.com/kubernetes/enhancements/issues/166
基于taint的驱逐在Kubernetes 1.13中将从α状态转变为β状态。 当启用此功能时(在-feature-gates中,设置TaintBasedEvictions = true,),NodeController(或kubelet)会自动添加taint,并且禁用基于Ready NodeCondition从Node中驱逐pod的前一逻辑。
配置调度器对集群节点的子集进行评分(alpha到beta)
https://github.com/kubernetes/enhancements/issues/593
在Kubernetes 1.12之前,kube-scheduler需要检查集群中所有节点的可行性,然后对可行节点进行评分,选择评分最高的节点来运行pod。现在,可以对Kubernetes调度器进行配置,仅考虑一定百分比的节点,只要在配置的集合中能找到足够的可行节点即可。 这提高了调度器在大规模集群中的性能。
更新kubectl的插件机制(alpha到beta)
https://github.com/kubernetes/enhancements/issues/579
kubectl
支持扩展添加新的子命令或覆盖现有的子命令,支持kubectl
主要发行版中未包含的新功能和自定义功能。此存储库提供了一个很好的扩展示例。
将频繁的Kubelet心跳移至Lease API(alpha)
https://github.com/kubernetes/enhancements/issues/589
在1.13之前的Kubernetes版本中,NodeStatus是Node的心跳。 此版本引入了节点租约 (node-lease),这是一种更轻量,可扩展性更好的心跳指示器。节点租约经常更新,而NodeStatus仅在出现变更或一定时间段以后才从节点报告到主节点。
硬件支持
支持第三方设备监控插件(alpha)
https://github.com/kubernetes/enhancements/issues/606
为了监控设备插件提供的资源,监控代理需要能够发现节点上正在使用的设备集,并获取元数据以描述该指标应该与哪个容器相关联。 kubelet现在提供gRPC服务(PodResources)来启用此功能。 对“PodResources服务”的支持仍处于alpha状态。
存储
通过持久化卷源使用原始块设备(alpha到beta)
https://github.com/kubernetes/enhancements/issues/351
默认情况下,在Kubernetes 1.13上启用BlockVolume,只需将volumeMode的值设置为block即可访问原始块设备。在没有文件系统抽象的情况下使用原始块设备可允许Kubernetes为需要高I / O性能和低延迟的高性能应用程序(如数据库)提供更好的支持。
为FlexVolume添加调整大小的调用支持,以支持类似LVM扩展的卷大小调整(alpha)
https://github.com/kubernetes/enhancements/issues/304
PVC大小调整最初是在Kubernetes 1.8中引入的。 此后,一些卷插件已经能支持此功能。1.13版本能支持FlexVolumes。如果你正在使用FlexVolume并且底层驱动程序支持该操作,现在只需更新Kubernetes中的PVC即可扩展PV。
添加对Kubernetes树外CSI卷插件的支持(beta到稳定版)
https://github.com/kubernetes/enhancements/issues/178
容器存储接口 (Container Storage Interface)是将任意存储系统暴露给Kubernetes容器化工作负载的规范。目前,Kubernetes卷插件在树内,这意味着它们与核心Kubernetes二进制文件进行链接,编译,构建和一起发布。在1.13版本中,该功能已经稳定,并允许第三方供应商创建和分发(Kubernetes树外)CSI 卷插件。
使调度器能感知pod内卷的拓扑约束(beta到稳定)
https://github.com/kubernetes/enhancements/issues/490
此功能允许设置控制卷的调度位置,可以启用本地卷绑定,还可用于将卷与特定拓扑区域耦合。该功能在之前的Kubernetes版本中有所体现,但在1.13 版本中已逐渐稳定。
Kubernetes与云端集成
AWS ALB ingress 控制器(alpha)
https://github.com/kubernetes/enhancements/issues/629
这是一项备受欢迎的功能,只要为集群配置了AWS集成凭证,就可以通过按需配置AWS ALB来满足Kubernetes ingress资源。
亚马逊弹性块存储 CSI 驱动程序(alpha)
https://github.com/kubernetes/enhancements/issues/630
亚马逊弹性块存储(Amazon Elastic Block Store) CSI驱动提供CSI接口来管理EBS卷的生命周期。驱动程序仍处于alpha状态,1.12之前的版本不支持该功能。 可以使用的基本卷操作包括:CreateVolume / DeleteVolume,ControllerPublishVolume / ControllerUnpublishVolume,NodeStageVolume / NodeUnstageVolume,NodePublishVolume / NodeUnpublishVolume和Volume Scheduling。
外部AWS CCM(alpha)
https://github.com/kubernetes/enhancements/issues/631
cloud-controller-manager (云控制器管理器,CCM)是嵌入云控制循环的守护进程。云供应商和Kubernetes的开发和发布速度不同,将特定于云供应商的代码抽象为云控制器管理器二进制文件能够让云供应商独立发展。AWS云控制器管理器在Kubernetes 1.13版本中首次亮相。
Azure可用区(alpha到beta)
https://github.com/kubernetes/enhancements/issues/586
Kubernetes 1.12版本增加了对Azure可用区(AZ)的支持。 可用区中的节点可通过failure-domain.beta.kubernetes.io/zone=\u0026lt;region\u0026gt; - \u0026lt;AZ\u0026gt;
标签添加,并为Azure托管的磁盘存储类添加拓扑感知配置。此版本中对Azure可用区的支持已经从alpha阶段到了beta阶段。
支持Azure跨资源组节点(alpha到beta)
https://github.com/kubernetes/enhancements/issues/604
Kubernetes 1.12版本增加了对Azure序中的跨资源组(resource group)节点和非托管(例如本地)节点的支持。该版本中对跨越资源组节点的支持已经从alpha阶段到了beta阶段。
弃用
删除对etcd2的支持
https://github.com/kubernetes/enhancements/issues/622
此版本中删除了所有对etcd2的文档引用和支持。
参考链接: