专栏名称: 分布式实验室
最专业的Docker文章,最权威的Docker新闻。关注容器生态圈的发展。
目录
相关文章推荐
51好读  ›  专栏  ›  分布式实验室

CoreOS容器编排之路:从Fleet到Kubernetes的转变

分布式实验室  · 公众号  · 后端  · 2017-05-06 08:01

正文

近两年分布式应用的组织和管理水平大幅提升。CoreOS集群管理始于fleet,fleet是2014年发布的一个简易的分布式服务管理框架。而社区上Kubernetes被广泛应用,并逐渐成为了开源容器框架的事实标准。基于技术应用和市场占有等原因,Kubernetes成为大规模容器架构集群最优秀的自动化编排工具,CoreOS也因此而改变技术选型。本文讲述了CoreOS公司集群编排框架的前世今生,描述了从fleet到Kubernetes的转变。


目前,CoreOS计划于2018年2月1日从Linux的容器平台上替换fleet技术,对fleet的支持也即将截止。fleet进入了维护期,仅负责安全及补丁修复的升级。此项变动代表着集群编排和管理技术将转移到Kubernetes技术上。此转变也简化了用户自动更新容器Linux最小集操作系统的发布和部署操作。


新集群部署将提供以下支持:


  • CoreOS Tectonic为生产环境部署Kubernetes提供专家支持和交钥匙部署和升级服务


  • Linux的容器上使用的开源Kubernetes软件


  • 用于Kubernetes先导帮助的开源minikube工具


2018年2月1日以后,fleet的容器镜像在CoreOS的软件注册仓库中仍存在,但不作为Linux的容器操作系统集装打包。


若已购买Linux容器服务的fleet的用户,可在服务终止前从原有渠道获得迁移服务。并获取相关文档。


在此期间,可继续通过CoreOS的邮件列表服务解答fleet用户的问题。为了让大家更加顺利的开始,计划2月14日早上10点邀请CoreOS CTO Brandon Philips,举办一场fleet迁移到Kubernetes的在线技术研讨会。方便大家在线交流。


fleet:集群化之路的第一步


公司创始之初,CoreOS就致力于研究操作系统的集群编排技术,目前以CoreOS Linux容器操作系统最为流行,也是首家提供云环境自动部署和调度集群资源的容器软件。最初该软件是通过fleet实现开源集群调度框架,实现集群设备的系统初始化。


采用fleet不到一年,Google公布了开源Kubernetes项目。令人振奋是他推动了CoreOS Linux容器操作系统fleet的etcd分布式键值后台存储技术的发展,更重要的是Kubernetes提供了fleet未提供的今后发展方向和解决方案。


Kubernetes设计了一套稳定可扩展的API接口、预置服务发现、容器网络、及扩展的关键特性。此外,该技术还在Google Borg,Omega,and SRE团队有多年的运营经验。


Kubernetes and Tectonic:如何编排容器


基于以上原因,在Kubernetes 1.0之前,CoreOS转而将Kubernetes作为容器编排设计的主要特性,将开发资源投入到Kubernetes的相关基础功能和社区支持中去。CoreOS是Cloud Native Computing Foundation(CNCF)的主要成员之一,谷歌将Kubernetes版权捐赠给CNCF产业联盟,这也促使Kubernetes真正成为全行业努力发展的软件成果。


CoreOS的开发团队主导了Kubernetes版本周期管理,Special Interest Groups(SIGs)曾用了2年时间简化Kubernetes部署、管理和升级,便于生产环境可用。 CoreOS flannel SDN 成为热门的Kubernetes网络管理机制。因为CoreOS开发的Kubernetes网络接口模型作为容器网络接口(CNI)已被大量容器化系统应用。团队致力于设计和应用Kubernetes基于角色的访问控制(RBAC)的技术,使得开源身份认证解决方案dex的团队补充了认证提供商和类似LDAP的企业级解决方案。当然,etcd原本作为fleet的后台数据存储,代表了早期的努力,也将继续沿用到Kubernetes的时代中。


fleet探索了集群自动化管理的愿景,CEO Alex Polvi 认为Kubernetes帮助CoreOS达到最终目标。感谢过去社区对fleet的反馈和支持,公司已将多年积累的经验和思路应用到Kubernetes和Tectonic的集群容器编排上。


在CoreOS Tectonic上开始使用Kubernetes


Tectonic提供一种最简易的构建新集群方式。在应用开源Kubernetes的基础上,它提供了集群编排软件的简单安装和自动升级服务。对于10个节点以内规模的集群的设备提供免费测试应用lisence,并支持AWS和裸机部署两种环境。


minikube是Kubernetes的简易先导


若是个使用容器编排的新手,minikube工具可帮助用户在本地快捷的运行Kubernetes,也是一个可安装在笔记本或本地电脑上的Kubernetes先导帮助工具。


让Kubernetes开启CoreOS的容器Linux之旅


为了深入研究Kubernetes的技术细节,可参考部署帮助手册。帮助文档提供了Kubernetes相关概念的解释说明,以及一些超出Tectonic两类初始环境外的平台部署技术。


为fleet容器提供集群继续提供维护支持


在2018年2月fleet将从容器的Alpha版本上删除,随后将从Beta和稳定版本上删除,而此后版本可通过运行容器环境继续使用fleet。有一个简单封装的脚本可帮助客户获取fleet应用容器软件及安装说明。


管理员们可通过调试“fleet迁移配置示例”实现容器化fleet应用部署的迁移。设备提供商可在fleet节点上部署封装配置以激活服务。


3 天烧脑式Kubernetes训练营


本次培训内容包括:Kubernetes概述、架构、日志和监控,部署、自动驾驶、服务发现、网络方案等核心机制分析,Kubernetes调度工作原理、资源管理及源码分析等,点击识别下方二维码即可查看具体培训内容。



点击阅读原文链接可直接报名。