Kubernetes 1.4简化了集群部署并改进了安全和联邦
摘要:自一年多前Kubernetes正式版发布以来,它一直在不断成长并赢得了各界广泛的关注和认可。这次1.4版本的发布极大地简化了Kubernetes自身及其使用,其他的亮点还包括对在任何云环境中部署的简化、有状态应用安装的简化、对集群联邦的扩展能力及安全策略的丰富等,意在使跨集群和跨云环境的部署更加简单。
作者:Grischa Ekart
正文:
Kubernetes 1.4版已于本周发布,该发布版本所提供的新特性改进了开发和运维的体验,简化了集群的部署、认证处理、网络、安全和应用部署。此外,该发布版本扩展了集群联邦能力,改进了跨越多重集群和多重云的部署功能。
虽然这次发布的版本中添加了很多新的特性,但是面对可用于Kubernetes的多种不同的安装方案和工具时,简化集群部署仍然是该版本的主要目标之一。
安装与易用性
- 对于Red Hat和Ubuntu等Linux的主要发布版本,已经可用apt-get和yum安装Kubernetes的操作系统包。
- 新的kubeadm命令将集群启动简化为两个命令,并且命令的使用是独立于架构类型的,无论架构是共用的、私有的或是专用服务器。使用上类似于自Docker 1.2版本之后的所提供Docker Swarm命令,kubeadm init命令用于启动主服务,kubeadm join命令用于在集群中添加节点。
- DaemonSets确保选定集群中节点去运行Pod的一个拷贝。在这种方式下,可简化覆盖网络的扩展部署为使用kubectl apply命令。
- 新的认证API通过对kubelet TLS自引导的授权简化了安全网络。
- Kubernetes Dashboard的用户界面现在已支持90%的CLI功能。
有状态应用
- ScheduledJobs实现了在设定的时间去运行批处理作业,或是使用cron理念对作业进行定时重复地运行。
- Init-container用于对多层应用启动时的顺序依赖性的确定,实现了先于主Pod启动而运行一个或更多的容器。
- 基于新的Storage Class API对象,当前集群可以动态地为PersistantVolumeClaims提供卷。
- 使用Helm Package Manager第二版,Drupal、Wordpress和Jenkins等公共的有状态应用将作为Helm charts提供,实现了简明的单命令加载。
联邦
- 现在联邦副本集(Federated Replica Sets)可跨集群对副本进行控制,这实现了跨区域或跨云平台的备份。以这种方式所创建的副本在集群中可平均分布。
- 联邦Ingress采用第七层全局负载均衡虚拟IP,将已部署服务散布到集群联邦中。该功能当前仅支持Google云平台(Google Cloud Platform,GCP)。以该IP为目标的外部客户会被发送至集群联邦中最近的可用地区或区域上。
- 当前联邦API中包括了机密(secret)、事件和命名空间。
安全
- 容器镜像策略(Container Image Policies)可用于限定Pod的部署,这种限定是基于镜像需求的,例如仅允许特定的基础镜像。
- 对AppArmor的支持使管理员可以对Pod加密、提供审计和监控功能。
- Pod安全策略(Pod Security Policies)控制了用于Pod和容器的安全上下文的创建和验证。
架构
- Pod间亲缘性和反亲缘性使得Pod可以共存一处或是散布各处。
- 对DNS、Heapster和Dashboard等集群附加组件的优先权调度能力已可用。
- 引入了Pod销毁预算(Pod Disruption Budget)功能,用于限制使用集群管理操作(节点管理)删除Pod所导致的影响。
- 用于Quobyte和Azure Data Disk的全新卷管理插件已经被添加到该版本中。
- 添加了对Swagger 2.0的支持,实现对非Go客户的支持。
在采用Kubernetes 1.4之前,管理员应该遵循更新日志所记录的代办事项。 有意于对运行版本进行升级的管理员应额外关注一下实验性脚本upgrade.sh。
Kubernetes当前已在许多组织中得到大范围采用。Kubernetes的发展包括了专业支持服务以及动态的贡献,仅对Kubernetes 1.4版本,就有超过900贡献者编写了不下5,000次的提交。Kubernetes的一些生产特性仍处于开发阶段,例如多可用区域支持和良好结构化的文档。这体现在该版本更新日志中所列出的27个特性中,有21个特性仍标记为Beta或是Alpha。
在Kubernetes 1.4版本发布之外,Kubernetes 1.3.8修正版也于本周发布。
查看英文原文:Kubernetes 1.4 Simplifies Cluster Deployment, Improves Security and Federation