Turing Pi-用于自托管应用程序和服务的群集板

图片



Turing Pi是基于数据中心机架原理的自托管应用程序解决方案,仅在紧凑的主板上。该解决方案专注于为本地开发和托管应用程序和服务构建本地基础架构。基本上,这就像AWS EC2仅适用于边缘。



我们作为一个小型开发团队,决定创建一种在边缘构建裸机集群的解决方案,并将其称为Turing Pi项目。该产品从膝上开始,但是现在Red Hat,Rancher(SUSE),Toyota Connected,Sony,Electrolux,Facebook的开发部门下令测试它们的概念,并且吸引了10K以下的开发人员。



但这一切都始于发现。



产品发现



一旦我为自己发现,我们就没有发明任何东西。我们发现这个世界上存在的所有事物。我们发现某些部分可以组合在一起,获得产品的新特性或发现规律,然后再次组合。您什么都想不起,但是可以在研究时将其打开。在我看来,发明是不断观察,实验和搜索加上知识结合的结果。



在过去的十年中,我观看了homelab(subreddit资源),自托管(subreddit超赞的自托管)),单板计算机,随着人们对在Raspberry Pi等单板计算机上运行容器的兴趣日益浓厚,收集单板计算机集群的运动也在不断发展。渐渐地,Kubernetes的想法也延伸到了那里。专注于Edge / IoT的k3s轻量级版本已经出现。大型快餐连锁店Chick-fil-A是世界上最早在其kubectl中部署Kubernetes集群的公司之一,这使我成为了三明治厨房



我将其视为滚雪球,因为一种技术环绕着另一种技术,从而创建了一个更加复杂的系统。同时,没有混乱,它看起来更像是来自技术的分形。在我一生中最艰难的时刻之一,我看到了由业余开发人员从单板计算机组装而成的集群中的价值,并开始着手创建集群板。



今天,我们的集群板非常简单,主要针对那些热爱云原生技术,学习新事物,进行实验的人。



建筑模块



那么,解决方案是什么,本质是什么。最重要的是为构造器提供构建器,您可以使用这些构建器比传统服务器便宜地组装边缘基础架构,无需笨重的金属盒即可移动,不需要特殊的操作条件,例如服务器机房,高能效,模块标准化以及具有快速的能力扩展到数十个和数百个计算节点(处理器)。

Clusterboard



Mini ITX板通过板载网络连接多个计算模块,提供外围接口和模块控制

计算模块



SO-DIMM板,其中包含处理器和RAM,用于操作系统存储的可选闪存

图片

Turing V2版本的预计配置之一

图片
通过将集群板和计算模块组合在一起,可以轻松地为例如20多个处理器(以下示例),安静且低功耗的基础架构创建基础架构。群集板本身可以提高已用空间的效率。用于比较的集群示例

基于SBC的*

图片

24 CPU

作者Afkham Azeez

基于Turing Pi的

图片

21个CPU

通过th3st0rmtr00p3r

* SBC



-Rancher Labs的单板计算机联合创始人和k3s的作者,这种方法毫不动摇



图片







计算模块



为了进行概念验证,我们选择了Raspberry Pi计算模块,这是入门的理想配置。 RPi社区活跃,软件没有问题,模块本身为SO-DIMM格式(6 x 3 cm),价格合理,包含4核CPU,1 GB RAM和可选的8、16或32 GB闪存操作系统和其他系统需求。这种外形尺寸通常用于工业物联网解决方案中。



Raspberry Pi 1/3/3 +计算模块



图片



但是CM3模型也有严重的限制-最大1 GB RAM和通过USB HUB的以太网,最高速度可达100 Mbps。因此,第二版Turing将支持Raspberry Pi 4,每个模块最多支持8 GB RAM。以下是用于加速计算任务的Nvidia Jetson模块的示例。也许第二版将对它们提供支持,如果我们解决了一些技术问题,则可以将模块混合使用。



Nvidia Jetson计算模块



图片



最重要的功能在于模块,乍一看并不明显。能够以不同的CPU,RAM和eMMC集合创建具有相似形状因子的其他模块,以处理从通用计算到机器学习密集型计算的不同类型的任务。这与AWS EC2实例非常相似,但仅适用于边缘。在这种情况下,群集板将保持不变或进行较小的更改。



集群板



它也可以称为主板或底板,这是一个相当新的方向,如今这种解决方案的制造商并不多,而且仍处于入门级,其中包括Pine64,MiniNodes,Clover Pi,Bitscope Blade,PicoCluster(SBC集群)。群集板将模块与网络连接,提供电源并提供群集管理总线,至少我们决定添加此总线,并且它似乎已扎根。

面前

图片

背部

图片

背板带宽12 Gbps 没有eMMC的模块的SD插槽,例如,您可以容纳几个带有SD的模块,以快速访问节点数据
集群板基于交换芯片,以提供模块的网络连接并访问外部网络。在当前版本中,我们使用的是非托管开关,因为 没有时间进行全面的研发,但是对于第二版,我们选择了一个好的管理型交换机。可以在``主节点作为路由器''模式下进行配置,以将网络分配到板上,这是在需要更高级别的安全性以及将工作人员与外部访问隔离的情况下,在这种情况下,还必须在主节点上保留DHCP服务器。



应用



当前版本是实验性的,我们将其定位为入门级解决方案,以研究集群是什么,可与软件一起使用,或者作为组织中的假设检验,以寻找新的想法,通常是精简版。



为了让您开始起步,我们推荐精彩的Jeff Geerling播放一集,他在Y Combinator上阅读了有关我们的信息,并且是最畅销的Ansible for DevOps的作者。他受到了很大的启发,从总体概念到与董事会合作,学习Kubernetes以及可以安装哪些软件的实际示例开始,共进行了6个部分的审查,其中



包括有关在集群上安装k3的系列文章。





总的来说,我建议从头开始,以一种可访问的语言了解集群和Kubernetes。还有一些来自社区的图片



图片



下一步是什么?



首先,我真的希望这很有趣。这绝对是作者的内容,试图超越视野。其次,我计划写有关设计Turing V2的第二部分。搜索产品的方式,逻辑判断,重要的主要属性的搜索方式。本文将包含从最早到最终的产品草图。第二篇文章将对负责产品及其在公司中的开发的产品工程师特别感兴趣。



而且很可能会有真正的长篇阅读。



All Articles