3月26日,Kubernetes 1.14版本正式发布。
\n1.14版本中,Kubernetes有31个增强功能:10个步入稳定,12个进入测试版,还有7个全新的功能。
\n其中一些主要的变化如下:
\n- \n
- 对Windows节点的生产级别支持\n
Kubernetes之前的版本对Windows节点的支持一直是处于测试阶段,可以让大家进行实验并查看Kubernetes for Windows容器的价值。Kubernetes1.14版本正式支持将Windows节点添加为工作节点并使用Windows容器,使Windows应用的生态系统能利用Kubernetes平台的强大功能。无论什么样操作系统,企业不论是使用基于Windows的应用还是基于Linux的应用都不必寻找单独的调度器来管理工作负载了,这能提高整个部署的运营效率。
\n在Kubernetes中使用Windows容器的一些主要功能包括:
\n- \n
- 支持Windows Server 2019工作节点的容器;\n
- 支持Azure-CNI,OVN-Kubernetes和Flannel树形网络;\n
- 改进了对pod,service类型,workload controllers和metrics/quotas的支持,以便紧密匹配与Linux容器提供的功能。\n
- \n
- Kubectl的重大更新\n
- \n
- 新增的Kubectl文档和Logo说明:https://kubectl.docs.kubernetes.io\n
- Kustomize Integration:kustomize的声明性Resource Config的创作功能,可以通过kubectl的-k(例如,apply, get)和kustomize子命令获取。Kustomize使用Kubernetes原生概念帮助用户创作和重用Resource Config。用户现在可以使用以下目录将目录应用于kustomization.yaml群集kubectl apply -k dir/。用户还可以向stdout发出自定义的Resource Config,而无需通过它们kubectl kustomize dir/应用。新功能在https://kubectl.docs.kubernetes.io的新文档中。\n
- kubectl插件机制趋于稳定:kubectl插件机制允许开发人员以独立二进制文件的形式发布自己的自定义kubectl子命令。这可以用于扩展具有新的更高级功能的kubectl和porcelain(例如添加set-ns命令)。插件必须使用kubectl-前缀名称,并存在用户的$ PATH中。对于1.14GA版本,插件机制已经大大简化,并且类似于git插件系统。\n
- \n
- 持久化本地卷进入GA\n
持久化本地卷功能已经稳定。分布式文件系统和数据库是由于性能和成本而导致持久性本地存储的主要用例。在云环境上,本地SSD比远程磁盘能提供更好的性能。在裸机上,除了性能之外,本地存储通常也更便宜些,并且是配置分布式文件系统的必要条件。
\n- \n
- PID限制进入测试阶段\n
进程ID(PID)是Linux主机上的基本资源。在不触及任何其他资源限制的情况下,达到任务限制并导致主机不稳定,是非常简单的。管理员需要一些机制来确保用户pod不会导致PID耗尽,从而避免影响主机守护程序(runtime,kubelet等)运行。此外,需要确保在pod之间限制PID,以避免它们对节点上的其他工作负载的影响。
\n管理员可以通过beta功能中提供的,设置每个Pod的PID数量,为来提供pod-to-pod PID隔离。此外,在alpha功能中,管理员可以通过节点可分配的方式为用户pod保留大量可分配的PID,从实现节点到pod的PID隔离。社区系统在下一版本中将此功能转为Beta测试版。
\n- \n
- 其他功能更新\n
- \n
- Pod priority和抢占使Kubernetes调度程序能够首先调度更重要的Pod,当集群资源不足时,它会删除不太重要的pod,以便为更重要的Pod创建空间。重要性由priority指定。\n
- Pod Readiness Gates为pod准备就绪提供了外部反馈的扩展点。\n
- 加强默认RBAC功能;删除默认情况下允许进行未经身份验证的访问,从而提高CRD的隐私性以及默认群集的安全状态。\n
Kubernetes 1.14 下载地址:https://github.com/kubernetes/kubernetes/releases/tag/v1.14.0
\n