将家庭服务器从DELL R720迁移到蜗牛星际+MacbookPro

将家庭服务器从DELL R720迁移到蜗牛星际+MacbookPro
前几年网HomeLab, 买了一台二手Dell R720机架服务器, 用来做家庭服务器. 但是由于这台服务器的功耗太高, 双cpu待机就要快200w, 换了低功耗的志强后,只安装一个cpu,也有100w+, 一年下来电费不少,而且,到了夏天,非常的热,后来使用ipmi工具,用python写了个代码,根据温度来调节暴力风扇,要舒服许多,但是,夏天,室温升高,风扇还是会平方提高转速. 一直想换成低功耗的服务器. 之前买了蜗牛星际, 这个使用的是j1900, 功耗很低的, 于是就把家庭服务器从Dell R720迁移到了蜗牛星际.
尝试
Dell R720买回家后,前前后后装了太多vm, lxc, 折腾k8s, rancher等,内存加到了64G, 还可以往上加,毕竟ddr3 ecc的服务器内存太便宜了,不过64g足够了,根本用不完,搞多了费电.
目前保留了两个lxc, 一个跑bt,qt, 我都用的是qbittorrent, 把bt和pt服务分开了.
目前已经用qbittorrent下载了快40t的数据:

qbittorrent非常稳定,之前用transmission,感觉不好用,速度也一般. 这个lxc是必须要迁移的.
另一个lxc也是是跑ubuntu, 用来存储整套媒体工作流:
- jellyseerr用来检索影片
- prowlarr用来检索- index,提交下载任务
- sonarr用来提交- 电视剧任务
- radarr用来提价- 电影任务
- jellyfin用来播放影片
这套工作流非常稳定了, 需要迁移. 因为这些用不了太多资源, 放R720上太浪费资源.
步骤
- 星际蜗牛上安装- pve, 这个是必须的.
- 星际蜗牛上配置两个- ubuntu的- lxc, 这个是必须的.
- 将原来各个docker使用的docker-compose文件和挂载用的config文件夹,用rsync全部同步过来
- 在蜗牛上使用mount -t nfs挂载影视资源和下载目录.
- 将docker-compose映射的目录改成mount后的目录
- docker-compose up -d启动所有服务
就这样完成了,为什么需要挂载nfs,而不直接将硬盘移动过来,因为我不知道蜗牛的j1900+4G 内存是否能搞定这多的服务. 先测试过可以,最后再迁移硬盘.
发现的问题
内存不够
星际蜗牛开机没多久,就会出现cpu占用100%, 但是top查看, 是一个叫kswapd名称的进程, google了一下, 是交换空间管理进程, 说明4g内存不够了.
默认swap只有512M, 于是准备用swapon等命令创建几个G的swap分区, 结果发现root分区不够了,因为我一开始就是测试下, 所以在蜗牛上内置的sata接了一个120G的ssd, 用来做root分区, 但是120G的ssd太小了, 光是lxc的硬盘就占了80G, 现在没有去买大的sata接口的ssd了,就先将就,后面直接用大的ssd, 用clonezilla替换.
先把lxc的硬盘迁移到机械硬盘组的zpool上去,慢一点其实无所谓,都是后台服务,不需要太快的io读写. 然后用swapon加了4G空间,现在好多了:
 占用
占用cpu最多的是baidupan的服务,其实什么也没有下载,截图的时候.
可以看到qbittorrent确实占了很多内存,因为任务太多了.
 几百个,能不多吗.
几百个,能不多吗.
j1900 解码能力
j1900毕竟快10年了,好多解码不支持. 对比n100 解码:
 特别是现在下载的都是
特别是现在下载的都是4k HDR的视频,大多是h.256, HEVC编码的,都不支持,就做不了转码,好多客户端使用jellyfin就看不了4k的视频.
于是我想了一个办法,我的MacbookPro不是在家里吗, M1Max应该可以解码大部分了吧:
 除了
除了AV1, 基本都可以了,于是在MacbookPro上安装jellyfin, 这个时候又出了两个问题:
- jellyfin在- m1 mac上,运行一段时间,他的服务端就卡死了,原因不明,搜索了下- github上的- issue, 也有人提了这样的问题,但是没有解决.
- MacbookPro我使用的是- HP G2的雷电- hub, 连接了有线网卡, 只要- 合盖或者- 锁屏, 有线网卡就断开, 这个问题之前使用- mac的- 桌面共享就发现了,使用有线网卡的- ip去连是不行的,这个时候如果用无线网卡的- ip连一下,有线网卡的- ip就通了.
解决办法
- 换emby, 没什么问题.
- 应该是休眠问题, 使用sudo pmset -g:
|  |  | 
使用命令pmset -a disablesleep 1 禁用系统休眠, 完美解决, 还在m1待机功耗,真的太低了,比起R720真实天壤之别.
其他要迁移的
- icloud_photo_backup这个是用来备份- icloud的照片的
- cron一些定时任务,比如使用- acme更新证书等.
- cups打印机服务, 我直接迁移过来, 配好了,结果打印没有反应,最后把打印机重启,就好了.
全部完成后,再把硬盘转移过来, 重新在/etc/fstab中挂载就可以了.