内容简介:Ocado Technology 发布了“Kubermesh”, 一个支持自动配置、采用网状网络的 Kubernetes 集群原型
Ocado Technology团队创造了 Kubermesh ,一个“基于裸机、自我托管、自我恢复、自我配置、采用部分网状网络的Kubernetes集群”。Kubermesh本质上可以被视为一个粘合节点,它将多个技术结合在一起,从而构成了一个容器平台。这个平台由一个使用OSPF3路由协议的部分网状网络和一个用iPXE启动、自我安装的 Kubernetes 部署组成。该Kubernetes部署运行在由 Openstack 管理着的裸机服务器上。
Ocado Technology在 博客 上写道,这一项目萌芽于他们团队在白板上进行头脑风暴时提出的一个问题,“如果我们能将我们Customer Fulfilment Center的数据中心分成更小的节点,会怎样呢?” 他们提到的 Customer Fulfilment Center (CFC) 是一个高度自动化的仓库,在这个仓库储存,挑选,并分发食品杂货送往Ocado的客户们。Ocade的私有 Ocado Smart Platform CFC包括了数千个在网格上徘徊的机器人以及把机器人递来的货物按客户订单即时打包的工人。
Kubermesh部署了一个作为铺垫的局部网格网络,该网络在IPv6网络上使用了OSPF3路由协议(利用本地链路地址自动配置功能),该路由协议由Quagga Software Routing Suite提供。由于目前没有标准供应商支持IPv4 over IPv6的网络,他们为Kubernetes部署了一个自定义的覆盖虚拟网络。这个覆盖虚拟网络和 CoreOS的Flannel 结合起来使用以支持IP地址分配。通过IPv6上的iPXE-booting,Kubermesh可以为网格添加节点,并利用boot.cfg来配置节点的基础软件。随后,kubermesh使用Kubernetes孵化器项目 bootkube 来启动一个自托管的Kubernetes集群。一旦集群启动,bootkube会作为一个临时的Kubernetes集群控制面板(API服务器、调度器、控制器管理器),这个临时控制面板会运行足够长的时间,以便Kubernetes集群引导一个自托管的控制面板来替代临时控制面板。
据Ocado Technology Network表示,使用网格网络,开发者甚至可以移除数据中心、网络、以及仓库周围运行着的各种机器,只留下计算节点和光纤。这些可以自动配置的元素保证了系统的灵活性,这种灵活性可以允许新添加的节点简单的连接到网络。并且,在几分钟时间内,新节点就可以被整合到集群中。Kubernetes自身将会管理容器的协调,并在个别节点发生失效事件时进行重新调度。
Kubernetes最初是作为 Code for Life 项目的容器管理系统被引入Ocado Technology的。Code for Life项目是一个非盈利的初创项目,该项目发行免费且开源的游戏,设计这些游戏主要是为了帮助老师讲授计算机课程和帮助小朋友们接触编程。 Rapid Router 作为一款面向小学设计的游戏,在全球已经拥有超过90,000名用户,而这一数字还在增加。考虑到Code for Life庞大的用户群,为了让游戏流畅运行,容器管理系统的开发必须以能持续处理和管理大型数据集为目标。
Code for Life的网站和Rapid Router已经托管在了支持Kubernetes的 Googld Cloud Platform 上。这意味着,当需要一个容器管理系统在云端的虚拟机上运行大量学生编写的代码时,Kubernetes毫无疑问是最佳的选择。Ocado的IT团队领导 Mike Bryant 曾参与了Code for Life这一容器管理系统的开发过程。在开发过程中,Mike Bryant意识到该系统也有可能被用在云平台之外,比如用于流水线化Ocado Technology的数据系统。
我们最大的食品杂货CFC在伊利斯(Erith),占地563000平方英尺,并且需要400这样的节点,它们随机分布在仓库周围,连接在一起形成网络。这样一来,部署在节点上的app可以策略性的分布在其它经常与之通信的app附近,这样可以得到最快的速度和最佳的性能。一个节点可以是我们仓库内的任何计算设备,包括从专一的服务器或 Intel NUC ,到捡货通道的工作站或用来在头顶显示屏上显示工程相关信息的PC。
如果Kubermesh的原型系统得到了验证,该系统就有可能从根本上完全消除数据中心以及网络路由存在的必要性,大大缩减了当前OSP系统的规模,节省了花费在维修保养上的时间,并且降低了成本和能量消耗。同时他们还提议,Kubermesh节点可以自主的运行仓库中的所有其他元素,从显示屏幕到捡货站(假设所有对应的应用可以在容器内成功运行)。
关于Kubermesh项目的其他详细信息可以在Ocado Technology官方博客的 《使用Kubernetes和容器创建分布式数据中心结构》 这篇博文中找到,Apache 2.0 授权的原型源码可以在 Kubermesh GitHub的代码仓库 中找到。
查看英文原文: Ocado Technology Releases “Kubermesh”, a Prototype Self-Provisioning Mesh Network Kubernetes Cluster
感谢薛命灯对本文的审校。
给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ,@丁晓昀),微信(微信号: InfoQChina )关注我们。
以上所述就是小编给大家介绍的《Ocado Technology 发布了“Kubermesh”, 一个支持自动配置、采用网状网络的 Kubernetes 集群原型》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- siyuan v0.4.6 发布,网状笔记应用
- siyuan v0.4.8 发布,网状笔记应用
- siyuan v0.4.9 发布,Markdown 块级引用网状笔记应用
- 图解原型和原型链
- 创建对象、原型、原型链
- 构造函数、原型、原型链、继承
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Spring Cloud微服务实战
翟永超 / 电子工业出版社 / 2017-5 / 89
《Spring Cloud微服务实战》从时下流行的微服务架构概念出发,详细介绍了Spring Cloud针对微服务架构中几大核心要素的解决方案和基础组件。对于各个组件的介绍,《Spring Cloud微服务实战》主要以示例与源码结合的方式来帮助读者更好地理解这些组件的使用方法以及运行原理。同时,在介绍的过程中,还包含了作者在实践中所遇到的一些问题和解决思路,可供读者在实践中作为参考。 《Sp......一起来看看 《Spring Cloud微服务实战》 这本书的介绍吧!