首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
宝塔
V2EX  ›  程序员

服务器是不是只要做了 RAID1 或者 RAID10,就不需要备份数据了?

  •  
  •   alwayshere · 337 天前 · 5490 次点击
    这是一个创建于 337 天前的主题,其中的信息可能已经有所发展或是发生改变。

    现在选择数据存储的独立服务器,数据大概有 15TB,文件夹有数百万个,有两种选择:

    1. 服务器多少块硬盘不重要,做 raid0 或者不做 raid,为了备份数据,rsync 时时同步到另外一台服务器上,这样做的话,感觉时时性满足不了需求,况且 rsync 遍历几百万个文件夹效率如何??我没试过
    2. 选择偶数块硬盘的独服,这样的话可以做 RAID1 或者 RAID10,即使其中一块盘坏了,也可以热插拔,数据和运营不会受到任何影响,这样做是不是更好?有什么风险和弊端?

    上面这两种哪种方式最好?当然两者结合的话是最安全的,就是价钱有点不好看

        1
    qiyuey   337 天前
    可以考虑一下异地容灾
        2
    coreos   337 天前
    1.异地容灾是很有必要的
    2.R1 R10 要么机房有人天天看灯,要么自己做报警,其它你见过在同步的时候另外一块硬盘也挂了么?哈哈哈
        3
    opengps   337 天前
    备份依然需要,raid 仅仅是对于硬盘损坏时候对数据的保障,万一你中毒被勒索加密,你多份硬盘上的文件也就是加密后的了。依然没法还原回滚。
    定时快照是针对操作失误类“数据救援”的方案
        4
    huaxing0211   337 天前
    灾备啊!!!!
        5
    mhycy   337 天前
    服务器必须上 RAID,为的是不让磁盘损坏引起业务中断,R1 低配,R5 中配,最优 R6
    备份的作用是防止逻辑意外(病毒 /程序 BUG/单比特错误等原因)导致数据不可用

    意义不同,建议二者都上
    另,rsync + inotify 可以触发式同步,实时性与资源消耗都还行,然而这并不是备份
    (病毒 /bug 写入的异常数据会覆盖正常数据)
        6
    dot2017   337 天前
    RAID 只是能保证在硬件损坏时数据还能正常读取,以便最小化对业务影响及方便硬件更换,并不是备份的解决方案
        7
    xzc19970719   337 天前
    RAID 是用来备份硬件。。不是数据啊
        8
    lingll   337 天前
    备份是多维度的
    1. 预防磁盘损坏, 做 raid, 楼主为什么不用 raid5,6? 然后多加一个热备盘
    2. 预防机房天灾人祸, 异地容灾
    3. 预防人为误操作,病毒删数据, 定时同步到别的存储
        9
    liprais   337 天前
    两码事
    备份是备份,raid 是 raid
        10
    exonuclease   337 天前 via iPhone
    没用 删库两个一起删
        11
    CallMeReznov   337 天前   ♥ 2
    看了标题,当年我也是那么像的,直到有一次阵列卡爆炸,阵列降级,然后向拉稀一样往我硬盘里提交根本不正确的数据.

    类似的情况可以看 linus 他那自信的全 SSD R0 数据恢复实录,惊心动魄啊!
        12
    boris1993   337 天前 via Android
    不需要备份?老哥你胆大
    推荐去看看#11 说的那个视频,给你压压惊
        13
    gy911201   337 天前
    raid 是高可用方案,不是备份方案,两者应当同时进行…………
    备份得有,raid 也得有。
    没有 raid,一旦硬盘出问题服务直接不可用了。
    没有备份,数据有丢失风险……
        14
    likuku   337 天前
    存储不是备份!存储不是备份!存储不是备份!

    重要的事情说 N 遍都不嫌多!

    "备份设备应该比对线上生产设备更高的要求和重视,因为灾难发生,很可能备份就是你唯一的救命稻草"

    即便你用上千万一套的 NetApp 存储也会遇到磁盘坏掉的状况(我遇到过),
    更别说只是普通廉价的 RAID1 了(普通常见 RAID 只能保证底层 I/O 正确,才不管你存取的信息是否正确)。

    可靠,经受定期备份恢复演习 的备份 才能称之为 “有效备份”,

    君不见 最近两年 有国际大厂 分别有因为备份无效(Gitlib 事故) 和 有效备份 (Github 最近的事故) 事故时的不同嘛?!
        15
    CallMeReznov   337 天前
    @likuku 远的 GOOGLE 音乐出过一次比较大的事物,是业务 BUG 导致,最近的话就是腾讯云
        16
    annielong   337 天前
    一定是要有效备份,曾经遇到过,以为天天备份没问题,结果发现有问题恢复数据的时候发现备份是错误的,无法恢复
        17
    mchong   337 天前   ♥ 1
    如果你遇到过 raid1 两块盘同时坏的情况就不会这么做了。而且大容量的硬盘在阵列同步过程中有很大几率损坏。我们公司的服务器 5*600G raid6,外加一块热备。上次坏了一块盘,更换后重建,重建过程中又坏了一块。再换。再次重建过程中又坏了一块。真是个悲伤的故事。。
        18
    likuku   337 天前
    另外:

    “服务器多少块硬盘不重要,做 raid0 或者不做 raid,为了备份数据,rsync 时时同步到另外一台服务器上,这样做的话,感觉时时性满足不了需求,况且 rsync 遍历几百万个文件夹效率如何??我没试过”

    # 你知道有种技术叫 快照 嘛?公有云端弹性存储基本都有这功能 。
    高级的 FS (ZFS,Btrfs)有 snapshot 功能,生成 snapshot 指令瞬间执行完毕,就是瞬间凝固成一个独立平行宇宙,
    之后就可以(异步 /后台)把 snapshot 发送到备份存储(至少 ZFS 可以,当然是差异化发送,并可压缩传输)
    或者(异步 /后台)原始点让备份程序 /rsync 把 snapshot 版本的 FS 同步到你备份存储上

    存储 和 应用 分离是更好作法,早年我们传统作法是:
    多个应用服务器 /web 通过 NFS 去存取 专用的 存储服务器 or NetApp 这种专业存储设备(原生有 NFS,iSCSI 服务),
    存储服务器自己有快照 /透明压缩 /重复数据删除 等功能。

    最后,几百万文件夹又能怎样? rsync 也就初次会因为全部文件传输一遍会慢,再之后都是超高效差异化比对传输。
        19
    likuku   337 天前
    @CallMeReznov 想起秋天也在 twitter 上讨论数据备份策略,提到有钱 /必须时,还得作 跨洋备份,
    甚至希望能在 太空 /月球 /火星 上建立备份数据中心,结果有某国际一线大厂推油立即回复,说他们一直是有跨大洋备份。(星际备份?暂时是个梦)

    想想能记得的最近一些新闻:强烈地震大规模海啸,核灾,大范围山林大火,跨洋备份必要,尤其是全球性企业。
        20
    likuku   337 天前
    "就是价钱有点不好看"...

    LZ 记得你们是作商业图片业务的,想想你们的生意命脉核心:图片存储的可靠性

    要是数据丢了,卖什么去?还做什么生意?
        21
    momocraft   337 天前
    raid1 才两块(而且数据不统一时不知道哪个是错的),重要数据不能赌这个概率。

    #16 的补充:现在 btrfs 也有快照的 incremental send/receive 了。

    可能 btrfs 还需要更多时间检验,不过快照真的爽... 我的开发机已经全用上 btrfs + btrbk 了。
        22
    AntonChen   337 天前
    重要数据考虑「 3-2-1 原则」
        23
    powergx   337 天前
    R1 是保证你业务系统不会因为磁盘故障中止, 备份是真正的备份
        24
    Hardrain   337 天前 via Android   ♥ 2
    曾在 Twitter 上看过一 tweet,推主的 NAS 是使用 4 块盘 raid5
    结果某天被家里的猫尿了一泡,硬盘全挂。

    "异地容灾"
        25
    likuku   337 天前   ♥ 1
    @momocraft #21 btrfs (bugfs) 多次踩坑,最近仅有一次使用经验稍微改观,然而它在我心中的阴影还得持续很久。

    我自己之前先后组的两台备份用存储服务器也都是用 freebsd + zfs (snapshot + 透明压缩)
        26
    diggerdu   337 天前
    @CallMeReznov 请问这个视频哪里可以找到呢 可以给个关键字吗
        27
    loading   337 天前 via Android
    整个机房被烧毁,那个图我就不发了。
        28
    realpg   337 天前 via Android
    @mhycy
    R1 低配 R5 中配 最高 R6?

    让我笑一会儿
        29
    choury   337 天前 via Android
    @likuku 是的,一次异常断电,用了所有恢复手段都没救回数据,网上查资料,又少又旧,用的人少也很少别人经验可以借鉴
        30
    wemore   337 天前 via iPhone
    其实最重要的是别立 flag
        31
    msg7086   337 天前
    这么点方案也能叫安全……

    两句话。
    1. 冗余不是备份。
    2. 备份遵循 3-2-1 守则。

    不听的话等着数据全毁。
        32
    Osk   337 天前
    @realpg 同好奇 R1 怎么低配了, 不是最贵的吗....
        33
    awhane   337 天前
    @msg7086 两地三中心吗?有具体方案吗
        34
    mhycy   337 天前
    @realpg @Osk

    R1 可以最低双盘组阵,一般采购中最低配的阵列就是 R1,省硬盘钱
    R5 最低 3 盘组阵,在容量需求不大的时候 R5 没意义,在有容量需求的情况下这是最低选择
    R6 最低 3 盘组阵,但没意义,至少 4 盘组阵,容错率与 R10 一致,但与 R10 相比可坏掉任意两盘
    (大多数情况下 R6 阵列卡相比 R5 需要付出更多的钱)

    我不知道有什么地方让你笑起来,望指教
        35
    scofieldpeng   337 天前
    我家里的集群这样玩的:
    1. 硬盘 raid1
    2. 每次全量备份一次,保存近 30 天的全量快照
    3. 每天备份后给腾讯云,阿里云,google drive 归档存储一份
    当然,我的数据比你量小很多个量级
        36
    likuku   337 天前
    吃完饭,看到前同事在某群里上午发了几条,现公司某小业务系统被黑,数据被加密,被勒索比特币,

    当然没好意思再问(补刀)“备份呢?”。
        37
    skschema   337 天前
    异地,异步,冷热多媒介。有方案更要执行好。
        38
    JoeoooLAI   337 天前
    我试过 raid5 差点挂。。。 还是做 比较稳妥吧
        39
    y1shan   337 天前
    123,1 个异地,2 种介质,3 个备份。
        40
    CoderGeek   337 天前
    这问题问得...显然不是的
        41
    Schalkiii   337 天前
    说了多少次了。冗余不等于备份。重要数据,三盘两地
        42
    msg7086   337 天前
    @awhane 三备份两介质一异地(上面已经有人说了)。
    具体的方案还要实施的人自己制定,我说的只是原则问题。
    另外备份必须要定期实际还原一次,假装自己资料全毁,看能不能从备份中恢复出整个环境。

    @mhycy R1 的价格效率是 50%,R5 价格效率至少 66%(实际上高得多)(但是正常人不会再选用了),R6 价格效率也要比 R1 高。
    R1 和 R6 本来用途方式就都不同,跟高配低配没什么关系。给你 12 块盘组 RAID,同样可用容量下 R1 的成本比 R6 高多了,你说到底谁算高配谁算低配。
        43
    3s6i2o   337 天前
    过来人表示 盘柜里的文件系统挂了 然后没然后了。。。等着数据恢复中心恢复。。。
        44
    mhycy   337 天前
    @msg7086 看来我以后要换个表述.....如何选择阵列方案还是懂的
        45
    CallMeReznov   337 天前
    @diggerdu 逼站 av3576332
        46
    kernel   337 天前
    linode 之类的也是 raid,因硬件故障我丢过数据
        47
    alvin666   337 天前 via Android   ♥ 1
    楼上推荐 r5 的不是坏就是傻...
    重建失败了解一下,对于大容量盘,重建失败概率还挺大的
    https://www.zhihu.com/question/20164654/answer/348274179
    重要数据必须 321,三份备份,两种方式,一处异地容灾
        48
    ThinkZ   337 天前 via iPhone
    raid5 损坏时的首先要做的是备份数据 然后再重建 千万不要反过来
        49
    a22124497   337 天前
    @alvin666
    R5 不坏也不傻,应该还是人的问题
        50
    diggerdu   337 天前 via iPhone
    @CallMeReznov 是加拿大的 linus 啊.....
        51
    skylancer   337 天前
    那我介绍一下 1024 整个机房烧掉了的故事给露珠听听?
        52
    flynaj   337 天前 via Android
    重要数据异地备份,全球大的数据中心留个备份
        53
    xxgirl2   337 天前
    如果系统出 bug 那些东西一起 GG。今天不花小钱买备份设备,明天花大钱也未必救回业务。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   855 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 36ms · UTC 21:11 · PVG 05:11 · LAX 13:11 · JFK 16:11
    ♥ Do have faith in what you're doing.