使用树莓派做服务器最佳实践

虽然树莓派不是为服务器为生,但是凭借其自身不高的价格和相对完整的硬件配置,也广泛应用在服务器领域。究其优势,有几个:

  1. 树莓派相对较小的体积,容纳了相对全面的硬件模块, 比如cpu,集显,Wi-Fi等模块
  2. 低发热低能耗适合长期运行, 适合小型服务器
  3. 基于较通用的ARM64架构,相对较全面的软件生态和社区

我的个人实践而言,有几条个人认为的最佳实践:

树莓派选择

一般对应服务器而言,要同时运行许多服务,因此越大内存越好。个人服务器选择硬件接口比较全面的树莓派4 Model B(简称4B)。大规模并联再考虑工厂CM版本。 详细参数比较。当前4B提供2G/4G/8G版本,尽量选择4G/8G版本。

使用Ubuntu Server 64位版本

初次使用树莓派的小伙伴往往会选择官方提供的Raspberry Pi OS(旧称Raspbian),官方OS提供了专有优化和套件支持,非常适合起步。 可惜对于服务器应用方向,不一定是最合适的。 一个是此OS的只提供32位版本,64位仍在beta中,另一个是和Ubuntu比,服务器生态便弱(即使都基于Debian)。服务器版本的OS是不需要安装图形桌面等套件等, 树莓派OS官方提供Raspberry Pi OS Lite, 而Ubuntu Server后发优势的64位版本提供LTS长支持。 这一对比, 后者更合适。

能使用Docker坚决不install

如果上一段落如此纠结操作系统的64位给你带来不解, 这一段可以给出答案。现代工业界,Docker及以Docker为基础的k8s服务结构已经成为标配, 想要做服务器,Docker基本上是必选。 这里强烈建议务必使用Docker部署一切提供服务的应用。Docker不是虚拟化工具, 而是以虚拟化作为隔离工具,进行高效封装和管控服务的工具。利用Docker,可以让运行各种服务的基础设施一键部署,并且隔离互相不影响。 不用再纠结python的版本冲突,网络和端口冲突,和不厌其烦的各种install脚本了。
一旦接受了Docker, 就再也回不去了。DockerHub上,有常见的大量镜像资源,是生态的宝贵财富。这些镜像,除了提供AMD64架构的同时也普遍提供ARM64版本,这就是上面为什么坚持64位OS的原因。

注意树莓派供电

树莓派供电一直是不足的,无论是之前的不支持普通Type-C的版本, 还是之后的fix版本. 以我目前测试, USB3.0接口只能同时插一个硬盘, 第二个硬盘就需要自带额外供电了.

目前总结就这么多, 未完待续。。。