卧槽?微软这样也行?用 Win Server 做 NAS 要慎重了…… - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
sadan9
V2EX    程序员

卧槽?微软这样也行?用 Win Server 做 NAS 要慎重了……

  •  
  •   sadan9 2017-12-18 10:36:56 +08:00 23906 次点击
    这是一个创建于 2855 天前的主题,其中的信息可能已经有所发展或是发生改变。
    平时写代码在 Hyper-V 的虚拟机中。虚拟磁盘镜像在 ReFS 文件系统上,底层 2 块盘做 raid1 的存储池。
    某次非正常关机以后,在 Hyper-V 中发现有某个一个文件 IO 出错(其他文件正常)。
    在主系统中对整个虚拟磁盘文件进行复制,结果报了以下错。
    https://ds3.galdb.net/22.jpg

    直接删整个文件……直接删整个文件……直接删整个文件……………………
    47 条回复    2018-05-30 01:09:08 +08:00
    mortal
        1
    mortal  
       2017-12-18 10:41:29 +08:00
    这是 ReFS 的特性?正在用 Win Server 的表示密切关注…
    honeycomb
        2
    honeycomb  
       2017-12-18 10:42:56 +08:00 via Android
    这似乎是 intended behavior,refs 会自行丢掉错误数据,美其名曰数据打捞
    congeec
        3
    congeec  
       2017-12-18 10:45:54 +08:00
    口怕。我还以为只有移动数据的时候可能会丢失数据
    liuxiaofengone
        4
    liuxiaofengone  
       2017-12-18 10:46:35 +08:00
    文件系统 ReFS 现在不敢用,感觉还是有问题~
    FFLY
        5
    FFLY  
       2017-12-18 10:49:46 +08:00
    重点关注,有点厉害。
    raptor
        6
    raptor  
       2017-12-18 10:49:59 +08:00
    还是那句话,珍爱 S(heng)M(ing),远离 MS。233
    XiaoFaye
        7
    XiaoFaye 
       2017-12-18 10:57:08 +08:00 via Android
    还是用成熟的 NTFS 吧
    tomhuang
        8
    tomhuang  
       2017-12-18 11:57:48 +08:00 via Android   1
    虚拟磁盘建在镜像储存池里 refs
    vhdx 挂载至 hyperv 群晖
    想了解详细情况
    sadan9
        9
    sadan9  
    OP
       2017-12-18 12:06:10 +08:00
    @honeycomb 我以为 ReFS 至少会把能恢复的部分数据恢复出来,读不出来的部分会填 0 之类的。结果复制 vhdx 文件的时候直接整个砍掉了,跪了。在 Hyper-V 里至少能访问大部分数据。
    早知道至少先在 Hyper-V 里把能复制的文件复制出来。
    sadan9
        10
    sadan9  
    OP
       2017-12-18 12:10:06 +08:00
    用的系统是 Windows Server 2016,ReFS v2
    aliuwr
        11
    aliuwr  
       2017-12-18 12:14:13 +08:00
    有 FOUND.000 文件夹吗?
    qweaszxcdf
        12
    qweaszxcdf  
       2017-12-18 12:16:49 +08:00
    这不是 ReFS 的 feature 么
    skylancer
        13
    skylancer  
       2017-12-18 12:19:15 +08:00
    我去..
    sadan9
        14
    sadan9  
    OP
       2017-12-18 12:19:55 +08:00
    @aliuwr 没有,貌似直接删除。
    RqPS6rhmP3Nyn3Tm
        15
    RqPS6rhmP3Nyn3Tm  
       2017-12-18 12:21:13 +08:00 via iPhone
    我还以为 APFS 是最烂的现代文件系统了,ReFS 接过一棒
    codeeer
        16
    codeeer  
       2017-12-18 12:21:43 +08:00 via iPhone   4
    微软:硬盘好像有个问题,我帮你扔了
    edsheeran
        17
    edsheeran  
       2017-12-18 12:22:19 +08:00 via iPhone
    微系做服器就是笑
    honeycomb
        18
    honeycomb  
       2017-12-18 12:23:19 +08:00 via Android
    @tomhuang

    说不定它根本没考虑过 refs 套 refs 的情况
    https://docs.microsoft.com/en-us/windows-server/storage/refs/refs-overview
    sadan9
        19
    sadan9  
    OP
       2017-12-18 12:31:28 +08:00
    @honeycomb 没有套 ReFS 啊,只有存储池-->ReFS-->vhdx
    likuku
        20
    likuku  
       2017-12-18 12:33:44 +08:00
    @honeycomb [refs 会自行丢掉错误数据,美其名曰数据打捞]

    貌似是想抄 带冗余的 ZFS 池的“数据自动错误修正”,看起来是实现错了方向。
    Nitromethane
        21
    Nitromethane  
       2017-12-18 12:42:48 +08:00
    我在 VM ware 中,也发生过磁盘文件损坏的问题。
    对于这种重要数据,至少要做到双机备份吧。
    Shura
      &bsp; 22
    Shura  
       2017-12-18 12:45:20 +08:00
    这叫截肢手术,避免扩散,233333 (大雾)
    honeycomb
        23
    honeycomb  
       2017-12-18 12:49:39 +08:00 via Android
    @sadan9
    我表述不对,看链接里那个 salvage data 的特性(卷保持在线,受损的文件则直接删除),看完以后是不是很想骂娘。

    至于它那个自动修复错误的特性,估计依赖于开启完整性流,而开启了这个特性后涉及的内容会变成 copy on write 模式,而 io 性能会因为随时对数据算 hash,降低很多
    honeycomb
        24
    honeycomb  
       2017-12-18 12:53:12 +08:00 via Android   1
    @likuku 我试过在带完整性流的情况下,它确实能修复错误。
    方法是这样:

    建两个 vhdx,格式化成 refs,都开完整性流,在储存池里挂载为双向镜像的卷。

    卸载掉其中一个 vhdx,用 hex 编辑器把里面稍微乱改一下,再挂载回去,储存池能检测到错误,然后修复。
    tyhunter
        25
    tyhunter  
       2017-12-18 12:54:17 +08:00
    @BXIA 求教 APFS 现在有什么坑
    honeycomb
        26
    honeycomb  
       2017-12-18 12:56:55 +08:00 via Android
    @tyhunter 新浪上有人说,有些时候删除速度比复制速度慢。
    likuku
        27
    likuku  
       2017-12-18 13:01:15 +08:00
    @honeycomb 那么看来路子没错,自动修复数据错误,前提必须是存储池 /卷 底层必须是带冗余的才可以。这和 ZFS 的作法一样的。
    likuku
        28
    likuku  
       2017-12-18 13:03:07 +08:00
    @honeycomb 也对,存储这么重要的用途,服务器上一般是没人敢用不带冗余的配置。
    momocraft
        29
    momocraft  
       2017-12-18 13:11:33 +08:00
    /安慰

    要不要考虑上 zfs ... 一个 freebsd 的 zraid pool 能简单提供 nfs/samba/sshfs,也可以当 VM guest (bhyve) 的块存储用。就是要的盘有点多 (raidz2 要五块起)。io 也不算快,不过撑满家里 GB 网线还是够的。

    如果有需要可以偷偷 qq 上找我 -_-
    sadan9
        30
    sadan9  
    OP
       2017-12-18 13:11:42 +08:00 via iPhone
    @honeycomb 自动修复我试过没问题,这次估计磁盘硬件问题,然后 refs 自动修复失败。问题部分数据读取失败直接砍掉一个 100G 文件这个做法………
    RqPS6rhmP3Nyn3Tm
        31
    RqPS6rhmP3Nyn3Tm  
       2017-12-18 13:18:18 +08:00
    @tyhunter 使用下来大问题没发现有,但是性能好慢……尤其是加密的情况下
    然后 snapshot 这个功能不能脱离 time machine 使用,逻辑上挺难理解的
    sadan9
        32
    sadan9  
    OP
       2017-12-18 13:37:03 +08:00
    忽然还发现一个问题……既然 ReFS 都已经认为 IO 读取失败了……存储池里的磁盘居然状态都是正常……没有告警……
    OTZ。。。。
    run2
        33
    run2  
       2017-12-18 14:08:05 +08:00
    @honeycomb #26 删除(孤本)比复制慢的话 不是很正常么? 复制的时候只是新的元数据
    gamexg
        34
    gamexg  
       2017-12-18 15:02:15 +08:00
    @sadan9 还好上次因为没有快照功能没选择 ReFs,微软这个操作真的很厉害...

    一次电源故障造成双盘镜像掉了一个盘外加另一个盘出现错误,zfs 显示几个文件损坏,修正电源问题两个盘重新上线后错误被自动修复了。
    另外磁盘状态有错误计数,这个计数需要手动才能清除。
    tyhunter
        35
    tyhunter  
       2017-12-18 16:04:55 +08:00
    @BXIA 不过从 Macbook Pro 2016 开始,很多反映 Firevalut 开启后,mbp 就花屏了
    opengps
        36
    opengps  
       2017-12-18 16:40:30 +08:00
    微软这个想法很实在,反正用不了,别浪费时间了
    ThatIsFine
        37
    ThatIsFine  
       2017-12-18 18:09:05 +08:00
    我 kao
    jingniao
        38
    jingniao  
       2017-12-18 18:49:23 +08:00 via Android
    这样啊……
    hyuwang
        39
    hyuwang  
       2017-12-18 19:47:54 +08:00
    用 ReFS 在 RAID0 上做数据储存的表示好慌。。。
    RobertYang
        40
    RobertYang  
       2017-12-18 20:09:25 +08:00 via Android
    有块存照片的硬盘是 refs,有点虚
    Feiox
        41
    Feiox  
       2017-12-18 21:20:51 +08:00
    咦,奇怪了,Azure 中 Blob Service 用的就是 Refs,SLA 承诺可用性 6 个 9
    mhycy
        42
    mhycy  
       2017-12-18 21:29:28 +08:00
    ReFS 的 BUG 总让我觉得是印度佬的作品
    likuku
        43
    likuku  
       2017-12-18 22:05:04 +08:00
    @Feiox 人家底层硬件可能都是以百万为单价的...
    bookit
        44
    bookit  
       2017-12-18 22:42:08 +08:00
    ms 和 apple 比烂,也许不相上下,

    因为阿三比例正在迅速接近?
    sadan9
        45
    sadan9  
    OP
       2017-12-19 10:13:18 +08:00
    @Feiox Azure 应该用的是多副本,可能会好很多。
    euyuil
        46
    euyuil  
       2018-01-07 17:58:28 +08:00
    @Feiox

    Azure Blob 应该并不是使用 ReFS 来保证数据完整性的,并且可用性没有到 6 个 9 (其实只有 3 个 9 ),而是承诺 durability 到 11 个 9 (对于 LRS )。我以前在 Azure Storage 组工作过,Blob / Table / Queue 都使用一个微软内部的用在集群上的文件系统,效果上相当于同一份数据存储 3 份,然而并不是存储在同一台服务器上的,甚至不是在同一个机架上,以确保 2 个机架同时都挂掉的情况下(同一个机架用的电源和交换机是相同的),数据还能恢复。而 ReFS 只能用在一台机器的存储空间里,所以……

    SLA 参考:
    https://azure.microsoft.com/en-us/support/legal/sla/storage/v1_3/
    https://docs.microsoft.com/en-us/azure/storage/common/storage-introduction
    ZRS
        47
    ZRS  
       2018-05-30 01:09:08 +08:00
    LZ 启用了完整性流吗?
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2750 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 400ms UTC 09:12 PVG 17:12 LAX 02:12 JFK 05:12
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86