把网站架在树莓派云上

虽然说树莓派的主战场在物联网和教育,但还是会有人把它用在其他领域。

比如,部署网站。

早在2016年底,Mythic Beasts公司就推出了Raspberry Pi云服务,允许大家租用Raspberry Pi 3作为服务器。

Raspberry Pi 4上市以后,他们的云服务也相应的大幅升级。

毕竟Pi 4的性能是Pi 3的两倍以上,仅内存就四倍(4GB版本的树莓派)。

在获悉Raspberry Pi 4研发完成后,Mythic Beasts公司的皮特·斯蒂文斯(Pete Stevens)跟树莓派创始人埃本·厄普顿(Eben Upton)拿啤酒打赌了。

说他们可以用Raspberry Pi 4搭建服务器,来作为Raspberry Pi 4发布的Web平台。

由于树莓派新版本发布的受欢迎程度,发布日当天的访客不是百万为单位,而是以千万为单位。

因此,服务的稳定至关重要。

2019年6月20日星期四,埃本把18台4GB内存的Raspberry Pi 4交给皮特团队,以替换Raspberry Pi官方博客的所有Web服务器(x86)。

  • 14×动态Web服务器(PHP / Apache)
  • 2个静态Web服务器(Apache,静态文件)
  • 2个Memcache(在内存中加速Web服务)

他们在6月21日周五构建时,立即遇到了一个“鸡和蛋”的问题。

树莓派官网的Web服务器是通过Puppet构建的,当时基于Debian Jessie。

Raspberry Pi 4(服务器)上的系统是Debian Buster尚未发行的版本,当时Puppet不支持该版本。

然后皮特团队与Raspberry Pi基金会的Greg Annandale一起,创建了可以在Raspberry Pi 4上运行的Puppet,将配置从Debian Jessie升级到Buster(这个版本有新的Apache/ PHP),并进行了测试。

关于机箱和布线

早在搭建Raspberry Pi 3云的时候,皮特团队就做了对应的机箱。

然后他们采用了相同的方法,用POE扩展板供电的方式,为每台Raspberry Pi 4提供电源和网络。这大大降低了布线和设置的复杂性。

6月21日周五晚上21点,也就是皮特团队开工的24小时后,他们将快速打造的Raspberry Pi 4集群移至Sovereign House,这里是Mythic Beasts数据中心所在地,也是欧洲网络最好的区域之一。

在几个小时的时间里,皮特团队逐步将整个生产环境从现有的虚拟服务器转移到Raspberry Pi 4云,直到树莓派官方博客的每个页面都由Raspberry Pi 4集群提供服务。

因为加了PoE HAT,所以机箱内不能整齐摆放

真正的考验,发布日。

Raspberry Pi 4发布当天,树莓派集群扛住了数千万用户的访问。

皮特团队在树莓派集群和网站的前端设置了Cloudflare,它为静态资源提供加速,并保护网站免遭拒绝服务攻击。

不幸的是,他们在发布过程中宕机了两个小时,原因是威瑞森(Verizon)的客户运行了一个配置错误的网络优化器。所以树莓派4集群有一个漫长的午休时间……

详细信息可访问:

https://www.cloudflarestatus.com/incidents/46z55mdhg0t5

随后,皮特团队让树莓派官网在Raspberry Pi 4集群上跑了一个多月,然后才换回之前的虚拟服务器。

他们证明了树莓派4可以是一个很棒的网站部署平台。

编者按:不知道啤酒有没有赢到。

将Raspberry Pi 4云服务商业化

皮特团队已经为一些客户提供Raspberry Pi 3的云服务(例如PiWheels,它为Raspberry Pi构建Python软件包),而且能够按需启动Raspberry Pi 3对客户极为有用。

由于SD卡并不是很可靠。每次出现故障时,人工干预不仅耗时间,还意味着皮特团队必须物理接触树莓派云中的每一块板子。

所以皮特团队选择了Netboot加网络存储的方式,不但可以远程开机,还可以远程re-image树莓派。避开了一些坑。

他们在2019年11月采用了Beta版固件,并构建了一个Raspberry Pi 4网络启动设置的示例。

然后把它集成到管理程序,构建与Raspberry Pi 4兼容的操作系统镜像。并增强了账单和计费的功能,以应对多种模型和按小时计费。

然后,他们又不得不对文件服务器和网络进行了升级。

因为树莓派4B是“真”千兆网卡,需要提供比Raspberry Pi 3更强的支持。

当然,皮特团队也做了向后兼容,以免影响现在Raspberry Pi 3云的用户。

2020年6月17日,皮特团队上线了 Raspberry Pi 4的云,正式向客户提供服务。

Mythic Beast自己公布的和AWS类似业务对比:

估计再过一段时间,他们的云该提供8GB内存的硬件版本和64位Raspberry Pi操作系统了。

目前市面上流行的ARM云服务器,主要有华为鲲鹏和AWS Graviton。

线索:Raspberrypi.org

编译:王文文