Linux下挂载多路径存储磁盘【BC Linux Euler 21.10 LTS测试成功】

艺帆风顺 发布于 2025-04-02 17 次阅读


一、需求背景

    项目分配了16T的磁盘,可以发现由4块磁盘构成,采用传统fdisk无法单独对每块磁盘正常进行分区挂载。

    [root@host-10-206-152-173 ~]# lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTsda 8:0 0 447.1G 0 disk ├─sda1 8:1 0 1G 0 part /boot├─sda2 8:2 0 24G 0 part │ ├─bigcloud--enterprise--linux--for--euler-root 253:0 0 21.5G 0 lvm /│ └─bigcloud--enterprise--linux--for--euler-swap 253:1 0 2.5G 0 lvm [SWAP]└─sda3 8:3 0 64M 0 part sdb 8:16 0 15.1T 0 disk └─mpatha 253:2 0 15.1T 0 mpath  └─mpatha1 253:3 0 2T 0 part sdc 8:32 0 15.1T 0 disk └─mpatha 253:2 0 15.1T 0 mpath  └─mpatha1 253:3 0 2T 0 part sdd 8:48 0 15.1T 0 disk └─mpatha 253:2 0 15.1T 0 mpath  └─mpatha1 253:3 0 2T 0 part sde 8:64 0 15.1T 0 disk └─mpatha 253:2 0 15.1T 0 mpath  └─mpatha1 253:3 0 2T 0 part

    尝试fdisk /dev/mapper/mpatha 发现只有2T磁盘空间很明显不对。

    二、查看多路径设备

    #yum install device-mapper-multipath

    # multipath -l

      mpatha (368886030000003d8fa16923564b783e6) dm-2 Huawei,VBS fileIOsize=15T features='0' hwhandler='0' wp=rw|-+- policy='service-time 0' prio=0 status=active| `- 7:0:0:1 sdb 8:16 active undef running|-+- policy='service-time 0' prio=0 status=enabled| `- 8:0:0:1 sdc 8:32 active undef running|-+- policy='service-time 0' prio=0 status=enabled| `- 9:0:0:1 sdd 8:48 active undef running`-+- policy='service-time 0' prio=0 status=enabled `- 10:0:0:1 sde 8:64 active undef running

          mpatha (368886030000003d8fa16923564b783e6) dm-2 Huawei,VBS fileIO:是一个多路径设备,表示通过多个路径连接到同一个物理存储设备。这个装置的大小为 15TB,制造商是 Huawei。

          可以在某些路径发生故障时仍然保持数据的访问能力,同时也能实现负载均衡。

      三、多路径格式化挂载

        # sudo mkfs.xfs /dev/mapper/mpathamkfs.xfs: /dev/mapper/mpatha appears to contain a partition table (dos).mkfs.xfs: Use the -f option to force overwrite.

           /dev/mapper/mpatha 磁盘包含一个分区表,在格式化时会出现警告。

            强制覆盖它并继续格式化,可以使用 -f 选项

            # sudo mkfs.xfs -f /dev/mapper/mpatha

          [root@host-10-206-152-173 ~]# sudo mkfs.xfs -f /dev/mapper/mpathameta-data=/dev/mapper/mpatha isize=512 agcount=32, agsize=126975998 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=1, sparse=1, rmapbt=0 = reflink=1data = bsize=4096 blocks=4063231936, imaxpct=5 = sunit=2 swidth=256 blksnaming =version 2 bsize=4096 ascii-ci=0, ftype=1log =internal log bsize=4096 blocks=521728, version=2 = sectsz=512 sunit=2 blks, lazy-count=1realtime =none extsz=4096 blocks=0, rtextents=0Discarding blocks...Done.

          四、配置开机自动挂载

              #   vim /etc/fstab 

              增加一行挂载配置

            /dev/mapper/mpatha /data_mpatha xfs defaults 0 0

            # mount -a

              [root@host-10-206-152-173 /]# mount -a[root@host-10-206-152-173 /]# df -THFilesystem Type Size Used Avail Use% Mounted ondevtmpfs devtmpfs 405G 0 405G 0% /devtmpfs tmpfs 405G 0 405G 0% /dev/shmtmpfs tmpfs 405G 1.4G 404G 1% /runtmpfs tmpfs 405G 0 405G 0% /sys/fs/cgroup/dev/mapper/bigcloud--enterprise--linux--for--euler-root ext4 23G 15G 6.7G 70% /tmpfs tmpfs 405G 33k 405G 1% /tmp/dev/sda1 ext4 1.1G 154M 800M 17% /boottmpfs tmpfs 81G 0 81G 0% /run/user/993tmpfs tmpfs 81G 0 81G 0% /run/user/0/dev/mapper/mpatha xfs 17T 117G 17T 1% /data_mpatha