去年 618 攒了个 PC 装了个 PVE 做 AIO ,跑了一年,今年年初搬了一次家,除此之外没断过电。 上周 zfs 损坏,完全开不开机了。
代码、照片啥的都有备份,麻烦的是之前 PT 下载的 7 个多 T 资源,全得重下,十几个服务得重新部署。
1
Int100 141 天前 via iPhone
服务还是分布式部署吧,用 k8s 集群搞个高可用
|
2
phrack 141 天前 via iPhone
zfs 咋损坏,也许还有救
|
3
barathrum OP |
4
phrack 141 天前 via iPhone
@barathrum 还真不一定是 zfs 坏了,我之前也遇到过 pve 里面 zfs 的问题,好几次死机,我还去 zfs 的 GitHub 里面发过 issue 。
后来我记得好像是关了 kernel samepage merging 就再也没出现了,不知道是不是 zfs 跟这个功能有冲突。 |
6
HebronG 141 天前 1
既然做 PVE 了,虚拟机和数据资源没有备份么?全都和宿主机一个文件系统?
上周末宿主机给我玩坏了,全部恢复回来也就俩小时,搞虚拟化系统就是为了功能与系统分离,哪里坏了换哪里,不会扩大损失 |
7
HeyWeGo 140 天前 via Android
在弄 nas 之前就考虑过数据迁移问题。看到网上这备份,那备份的,看了头大。于是数据直接直通硬盘 ntfs ,硬盘拔了也能直接在 windows 上读。毕竟我有台电脑 10 年了,硬盘也没挂。windows 兼容性 1 也好。
|
8
gongquanlin 140 天前
@HebronG 老哥能否讲讲方案?
|
9
yang9w 140 天前
开机 6 年了。没 boom 过!
|
10
FastAce 140 天前 via Android 1
PVE 的数据分区,ESXI 的分区格式,直到我遇到过 ZFS 出问题,ESXI 粉屏故障(类似 windows 蓝屏)没法进系统,最后还是觉得 Windows 香,系统崩了,还有得救,且 win 的工具也多,说多了都是泪,重装直接 all in Win
|
11
maxus 140 天前 via iPhone
OpenWrt 里面的 docker 安装各种 arr 自动下载视频,ddns 绑定域名离家访问,也很好用啊
|
12
Peek 140 天前
还是 windows 好,我硬盘出问题了都恢复了很多,连虚拟化都不碰
|
13
luciferlulu 140 天前 via Android
zfs raid 几 这都能坏 牛逼了
|
14
HebronG 140 天前 3
@HeyWeGo 备份不是为了数据迁移,也不是防系统损坏,而是防硬盘本身损坏,拉长时间看所有硬盘都是会坏的,即使没坏也有静默腐坏的问题,这些情况下还不丢失数据才是冗余/备份的意义,只有一份的数据就是默认“可以丢失”的
@gongquanlin 本质其实很简单,多文件系统,多备份,少在宿主机搞操作,把能分离的系统尽量分离开来。 我自己的话,宿主机是单独一块 SSD ,ZFS 系统一倍冗余,虚拟机磁盘单独一块 SSD ,ZFS 系统无冗余,备份下载单独一块 HDD ,ZFS 系统无冗余,存档数据三块 HDD ,XFS 系统 snapraid2:1 冗余 这其中,系统 SSD 和虚拟机 SSD 是绑定的可以视为宿主机部分,用一块盘也可以,选择 ZFS 系统主要看重读写缓存与文件完整性校验,有校验至少腐坏的时候即使无法恢复也可以及时发现。系统采用一倍冗余没啥意义,坏盘全都丢,只有遇到数据腐坏的时候有点用,这么做纯粹因为硬盘太空了,不是必须的。宿主机本身不需要备份,直接跑在宿主机上的只有 nut(UPS 通知)、hd-idle(磁盘休眠)、samba/nfs(文件服务)和 snapraid(数据仓库的冗余校验),定期或有修改的时候备份/etc 即可,重装时直接恢复相关配置文件就行。 备份下载的缓存 HDD 一块,采用 ZFS 系统的理由和宿主机同样,除了当下载和临时存放盘外,还用来放宿主机备份和安装镜像/模板,唯一需要和宿主机分离的原因就是因为虚拟机备份,这样系统/宿主机坏了可以恢复备份,备份坏了就重做,两个同时损坏的概率不高,即使有也可以把备份数据在另外地方额外多存一份。 数据仓库三块 HDD ,用前面提到的 snapraid 进行冗余和完整性校验,因此不需要 ZFS ,选择更加成熟稳定兼容性好的 xfs 文件系统,也可选择 ext4 ,这俩个文件系统是个 linux 就能挂载(而且 zfs 和 snapraid 的相性不太好)。这一部分完全独立,没有任何外部依赖,因此出现问题可以第一时间把这几块盘物理卸载掉,等系统恢复了再挂载上。 剩下的所有功能都在四台虚拟机里面,一台 linux 作为核心应用服务器,通过 nfs 挂载缓存盘,部署网页、下载等服务。一台 WIN 用来运行只有 win 能运行的软件,包括各种不想跑在自己电脑上的国产软件,利用快照功能也可以当半个沙盒用。一台黑群晖用来同步手机和管控对外共享的权限,本身不长期存储数据,整理好了定期扔到数据仓库。还有一台软路由作为入口网关。这些虚拟机都有每月备份,有大改动的时候再手动备份,并且有意避免任何硬件直通,增加可恢复和可迁移性能,出现问题随时恢复。 需要注意的是,我这套系统是有点 overkill 的,全套 epyc 甚至还有异地备份,通常来说,至少数据系统和功能系统要分离开来,备份放在数据系统里面,两套系统同时爆炸的概率还是很低的,然后再根据具体的需求强度进一步细分 |
15
HebronG 140 天前
顺便,对于没有运维经验的人来说,选择 WINSERVER 真的挺好的,不管装 vm 还是用 hyper-v 都行,从性能和功能上比不过 linux 平台,但胜在一般人都有操作和一定程度上维护 WIN 系统的经验,比较傻瓜化,选择 linux 意味着要从头学习,要接受完全不同的思维和操作方式。
我就是干运维的,折腾这些和上班一样,早就习惯了,甚至比 WIN 更习惯 |
16
Altairvelvet 140 天前
可否买个 Mac mini ,然后挂个 1T 的硬盘。
用 resilio sync 同步文件。 |
17
laminux29 140 天前 1
我总觉得 OpenZFS 存在问题。以下是一个完整的 OpenZFS 结构,运行在志强 CPU + RECC 内存上,并启用了实时压缩与实时去重。内存与所有磁盘,在上机之前,都做了检查:
数据盘:HDD-4TB * 5 ,提供约 20 TB 数据存储量。 校验盘:HDD-4TB * 2 ,RAIDZ2 。 热备盘:HDD-4TB * 1 。 SSD-Cache 盘:SATA3-SSD-镁光-Micro-M600-512GB * 1 。 NVME-SSD-WriteBuffer 盘:QichenNVME-512GB * 2 ( Mirror )。 运行了十几天,就 boom 了 1 个盘,然后热备盘顶上来。再过了十几天,全 boom 了,但集群仍然能用: https://pastebin.com/xsR3sWSh 我觉得存储这玩意,数据量到达一定量后,建议还是使用多物理机的分布式存储,安全些。 |
18
user100saysth 140 天前
all in 0.9 。
把下载单独部署在小机器上。 继续造。 |
19
RightHand 140 天前 via Android
从不相信这些软管理,debian+kvm ,重要文件 raid1 ,不重要文件 raid0 ,手动拆分跑了 4 ,5 年了。
|
20
kk2syc 140 天前
下载盘不要搞高大上,正常的 ext4 直通就行了,大不了重新下
重要的数据单独 raid ,一些 io 小的服务直接单独的 ssd 跑 |
21
kuanat 140 天前 via Android
备份是个小事情,能不能从备份中恢复才是大事情。
|
22
kuanat 140 天前 via Android
如果非常在意的话,可以借鉴风险管理的思维,你能承受的损失有多大,能够接受的恢复周期有多久,由此来制定 rto rpo 策略,进而指导架构的方针。
举个例子,比如我不能接受 all in boom 带来的断网,那就把网络 |
23
kuanat 140 天前 via Android
尴尬,总是一半就发出去……
如果非常在意的话,可以借鉴风险管理的思维,你能承受的损失有多大,能够接受的恢复周期有多久,由此来制定 rto rpo 策略,进而指导架构的方针。 举个例子,比如我不能接受 all in boom 带来的断网,那就把网络单独拿出来,做个硬件备份,以应对和切换。如果是不能接受存储文件的损失,那就把存储后端独立出来。凡是没有高可用需求的大可放心地集成到一起。 |
24
szdosar 140 天前
我比较好奇的是,个人能用 20+T 的空间做啥,视频剪辑的素材库?
|
26
MartinWu 140 天前
我的冗余比较简单粗暴,直接 rsync+inotify 冗余两份数据。
|
27
bugmaker233 140 天前
@HeyWeGo PVE 硬盘直通 windows ,上次直接给我 16T 机械硬盘整没了。第一次直通成功,取消直通没反应了,后来又设置直通,windows 开机直接硬盘修复把数据全格式化了🤣🤣
|
28
HeyWeGo 140 天前
@bugmaker233 #27 这边是 esxi 里的 ubuntu 直通硬盘,当时设置的时候还在 v2 咨询过,NTFS 的盘需要先分区,之后格式化的盘才能在 Linux 和 windows 下都读出来。否则 windows 下读不出,需要先分区格式化
|
29
bugmaker233 140 天前
@szdosar 就像仓鼠喜欢收藏东西一样,吃不完也得藏起来
|
30
HebronG 140 天前
@bugmaker233 没特殊需求不建议直通任何东西,虚拟机隔离的越好,性能越好问题越少
|
31
HebronG 140 天前 1
|
32
WingYo 140 天前
@user100saysth #18 完全同意,我现在就是 pve 底,iKuai+openWrt 双软路由,外加物理黑裙,重要的数据 raid1 ,不重要的 raid0 。
|
33
sumu 140 天前 1
折腾过几次存储,我的经验是:不要 zfs 、不要 raid 、不要全盘加密,最 low 的 ext4 是最好的,系统跪了,磁盘直接拔下来就能用,需备份的数据用 rsync 在多个磁盘之间同步,特别重要的数据用 rclone 与网盘同步
|
34
Pters 140 天前
硬盘直通啊,就算坏了还能重装
|
36
X2031 140 天前
还好吧 我跑的 AIO 2 年多了也没爆炸稳得很,散热搞一下还是很稳的啊
|
37
byiceb 140 天前
哎,刚崩完。。现在重要数据多放了几个备份。
|
38
pfffs 140 天前
大佬们,ubuntu 使用 ZFS 安全吗?不开任何虚拟机。
看到各位评论,吓死我了 |
39
HebronG 140 天前
@pfffs 如果你不需要额外的可用性和读写速度,你就不需要 ZFS (以及其他任何 raid 方案)
至于安全性,合理配置不折腾的情况下目前认为 ZFS 是足够安全的,最好 ECC 内存就是 |
40
panlatent 140 天前
一直没敢 All in ,因为心里潜意思觉得早晚有一天 Boom 。NAS 就是 NAS ,软路由就是软路由,互不影响。另外重要资料多多备份。没做 Raid ,做好了损失了所有 NAS 数据的打算(虽然会很肉痛)。
|
41
noahzh 140 天前
最低成本,其实是树莓派接个硬盘柜,装个 minio. 做离线备份.
|
42
securityCoding 140 天前
高端操作了,我只弄了个群晖+oss 冷备
|
43
barathrum OP 好消息各位!昨天晚上按了开机,等它自己在那修复了一宿,今天早上发现除了 nextcloud 全好了。
我重要数据都在其他地方有备份,就是 pt 下载的盘用的 raid0. |
44
pfffs 140 天前
@HebronG 我的使用场景是:在物理服务器上使用的 ZFS ,100T 左右机械硬盘组 ZFS mirror(因为是存用户数据的,所以需要高可用),每天凌晨会执行同步,将数据同步到其他储存
使用 ZFS 的理由两点,1.创建快照 2.压缩节约成本,目前压缩比 1.45 ,除此之外不会使用其他功能,也不会手贱去操作 ZFS 相关的配置 主要是看到上面的老哥提到 ZFS 莫名其妙就坏了,给我听的心里发毛,虽然每天有备份,但是还是担心突然坏了,重建很麻烦,而且也会丢失一天的用户数据 |
46
HebronG 140 天前 1
@pfffs 连硬件 raid 卡都有机会“莫名其妙”就坏了,你这个需求不用 zfs 也没啥更好的选择了啊,反正本来也就是单台系统,ZFS 莫名爆炸的概率比系统莫名爆炸的概率还是要低一点的
如果要安全性更进一步的花,就要多台服务器了,要么用更高级的软件定义存储,要么多个存储系统互为热备,你参考自己的情况考虑下有没有这个必要 |
47
HebronG 140 天前 1
@pfffs 唯一可能可以在当前条件下更进一步的,大概是迁移到 trueNAS 系统而不是在 ubuntu 下进行配置,虽然也是基于 linux ,但官方适配可能能比 openZFS 要更好一些。但只是可能,我没具体比较过这两种方式的区别
|
48
guanzhangzhang 140 天前
开不了机要上图,至少能过 grub 界面和 menu 界面的,后面加载 rootfs 问题那就 linux 手段修复看看了
|
49
bao3 140 天前 1
很多教程,都不教人数据的重要性,对于 all in one 来说,引导磁盘/操作系统的冗余,这本身就是要考虑的,所以群晖 DSM 是把自己装在每一个盘,而 TrueNAS scale 则是安装时就要求你把它装在 2 个盘上。
但绝大多数的教程都不会强制要求玩家们一定要做引导盘/操作系统的冗余,因为 99.99%的人人为不重要。 剩下下来是 Raid 1 ,既然是 all in one 了,就不要玩花样,老老实实 Raid 1 ,除非是电影音乐这类损毁后可以再生的资源,你随意存到其他类型的磁盘阵列。 以上 2 点如果都能做到,这基本上可以杜绝绝大多数灾难,然后有钱的可以加钱,上更规格的数据保护。 但,如果你的数据不重要,各位还是听劝,买个网盘吧,省心省钱,下载资源也省时间。 |
50
shadowyw 140 天前
重要数据按照 321 原则, 备份备份备份 重要的事情说三次
|
52
liuhai233 140 天前
数据备份 + Ansible 脚本部署,几乎无缝迁移 + 新建
|
53
lolizeppelin 140 天前
真有干运维的在自己家上 raid 的?
还有干运维的在自己家上分布式文件系统的? |
54
findex 140 天前
zfs 有各种好处,但是磁盘摆放位置受不受辐射、散热是否不好、电源是否不稳定都是因素。磁盘属于精密仪器。我有一台 N100 ,入手了一块 nvme m2 的 stata 转接板,始终没上机械盘 AIO 。主要是对这套硬件的稳定性不认同,包括电源+主板+散热。手边还有一台 4 盘位白群晖。
即便不用 all in boom ,还是需要多备份。 all in one 的好处是节省资源,坏处是一坏全完。 @lolizeppelin 真有干运维在家上 raid6 的,raid5 都不靠谱,重建要花很长时间,然后有可能挂第二个盘。也有自己搭建机房搞分布式文件系统的。属于工作带回家做研究。 @laminux29 看了一下 log ,试问您的 nas 是不是用了矿盘? |
56
ddczl 140 天前
我是不敢 all in one 的,我加一个 NAS 主要动作就是存储,一台跑 Docker ,数据还好,重要的是多备份,单主要是花精力,所以把服务存储分散部署
|
57
HeyWeGo 140 天前
@zbowen66 #55 只能说目前我选了适合自己的家庭使用方式,并不推荐长期使用 nas 工作的人这么做。多数人的 nas 。买过 10 张硬盘,目前 18 年坏过两个,一个西数的一个东芝的,其他的都保持良好。
|
58
Jinnrry 140 天前 via Android
All in one 两年了,还没炸
|
59
hanxiV2EX 140 天前 via Android
数据都不是重要的,把配置文件备份就好,挂了就恢复出厂设置。
|
60
totoro625 140 天前
@laminux29 #17 我有一次 apt upgrade 后 zfs 崩了,原因是 zfs \ zfs-kmod 版本不匹配,宕机一个礼拜人肉去修,从此不敢轻易升级
|
62
busier 140 天前
有 Linux 运维经验,一直 pve + btrfs 数据盘很多年了~!
|
63
chinni 139 天前
备份 推荐 rustic
|
65
HebronG 139 天前
@KINGWAY 全部 16T ,便宜的时候一千五一块,现在不好买了
方案可以去隔壁 chiphell 学学,了解不同方案的倾向,不同系统的特性,然后建议自己做一个不要抄,如果自己搞不出方案说实话大概率没有相应的运维能力,硬上后期会很麻烦,建议直接 WIN 下挂几个单盘就完了,或者买成品 NAS 说真的 V2EX 主攻软件工程方面的,这种涉及硬件的综合系统运维还是隔壁比较熟 |
66
129duckflew 139 天前
@Int100 你单机 K8S 不还是 all in boom
|
67
zhangeric 139 天前
pve 有 backup server 可以装一下或者直接在 pve 的 debian 上装 timeshift.定期备份系统.
|
68
lingxmo 139 天前
我的 2 年多了倒是没炸,就是有个 14t 的硬盘,还省 1.多 t 可用空间,最近突然发现读写慢的不行,只有 10 几兆/s ,不知道是不是和 btrfs 格式有关系,另外一个一起买的盘 ext4 格式用着倒是没问题
|
69
totoro625 139 天前
@chinni #63 你想说的是 restic 吧 https://restic.net
|
70
Int100 139 天前 via iPhone
@129duckflew 说了“分布式” “高可用” ,哪来的单机??
|
72
THESDZ 138 天前
网络独立,运行时独立,存储独立
网络这个路由器,刷个 wrt 运行时找个多核大内存机器 存储单独运行 存储的盘尽量只做 读取 最终结果写入:例如 qb 下载完成后再移动到存储中(smb 等挂载给运行时机器) 本人方案: 路由器+n100 的运行时机器+j4125 的 truenas 关键数据自动备份到多处网盘,例如密码之类的 |
74
starinmars 134 天前
@Xenos 20T 远远不够,200T 没有焦虑
|