- 情景设置:
由于 LVM 可以弹性调整 filesystem 的大小,但是缺点是可能没有加速与
硬件备份(与快照不同)的功能。 而磁盘阵列则具有性能与备份的功能,但是无法提供类似 LVM 的优点。在此情境中,我们想利用“在 RAID 上面创建 LVM”的功能,以达到两者兼顾的能力。
(1)目标:测试在 RAID 磁盘上面架构 LVM 系统;
(2)需求:需要具有磁盘管理的能力,包括 RAID 与 LVM;
(3)前提:会用到本章创建出来的 /dev/vda5, /dev/vda6, /dev/vda7 三个分区! 那要如何处理呢?如下的流程一个步骤一个步骤的实施看看吧: 步骤:
(1)利用umount先卸载之前挂载的文件系统
(2)修改/etc/fstab里面的数据,让开机不会自动挂载
(3)利用fdisk将该分区挂载# 格式化系统: [root@CentOS ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda2 9.9G 7.8G 1.6G 84% / tmpfs 504M 84K 504M 1% /dev/shm /dev/sda1 194M 28M 157M 15% /boot /dev/sda3 9.9G 1.5G 7.9G 16% /home [root@CentOS ~]# cat /etc/fstab [root@CentOS ~]# fdisk -l Device Boot Start End Blocks Id System /dev/sda1 * 1 26 204800 83 Linux Partition 1 does not end on cylinder boundary. /dev/sda2 26 1332 10485760 83 Linux /dev/sda3 1332 2637 10485760 83 Linux /dev/sda4 2637 10444 62708736 5 Extended /dev/sda5 2637 2768 1048576 82 Linux swap / Solaris
# 新建RAID要求给虚拟机添加5个20G磁盘,且具有一个spare disk: [root@CentOS ~]# fdisk -l Disk /dev/sda: 85.9 GB, 85899345920 bytes 255 heads, 63 sectors/track, 10443 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x00017e60 Device Boot Start End Blocks Id System /dev/sda1 * 1 26 204800 83 Linux Partition 1 does not end on cylinder boundary. /dev/sda2 26 1332 10485760 83 Linux /dev/sda3 1332 2637 10485760 83 Linux /dev/sda4 2637 10444 62708736 5 Extended /dev/sda5 2637 2768 1048576 82 Linux swap / Solaris Disk /dev/sdb: 21.5 GB, 21474836480 bytes 255 heads, 63 sectors/track, 2610 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x00000000 ........ # 发现磁盘/dev/sda~/dev/sdh ........ Disk /dev/sdh: 21.5 GB, 21474836480 bytes 255 heads, 63 sectors/track, 2610 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x00000000 # 新建RAID: [root@CentOS ~]# mdadm --create --auto=yes /dev/md0 --level=5 --raid-device=4 --spare-device=1 /dev/sd{b,c,d,e,f} mdadm: Defaulting to version 1.2 metadata mdadm: array /dev/md0 started.
# 开始处理LVM(假设所有参数使用默认值) [root@CentOS ~]# pvcreate /dev/md0 #新建PV Physical volume "/dev/md0" successfully created [root@CentOS ~]# vgcreate raidvg /dev/md0 #新建VG Volume group "raidvg" successfully created [root@CentOS ~]# lvcreate -L 3G -n raidlv raidvg #新建LM Logical volume "raidlv" created [root@CentOS ~]# lvdisplay #显示LV详细信息 --- Logical volume --- LV Path /dev/raidvg/raidlv LV Name raidlv VG Name raidvg LV UUID DIxGkV-mVrb-NjlX-wGm0-pp1K-9Ebz-rsGV02 LV Write Access read/write LV Creation host, time CentOS, 2017-03-19 06:44:02 -0400 LV Status available # open 0 LV Size 3.00 GiB Current LE 768 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 6144 Block device 253:0
# 新建为ext4文件系统,挂载到/mnt/raidlvm上: [root@CentOS ~]# mkfs -t ext4 /dev/raidvg/raidlv mke2fs 1.41.12 (17-May-2010) Filesystem label= OS type: Linux Block size=4096 (log=2) Fragment size=4096 (log=2) Stride=128 blocks, Stripe width=384 blocks 196608 inodes, 786432 blocks 39321 blocks (5.00%) reserved for the super user First data block=0 Maximum filesystem blocks=805306368 24 block groups 32768 blocks per group, 32768 fragments per group 8192 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912 Writing inode tables: done Creating journal (16384 blocks): done Writing superblocks and filesystem accounting information: done This filesystem will be automatically checked every 32 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override. [root@CentOS ~]# mkdir /mnt/raidlvm [root@CentOS ~]# mount /dev/raidvg/raidlv /mnt/raidlvm/
上述环境可以实现RAID热插拔,LVM放大缩小等
# 删除环境,停止服务 [root@CentOS ~]# umount /mnt/raidlvm/ [root@CentOS ~]# lvremove /dev/raidvg/raidlv Do you really want to remove active logical volume raidlv? [y/n]: y Logical volume "raidlv" successfully removed [root@CentOS ~]# vgchange -a n raidvg 0 logical volume(s) in volume group "raidvg" now active [root@CentOS ~]# vgremove raidvg Volume group "raidvg" successfully removed [root@CentOS ~]# pvremove /dev/md0 Labels on physical volume "/dev/md0" successfully wiped [root@CentOS ~]# mdadm --stop /dev/md0 mdadm: stopped /dev/md0
鸟哥的linux私房菜学习笔记《三十四》RAID上构建LVM
最新推荐文章于 2022-06-03 20:03:29 发布