Ostatnio aktywny 1739006621

README.md Surowy

服务器重构迁移计划

背景:由于 DeepSeek 32B R1 发布,这一款大模型非常有部署的前景。但是,我家里只有一颗 4090 的显卡,如果我要运行这个模型,我就没有用来打游戏的电脑了。因此,我迫切的需要一台强力的 Nas,能过在满足我过去计算性能的前提下,运行 DeepSeek 32B R1 模型。

老设备列表

  • 设备 MS:13900H,4个硬盘位:
    • 带有 480GB 傲腾,用于存储操作系统。
    • 带有 8TB U2盘位,连接 SN640,用于存储 Docker 上下文。
    • 连接三星 990 Pro,用于缓存机械阵列。
    • 有外置 64TB 机械阵列。用于业务数据存储。
    • 96GB 内存。带万兆SFP+口。目前作为主服务器使用。
  • 设备 Ultra:13900KS,带有两个空 3.5 寸机械盘位。32GB 内存。RTX 4090 显卡。目前作为主游戏设备使用。

闲置设备:

  • 三星 PM1725b 6.4TB SSD

迁移目标

  • 设备 ProArt:新购设备。作为新的主服务器使用。运行所有过去的业务。并且运行 DeepSeek 32B R1 模型。享受 10Gbps 网络。
  • 设备 Ultra:最终地位不变。作为主工作区电脑使用。用于游戏和媒体编辑工作。享受 2.5Gbps 网络。顺便帮着 ProArt 来备份数据。
  • 设备 MS:移除其机械阵列。作为副工作区电脑使用。用于开发工作。并且享受到 ProArt 的 10Gbps 网络。

服务器算力需求

新购设备,将作为主服务器。要求如下:

  • 尽可能节省电力。待机功耗不得超过 150W。
  • 必须要有万兆网络支持。
  • 操作系统必须安装在高速固态上。
  • 单核性能必须很强以满足单核的游戏、虚拟化、编译、数据库、容器等工作。
  • 必须能过运行 DeepSeek R1 32B 模型。至少每秒 30 个Token。
  • 至少有4个3.5寸盘位,容纳 64TB 的机械容量。
  • 至少有6TB的高速固态来缓存机械。

新购设备 ProArt

新购设备 ProArt,配置清单:

  • 1935 机箱:华硕 ProArt PA602 创艺国度全塔设计师台式机电脑办公水冷机箱
  • 1699 冷排:华硕 ProArt PA420一体式CPU
  • 3649 主板:华硕 ProArt Z890-CREATOR Wifi7 DDR5 10Gbps 主板
  • 3560 CPU:Intel® Core™ Ultra 9 Processor 285
  • 2998 内存:美商海盗船 6000 32GBx4 Z30 套条
  • 6599 显卡:NVIDIA GeForce RTX™ 3090 24GB 涡轮卡
  • 1646 电源:华硕 TUF 装弹手 1000W ATX3.0 黑色全模组电源

新购设备:

  • 2458 全新希捷酷狼 Pro+ 16TB 机械硬盘 x2 作为暂存盘,以及最终迁移完成后的备份盘。
  • 914 TP-LINK 10G 万兆SFP电口模块 光电转换 TL-SM510U 万兆电口SFP+模块x2
    • 一个用于连接核心交换机和 ProArt。
    • 一个用于连接 MS 和书房的 10Gbps AP。
  • 709 施耐德 BP1000CH 不间断电源 600W。

迁移计划

第一阶段 - 将业务挪动到 Ultra

  • 将新的暂存盘插入到设备 Ultra。使用 rsync 将数据挪动到 Ultra 中。
  • 将业务停止,在Ultra上启动业务。从而无缝迁移。

第二阶段 - 将 MS 降级为副工作区

  • 将 64TB机械阵列 从MS上拔掉,准备迁移到ProArt上。
  • 将三星 990 Pro 从MS上拔掉,准备迁移到ProArt上。
  • 将 8TB U2 SN640 在 MS 上保留,用于作为数据盘。
  • MS 重新安装消费者操作系统,安装到傲腾中。

第三阶段 - 对 ProArt 装机

  • 将机箱、冷排、主板、CPU、内存、显卡、电源全部组装成一台新机器。
  • 将64TB的机械阵列放入新机器,使用SATA连接,用于业务数据存储。
  • 将三星 990 Pro 1TB SSD 插入新机器的 M.2 插槽,用于存储操作系统和 Docker 上下文。
  • 将三星 PM1725b 6.4TB SSD 插入新机器的PCIE槽,用于缓存机械阵列。
  • 将 ProArt 放置在冰箱旁边,插入施耐德 BP1000CH 不间断电源。

第四阶段 - 将业务迁移到 ProArt

  • 将业务停止,在ProArt上启动业务。从而无缝迁移。
  • 将 Ultra 重装系统,用于游戏和媒体编辑工作。同时,两颗 16TB 机械盘用于备份 ProArt 的业务数据。

最终拓扑

MS

  • 设备 MS:在 SFP+接口使用万兆电口SFP+模块,连入书房的 10Gbps AP 电口。享受到核心交换机的 10Gbps 网络。
  • MS 连接的硬盘有:
    • 8TB U2 SN640,用于业务数据存储。
    • 480GB 傲腾,用于存储操作系统。

Ultra

  • 设备 Ultra:在主板上的 2.5Gbps 电口,使用网线,连入书房的 2.5Gbps 电口。享受到核心交换机的 2.5Gbps 网络。
  • Ultra 连接的硬盘有:
    • 过去它自己自带的硬盘。
    • 16TB 机械盘,用于备份 ProArt 的业务数据。
    • 16TB 机械盘,用于备份 ProArt 的业务数据。

ProArt

  • 设备 ProArt:在冰箱旁边打洞,使用主板上的 10Gbps 电口,使用网线,连入核心交换机的 10Gbps 万兆电口SFP+模块。享受到核心交换机的 10Gbps 网络。
  • ProArt 连接的硬盘有:
    • 64TB 机械阵列,用于业务数据存储。
    • 1TB 三星 990 Pro,用于存储操作系统和 Docker 上下文。
    • 6.4TB 三星 PM1725b,用于缓存机械阵列。

最终闲置设备

在刚刚的迁移结束后,除了 MS,ProArt,Ultra 三台设备外,还有以下设备会暂时没有用处:

  • 原有的机械阵列架。预计价格 500 元。
  • MS 上原有的 SFP+ 光模块。预计价格 200 元。
  • 交换机上原有的留给 MS 的 10Gbps SFP+ 光模块。预计价格 200 元。

FAQ

ProArt 势必会产生大量的热量,如何解决?

ProArt 将不再放置在柜子里,而是放置在冰箱旁边。在柜子里打洞,以联通核心交换机。ProArt 直接从冰箱后面的 220V 电源插座接入电源。

书房怎么让 Ultra 和 MS 有线联网?

书房的 Ultra 通过网线连接到书房的 2.5Gbps 电口。MS 通过万兆电口SFP+模块连接到书房的 10Gbps 电口。两者都能享受到核心交换机的 2.5Gbps 和 10Gbps 网络。注意要在书房同时布置两根网线。

迁移到 ProArt 后,四颗 16TB 机械盘怎么挂载成一个目录?

ProArt 上的 64TB 机械阵列,使用 SATA 连接,使用 mdadm 进行 RAID10,得到 /dev/md0。然后使用 bcache,将 6.4TB SSD 作为缓存盘,将 /dev/md0 作为后端盘。最终得到 /dev/bcache0。再将 /dev/bcache0 挂载到 /swarm-vol

具体命令如下: (假设机械阵列为 /dev/sda, /dev/sdb, /dev/sdc, /dev/sdd,缓存固态为 /dev/nvme0n1

# 安装 mdadm 和 bcache-tools
sudo apt update
sudo apt install mdadm bcache-tools

# 创建 RAID10
sudo mdadm --create /dev/md0 --level=10 --raid-devices=4 /dev/sda /dev/sdb /dev/sdc /dev/sdd

# 查看 md0 的状态
sudo mdadm --detail /dev/md0

# 持久化 md0
sudo mdadm --detail --scan | sudo tee -a /etc/mdadm/mdadm.conf
sudo update-initramfs -u -k all

# 重启,确保 md0 能够正常挂载
sudo reboot
sudo fdisk -l /dev/md0

# 创建 bcache
sudo wipefs -a /dev/md0
sudo make-bcache -B /dev/md0

# 查看 bcache 的状态
sudo bcache-super-show /dev/md0

# 为 bcache 创建缓存
sudo wipefs -a /dev/nvme0n1
sudo make-bcache -C /dev/nvme0n1
sudo bcache-super-show /dev/nvme0n1 # 得到 cset.uuid

# 将缓存加入到 bcache
echo "<cache_uuid>" | sudo tee /sys/block/bcache0/bcache/attach

# 调整缓存策略
echo writeback | sudo tee /sys/block/bcache0/bcache/cache_mode
echo 0 | sudo tee /sys/block/bcache0/bcache/sequential_cutoff
echo 50 | sudo tee /sys/block/bcache0/bcache/writeback_percent

# 挂载 bcache
sudo mkfs.ext4 /dev/bcache0
sudo mkdir /dev/bcache0 /swarm-vol

# 持久化挂载
echo "/dev/bcache0 /swarm-vol ext4 defaults,noatime,nofail 0 0" | sudo tee -a /etc/fstab