Kubernetes 1.7 发布,安全强化、StatefulSet 更新及可扩展特性

Kubernetes 1.7已经发布,该版本聚焦于安全、存储和扩展性等交付特性,其中包括Network Policy API、StatefulSets自动升级策略以及可扩展的API聚合层。Kubernetes的上一个发布版1.6版侧重于解决规模化和自动化上的问题,显然最新的1.7发布版力图为Kubernetes在企业组织中的进一步采用夯实基础。需注意的是,虽然1.7版的核心集群编排功能是以稳定版提供,但是其中给出的一些头条发布特性在文档中被标为Alpha版或Beta版。

新提供的安全特性包括:Network Policy API。该API当前已提升到稳定版,在实现为网络插件时,用户可以设置并强制使用规则,指定可相互通信的Pod(类似于在用的网络/云ACL);节点授权器(Node Authorizer)和准入控制(Admission Control)插件。它们是在1.7中以Beta版新添加的特性,用于限制kubelet访问那些控制Secret、Pod和其它基于节点对象的Kubernetes API操作;用于Secret的加密和其它存储在etcd的资源,当前以Alpha版提供可用;Kubelet TLS Bootstrapping,当前以Alpha版提供,支持客户和服务证书旋转(Rotation);由API服务器存储的审计日志,现在更改为可定制的和可扩展。

聚焦于存储和有状态工作负载管理的特性包括:StatefulSet Updates。它是在1.7中以Beta版新提供的特性,允许使用一系列的更新策略对有状态应用进行自动更新,包括滚动更新(rolling-update),以及金丝雀(canary)和分阶段(phased)推出部署(rollout);本地持久卷(Local Persistent Volume)。当前以Alpha版发布,允许用户通过标准的PersistentVolumeClaims/PersistentVolume接口及StatefulSets中的StorageClasses访问本地存储卷;DaemonSets。该特性用于确保给定的Pod对每个节点准确地执行和运行一次,现已添加了rollback和history功能;新提供的StorageOS Volume插件,它可在本地的或附加的节点存储上提供在整个集群范围内高可用的持久卷。

在可扩展性方面,1.7中以Beta版的形式添加了API聚合层,允许用户在他们的集群中添加Kubernetes风格的预先构建的、用户定义的或是第三方的API。例如,其中添加了兼容Open Service Broker API的孵化特性service-catalog。与之相关的是,第三方资源(TPR,Third Party Resource)已经替代了用户资源定义(CRD,Custom Resource Definitions)。TPR提供了更整洁的API,并解决了在TPR Beta版期间出现的问题和极端案例。对此,CoreOS发布了一个博客帖子,其中提供了差异的更多细节信息,并给出了一个创建CRD的走查过程。社区已规划在Kubernetes 1.8中移除TPR Beta版特性。容器运行时接口(CRI,Container Runtime Interface)实现从运行时中获取容器的度量指标,它已使用新的RPC调用得以改进。CRI的验证测试已发布,并且与containerd集成的 Alpha版的现已可用,它支持基本的Pod生命周期和镜像管理。在该Kubernetes已发表的博客帖子中,可以了解到CRI的更多信息。

商业版的Google Cloud Platform(GCP)Container Engine(GKE)提供了最新的Kubernetes 1.7发布版,并已进一步提供了开源的Kubernetes发布版与Google各平台间的集成,包括:使用Google Cloud Load Balancing(GCLB)的HTTP重加密,使客户可以在从GCLB到他们的服务后端上使用HTTPS;解决了[对所有私有IP的GA支持]问题(https://cloud.google.com/container-engine/docs/ip-masquerade-agent)(RFC-1918),使用户可以在私有IP范围内创建集群并访问资源;服务可通过内部负载均衡(Internal Load Balancers)暴露,这是以Beta版提供的,允许Kubernetes和非Kubernetes服务在私有网络上相互访问(虽然当前通过Cloud VPN访问内部负载均衡的功能依然处于Alpha版);GKE现在支持在Alpha Clusters中运行NVIDIA K80 GPUs,该特性使得用户可以实验机器学习算法;自动修复,当前是Beta版。它通过对不健康节点进行主动监控,并在无需用户参与的情况下对节点做自动修复,保持了集群的健康运行;一些GCP优化的改进,用于简化集群从底层架构层上做自动扩展。

在Kubernetes博客及GitHub的Kubernetes 1.7发行说明上,提供了关于Kubernetes 1.7发布版的更多信息。

查看英文原文: Kubernetes 1.7 Released with Security Hardening, StatefulSet Updates and Extensibility Features 【中文转载自 InfoQ】

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏格子的个人博客

vSphere Hypervisor 6.5 虚拟机创建和操作系统安装

在上一篇博客中,介绍了vSphere Hypervisor 6.5的安装过程:包括镜像下载、定制和安装以及部分问题解决,一路磕磕碰碰,最终也算是把vSphere...

1113
来自专栏Laoqi's Linux运维专列

Kubernetes 1.8.6 集群部署–微服务持续集成→发布,拒绝停服(十五)

2464
来自专栏编程坑太多

『中级篇』手动建立一个base Image(14)

PS:hello.c 因为是c语言写的,我们把它打成一个Image,Image里面其实就是一个可以执行的文件,它其实依赖宿主机kernel,它虽然比较小,但是也...

1556
来自专栏重庆的技术分享区

在API网关和微服务开发中使用Docker

原文地址:https://dzone.com/articles/using-docker-in-api-gateway-and-microservice-dev...

1784
来自专栏乐享123

Docker中的网络

1896
来自专栏CodeSheep的技术分享

利用K8S技术栈打造个人私有云(连载之:K8S环境理解和练手)

在前文中我们已经搭建好了K8S集群,接下来就来讲述一下K8S的一些重要的概念和知识,并搞两个例子在集群中来实际练手感受一把!

47814
来自专栏数据之美

详解 Windows 下 Eclipse CDT 配置 C/C++ 编译环境

其实 windows 下,C、C++ IDE 也不少,但许多IDE的 UI 和用户体验基本都停留在上个世纪,除了 eclipse CDT 和 visual st...

7657
来自专栏繁花云

[grub2-filemanager] grub下的文件管理器

grub2-filemanager是一个兼具文件浏览的加载引导器,其默认的配置可引导linux类常见的系统(热门linux、openbsd、Android-X8...

2020
来自专栏KaliArch

Python重启深信服设备

为防止隧道检测脚本异常,另外编写监控监测脚本的脚本配合定时任务来定时监控,如果异常,重新拉起。

5846
来自专栏程序员互动联盟

计算机的启动过程(详细)

对于使用电脑用户来说,打开电源启动电脑几乎是每天必做的事情,但计算机在显示这些启动画面的时候都在做什么呢?大多数用户都未必清楚。 下面就向大家介绍一下从打开电源...

2975

扫码关注云+社区