2020-12-30 update: 现在莓派4B数量达到了4台
2019-10-30 update: 树莓派3B+ 内存只有1G,还是太少了,四个全部打包卖掉再买了两个树莓派4,所以目前该集群由3个4GB版的树莓派4组成。
在早些时候帮两个小学弟学妹做了毕业设计,一个是树莓派的家庭监控系统,一个是树莓派智能语音系统(我的毕业设计,新瓶装旧酒),作为回报,他们把答辩完后吃灰的树莓派3B+
赠予我了,此时我的手里已经五个树莓派了,在预感到这几个树莓派也要吃灰的时候,我决定把这几个树莓派利用起来组建一个现实版的”土豆服务器”–树莓派集群。
关于树莓派集群已经很多案例了:甲骨文用1060台树莓派打造了一台“超算”
硬件:
某宝的树莓派集群6层机架(带风扇)
树莓派4 x1
树莓派3b+ x2
树莓派3b x2
8口千兆交换机
5口40W USB电源(2020-01-05 更新: 换成了anker的5口63W 电源)
microUSB数据线若干
网线若干
这是最初的树莓派集群的样子, 一台树莓派4,四台树莓派3.
后来发现树莓派3的1G内存拖不少后腿,和土豆没啥两样,于是把树莓派3全卖了,换成了三台树莓派4,这下舒坦了:
PS: 树莓派4一定要有主动散热,不然温度长年70度上下, 加了风扇就能降到40度。
系统:
关于系统的选择,最开始使用的是官方的raspbina lite系统,但是是32位的,有着诸多的限制(比如无法发挥全部性能,很多软件,docker镜像都不支持32位系统了),
在一周之后,决定编译树莓派的64位内核源码构建一个64位的debian系统出来。树莓派爱好者基地的“全球首发”的64位debian系统,有需要的可以去搜索下载。
为每个树莓派安装好系统,设置好主机名和静态IP,一个像模像样的小型服务器就可以开始使用了。
应用
目前根据我的需求,在四台树莓派上运行了如下应用,包括这个网站和所有图片服务, 都是运行在其中一台树莓派上的:
docker
gitea
postgresql
redis
scrapy
jenkins
v2ray
provixy
nginx
promethenus
grafana
homeassistant
jupyter notebook
elasticsearch
整个集群主要由一台树莓派提供网络代理,主机监控,web网关等功能, 其他三台负责运行各自的服务。BT下载, NAS什么的暂时没那个需求,就没有部署上。