边缘云计算架构(2024)

2024年,由于 凡是过往 皆为序章 而在各地旅行,为了能够继续学习和实践云计算技术,我在旅途中携带 Raspberry Pi 组建的 ARM 堆叠集群,力图能够在低功耗、轻量级的环境中构建企业级边缘云计算。

备注

部署 K3s - 轻量级Kubernetes 集群时候,将部分参考 rpi4cluster.com 方案,但我的个人实践采用的硬件和方法不同

我准备借鉴并尝试不同的应用应用迭代,构建适合自己同时能够进一步完善的解决方案。

我将树莓派组建成一个微型集群,运行 K3s - 轻量级Kubernetes 并通过 Rancher 实现一个PaaS环境。这是一个个人开发和实践环境,通过完整的CI/CD来实现个人工作室。

备注

2024年3月,重新部署 Raspberry Pi 集群,采用了树莓派官方 Raspbery Pi OS(Raspbian) 操作系统,原因是官方系统现已完美支持64位,并且由于使用广泛,可以通过社区获得较好的支持。我计划重新部署 Kubernetes 集群,构建完整的模拟Cloud Atlas集群

硬件环境

我最初主要考虑省钱,有几个思路:

不过最终我还是没有忍住,陆续购买了3台 树莓派Raspberry Pi 5 ,并且配套 树莓派5 PCIe转M.2 NVMe SSD存储 ,目标是能够实现和 私有云计算构建 相似功能(但性能较弱):

ARM服务器分布

ARM边缘计算主机分配

主机IP

主机名

cpu

内存(G)

磁盘(G)

说明

192.168.7.1

默认网关

192.168.7.2

x-zero

1

0.5

128 SD

树莓派zero-w

192.168.7.211

acloud-c1

4

1

64 SD

树莓派 B4 - k3s master

192.168.7.211

etcd

etcd服务DNS RoundRobin

192.168.7.211

apiserver

apiserver服务DNS RoundRobin

192.168.7.212

acloud-c2

4

1

64 SD

树莓派 B4 - k3s master

192.168.7.212

etcd

etcd服务DNS RoundRobin

192.168.7.212

apiserver

apiserver服务DNS RoundRobin

192.168.7.213

acloud-c3

4

1

64 SD

树莓派 B4 - k3s master

192.168.7.213

etcd

etcd服务DNS RoundRobin

192.168.7.213

apiserver

apiserver服务DNS RoundRobin

192.168.7.221

acloud-w1

4

8

2T

树莓派 B5 - ceph ds/ceph mon/gluster

192.168.7.222

acloud-w2

4

8

2T

树莓派 B5 - ceph ds/cephfs/gluster

192.168.7.223

acloud-w3

4

8

4T

树莓派 B5 - ZFS NAS/AI/k3s monitor/k3s dashboard

192.168.7.224

acloud-w4

4

4

128 SD

Jetson Nano - GPU

192.168.7.231

bcloud-c1

4

1

64 SD

树莓派 B3 - k0s master

192.168.7.231

etcd

etcd服务DNS RoundRobin

192.168.7.231

apiserver

apiserver服务DNS RoundRobin

192.168.7.232

bcloud-c2

4

1

64 SD

树莓派 B3 - k0s master

192.168.7.232

etcd

etcd服务DNS RoundRobin

192.168.7.232

apiserver

apiserver服务DNS RoundRobin

192.168.7.233

bcloud-c3

4

1

64 SD

树莓派 B3 - k0s master

192.168.7.233

etcd

etcd服务DNS RoundRobin

192.168.7.233

apiserver

apiserver服务DNS RoundRobin

192.168.7.241

bcloud-w1

4

8

2T

树莓派 B3 - k0s master

192.168.7.242

bcloud-w2

4

8

2T

树莓派 B3 - k0s master

192.168.7.243

bcloud-w3

4

8

4T

树莓派 B3 - k0s master

192.168.7.244

bcloud-w4

4

8

2T

树莓派 B4 - k0s worker

192.168.7.245

bcloud-w5

4

8

2T

树莓派 B4 - k0s worker

192.168.7.246

bcloud-w6

4

8

4T

树莓派 B4 - k0s worker

192.168.7.253

acloud-dev

2

2

6

容器(日常开发)

ARM架构的边缘计算采用了 192.168.7.x 作为网络IP段,和 私有云架构192.168.6.x 隔离

虽然也可以在树莓派上实现 ARM硬件环境KVM虚拟化 ,但是考虑到边缘计算硬件性能有限,所以采用轻量级 Kubernetes 实现 K3s - 轻量级Kubernetes 来构建mini集群,目标是实现:

  • 任意调度计算资源实现服务的伸缩、高可用

  • 构建边缘计算场景: 传感器数据采集、存储、传输,以及独立的AI计算

备注

  • 服务器主机IP段位于:

    • 192.168.7.1 ~ 192.168.7.150

    • 192.168.7.200 ~ 192.168.7.254

  • 保留一段IP用于内网DHCP,提供手机等移动客户端使用:

    • 192.168.7.151 ~ 192.168.7.199