存储扩容 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
abbottcn
V2EX    Linux

存储扩容

  •  
  •   abbottcn 2020-01-29 10:08:45 +08:00 via iPhone 5351 次点击
    这是一个创建于 2080 天前的主题,其中的信息可能已经有所发展或是发生改变。
    需在线扩容。

    两台机器,
    机器 A 有一个 2T 的 RAID 0 阵列;
    机器 B 有一个 2T 的 RAID 0 阵列。

    两台机器均具有独立的系统硬盘。
    两台机器网络互通,其中 B 机器可以通过 NFS 挂载 A 上的阵列。

    问题,机器不能停机,可否把两个机器上的独立的 RAID0 阵列合并为一个存储空间,达到接近 4TB 的读写空间?
    9 条回复    2020-01-30 17:15:01 +08:00
    xuanzc880
        1
    xuanzc880  
       2020-01-29 10:20:28 +08:00
    你可以试试通过 iscsi 把另一个机器的硬盘挂载过来,然后再通过 lvm 啥的合并成一个硬盘,不过我感觉两个 raid0 的设备,加上网络访问,安全性堪忧呀.
    abbottcn
        2
    abbottcn  
    OP
       2020-01-29 10:29:26 +08:00 via iPhone
    只在内部私有网络操作。
    网络和外部物理隔离。安全性应该不用考虑。

    我根据你提供的关键词,去看看怎么搞。
    谢谢先。
    Mithril
        3
    Mithril  
       2020-01-29 10:32:26 +08:00
    他说的不是网络安全,是你存储介质。两个 RAID0 加上 iSCSI 比较容易炸。
    @abbottcn
    zydrsnuo
        4
    zydrsnuo  
       2020-01-29 10:47:42 +08:00 via Android
    把两个机器的存储空间合并成一个大的存储,这是分布式存储的概念。你可以搜一下分布式存储的方案,比如 glusterfs ceph 之类的。
    abbottcn
        5
    abbottcn  
    OP
       2020-01-29 12:14:41 +08:00
    @Mithril 谢谢提醒。 看来我理解错了。
    也感谢 @zydrsnuo 的提醒。 我查询下看看具体怎么处理。

    作为备用方案, 我可以把其他的机器上的存储先拿来用。
    因为本人技能有限,目前修改权限,暂时通过 NFS 借用其他机器的存储,是一个最快的解决方案。

    原机器上的 RAID0 是作为专用的读写缓存用的。
    没想到这次计算过程中,产生的读写特别大。
    我也写了一个监控, 算完一个,就立即提取数据, 而后删除 NetCDF 的原文件。

    原来没有预测到这个应用场景,读写缓存弄少了。
    郁闷中。

    再次感谢各位提供解决方案。
    CloudRaft
        6
    CloudRaft  
       2020-01-29 23:06:14 +08:00
    首先要看具体需求:
    a. 仅需要 A 获得 4TB 的读写空间
    b. 需要 AB 均能读写

    需求 a:
    1.B 中的阵列改成 JBOD,除非是万兆互联,否则性能瓶颈在网络 IO 而非磁盘,所以 Raid0 没有意义。
    2.将 B 中的存储空间已 iSCSI 的形式共享给 A
    3.A 中把 iSCSI 磁盘和本地 JBOD 组成 LVM,参考:redhat documentation (新人不能发链接)
    不过这个数据安全性以及性能....

    需求 b:
    emm....别想了....
    abbottcn
        7
    abbottcn  
    OP
       2020-01-30 13:40:57 +08:00
    @CloudRaft 感谢分享。 其实想要的是存储空间, 机器 A 和 B 都能读写。
    为了节省成本,起初 A 和 B 机器上的 RAID0 读写都是采用主板内置的卡实现的。 我现在也不甚了解,不停机可否修改既有的 RAID0 配置。
    我换了另一思路,监控计算,算完一个,就提取一下数据,而后没用的东西直接删除。这样弄下来,空间基本够用了。
    再次感谢分享解决方案。
    CloudRaft
        8
    CloudRaft  
       2020-01-30 16:03:17 +08:00 via iPhone
    如果 AB 都用的话,对一致性是否有要求?如果没有特别的要求可以用 glusterfs。优势是多终端读写,冗余性可以自控,你可以单副本也就是获得两个 2T 的空间,也可以双副本也就是 1 个 2T 的空间但是任意机器宕机服务不受影响。

    Raid0 改其他的只能重新组,数据不可能保留。raid0 性能虽然好,但是生产环境非常不建议使用,除非是横向复制的负载均衡环境。
    abbottcn
        9
    abbottcn  
    OP
       2020-01-30 17:15:01 +08:00
    @CloudRaft 专业术语我不太懂,比如读写一致性。
    我按照我实际使用场景来描述。
    数据运算过程中,最多同时又 72 个进程对读写缓存进行读写,但是这 72 个读写进程相互独立,不需要访问其他任何一个进程写的数据。 纯粹的已经算完的占用空间,导致后来算完的没有地方存放。

    现在修改了以下控制脚本,任何一个计算,算完毕后,就地提取数据,而后就拿走。
    这样操作之后,空间问题基本解决了。

    RAID0 的可靠性问题,可以忽略不计。
    我的场景中,仅仅用于读写缓存。

    当然也可能涉及,比如 A 机器的读写放在本地的 RAID0 阵列; B 机器的读写放在其本地的 RAID0 阵列。
    对,最开始就是每个机器都有本地读写。
    后来也面临一个实际的问题,
    如果要“续算”,我用到的计算程序,需要知道之前运行用过的原始路径。
    而后续的计算,负责计算的机器,未必是同一个(由 slurm 负责分派机器),
    所以就拿到共享的读写空间了。

    不过稍微变通一下思路,暂时解决问题了。
    感谢各位提供思路,我也借鉴了部分灵感。 多谢多谢。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1032 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 17:59 PVG 01:59 LAX 10:59 JFK 13:59
    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