写点什么

Kubernetes 1.5 发布,改进了 StatefulSet,增加了对 Windows Server 2016 的 alpha 支持

  • 2017-01-03
  • 本文字数:1934 字

    阅读完需:约 6 分钟

Cloud Native Computing Foundation (CNCF)发布了 Kubernetes 容器编排和调度系统的 1.5 版。其核心改进之处在于提供了与带状态应用的部署和扩展以及不中断应用的情况下执行集群操作相关的 beta 功能。它也提供了对可插拔容器运行时、Windows Server 2016 节点以及 Windows Server 容器调度的 alpha 支持。由于配置存在潜在安全问题,建议所有用户跳过 1.5.0 版,改为使用具有更安全的默认配置的1.5.1 版。

Kubernetes 的初始 1.5 版主要关注标记为“alpha”和“beta”的交付:

  • StatefulSet (之前叫“PetSet”)功能提升为 beta,进一步支持 Kubernetes 上持久标识和每实例存储的创建和管理;
  • PodDisruptionBudget 也提升为 beta,可用于确保完成应用程序服务级别目标(SLO)的同时安全地排除节点;
  • 在 alpha 中发布了改进的联合支持,包括一个新命令“kubefed”
  • 通过进一步改进 kubeadm 命令简化了集群的部署;
  • 高可用的主节点的 alpha 支持;
    • 这一功能通过使用“kube-up”和“kube-down”脚本复制 Kubernetes 主节点实现,现在只有 Google Compute Engine (GCE) 具有该功能。
  • Windows Server 2016 节点的 alpha 支持和对 Windows Server 容器以及 Hyper-V 容器调度的 alpha 支持;
  • 在 alpha 中引入了 Container Runtime Initiative(CRI) API,这样就能支持可插拔的容器运行时;
    • 一个实验性的 Docker-CRI 集成插件已准备测试和获取反馈;
    • cri-o 是 Kubernetes 容器运行时接口的一个基于 OCI 的实现。该接口使用了 runc 。cri-o 也可用了,但是当前被标记为“预览测试版”;
    • Kelsey Hightower 是一位 Google Staff Advocate,在 Kubernetes 社区无人不晓。他在 GitHub 上发布了开源工程 cri-o Tutorial ,献给那些渴望试用这项功能的开发人员;
  • 对访问 Kubelet API 的验证和授权能力;
  • dashboard 界面现在显示所有用户面向的对象以及它们的资源使用情况。

在 12 月 12 号发布 Kubernetes 的初始 1.5.0 版之后,在谷歌 Kubernetes 声明小组内进行的一场讨论,强调了几处配置选项的改动可能导致潜在的安全问题,这些配置在单独使用时没有问题,但是合在一起就会导致集群不安全。为了解决这一问题,Kubernetes 的 1.5.1 版第二天就发布了。建议所有用户跳过 1.5.0 版,改为使用具有更安全的默认配置的1.5.1 版。本文接下来介绍添加到最初的1.5.0 版本的新功能。

beta 阶段的 StatefulSet (之前叫“PetSet”)支持 Kubernetes 上持久标识和每实例存储的创建扩展删除修复。该功能做了几点关键的安全性提升。为了确保绝不会有pod 具有相同标识,Kubernetes 节点控制器不再自动“强制删除”无响应节点上的pod,而是等待下列三个条件之一成立:Kubelet 确认老的pod 被结束了;集群管理员删除了对应的节点;集群管理员通过命令行接口“强制删除”了pod。有一份升级指南帮助操作员从PetSet 升级到StatefulSet。

beta 阶段的 PodDisruptionBudget 是一个 API 对象,它指定了一个 pod 集合任何时候可用时副本的最少数目或最小比例。根据 Kubernetesd 的发布说明,通过使用 PodDisruptionBudget,应用部署人员能够确保完成组织的服务级目标(SLO),通过保证自愿清除 pod 的集群操作绝不会同时清除过多的 pod 以致数据丢失、宕机或者“不可接受的服务降级”。

alpha 版的 Kubefed 是一个新的命令行工具,辅助联合集群的管理、降低部署新的联合控制面板的难度以及从现有联合集群中添加或者移除集群。集群联合方面还为 ConfigMaps DaemonSets 以及部署联合API 新加了alpha 版的API 功能,因此可以从单一端点创建、更新和删除跨多个集群的对象。

Windows server 容器 containers 为 Windows Server 2016 节点和 Windows Server 容器 Containers 以及 Hyper-V 容器 Containers 的调度提供了初步支持。该功能的实现是由 Apprenda 领衔多厂商联袂打造的,其中谷歌、小红帽和微软作出了卓越的贡献。在 1.5 版本中,Kubernetes 控制面板(API 服务器、调度器、控制器管理器等等)继续运行在 Linux 上,而 kubelet 和 and kube-proxy 可以在 Windows Server 上运行。网络通信功能是使用 L3 路由实现的。但是依据 Kubernetes 文档,当前第三方网络插件(例如,flannel、calico 等等)无法直接在 Windows Server 上运行,因此为了提供核心的网络通信功能,依赖了 Windows 和 Linux 内置的现成技术。

Kubernetes 的 1.5 版可以从 GitHub 和 get.k8s.io 上下载。在 Kubernetes 博客上可以找到本次发布的额外信息。

查看英文原文: Kubernetes 1.5 Released with Improved StatefulSets and Alpha Support for Windows Server 2016


感谢冬雨对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2017-01-03 18:002535
用户头像

发布了 33 篇内容, 共 12.0 次阅读, 收获喜欢 10 次。

关注

评论

发布
暂无评论
发现更多内容

探讨Morest在RESTful API测试的行业实践

华为云开发者联盟

开发 API测试 华为云

FastJSON2他来了,性能显著提升,还能再战十年

共饮一杯无

Java Fastjson 11月月更

技术指南 | 如何集成Perforce版本控制系统Helix Core (P4V) 与敏捷规划工具Hansoft

龙智—DevSecOps解决方案

敏捷 版本管理

企业网络“卫生”实用指南(上)

SEAL安全

网络安全 企业安全

千年荒漠变绿洲,看沙漠“卫士”携手昇腾AI植起绿色希望

华为云开发者联盟

人工智能 华为云 昇腾AI

DNS中有哪些值得学习的优秀设计

小小怪下士

Java 程序员 DNS

我与梅西粉丝们的世界杯观球日常

ZEGO即构

音视频开发

String、StringBuffer、StringBuilder 有什么区别

共饮一杯无

Java string 11月月更

Java中的拆箱与装箱

共饮一杯无

Java 11月月更 装箱与拆箱

MatrixOne从入门到实践07——MO-Tester

MatrixOrigin

数据库 分布式 测试工具 MatrixOrigin MatrixOne

降本增效的背后,谈谈阿里云存储数据湖3.0

云布道师

数据湖 云存储 云栖大会

2022中国区Cyber Monday限时优惠来袭,Linux基金会开源软件学园带来优惠

kk-OSC

k8s Linux基金会 CKA CKS

软件测试自动化“领导者”SmartBear举办首场中国线上研讨会:洞悉全球自动化测试走向,探讨降本增效之策

龙智—DevSecOps解决方案

自动化测试 API测试 UI测试 软件测试自动化

高效!启科量子线路模拟器 QuSprout 与 Amazon HPC 集成,赋能量子计算

亚马逊云科技 (Amazon Web Services)

量子计算 Hero 专栏

Baklib|知识库应用场景:制作员工培训手册

Baklib

团队管理 知识管理

Java中的StringBuilder类

共饮一杯无

Java StringBuilder 11月月更

从零开始学习Java系列之Java运行机制与跨平台特性

千锋IT教育

车间工厂看板还搞不定,数据可视化包教包会

葡萄城技术团队

数据可视化 看板 智能工厂

FCOS论文复现:通用物体检测算法

华为云开发者联盟

人工智能 华为云 论文复现

一种基于 Apache Hive 的元数据智能发现方案

移动云大数据

hive

无情!阿里技术专家手写《微服务架构笔记》,瞬间屠榜NO.1

程序知音

Java 微服务 java架构 后端技术

异常的基本概念和Java中的体系

共饮一杯无

Java 异常 11月月更

ITSM | 对话——从业务场景、中国市场策略角度解读Atlassian ITSM解决方案

龙智—DevSecOps解决方案

ITSM ITIL

互联网大厂必问面试合集,助你跳槽拿高薪--Java篇

钟奕礼

Java java面试 java编程 程序员java

MySQL数据库 group by 语句怎么优化?

Java全栈架构师

Java MySQL 数据库 程序员 后端

公共大数据集群中如何配置 YARN 的公平调度器和容量调度器

明哥的IT随笔

hadoop YARN

深度 | 新兴软件研发范式崛起,云计算全面走向 Serverless 化

Serverless Devs

阿里云 Serverless

这可能是最全的SpringBoot3新版本变化了!

艾小仙

Java spring could spring-boot

Python 项目工程化最佳实践指南

Andy

Python 项目管理 代码规范 代码风格

《鸿蒙生态应用开发白皮书》正式发布,携手更多开发者迈入鸿蒙世界

最新动态

代码质量与安全 | 使用Incredibuild加速Klocwork静态代码分析

龙智—DevSecOps解决方案

代码静态分析 SAST工具 SAST 编译器 加速器 编程语言

Kubernetes 1.5发布,改进了StatefulSet,增加了对Windows Server 2016的alpha支持_DevOps & 平台工程_Daniel Bryant_InfoQ精选文章