如何在Linux中创建LVM镜像
在计算机世界中,存储是最重要的因素。
如果数据丢失,那么组织或者丢失了一切。
最初,数据存储在正常磁盘中,它没有灵活地管理数据,并且恢复管理是非常复杂的灾难。
为了实现灾难恢复管理的灵活性和目标,突袭被介绍。
使用RAID,可以维护冗余,但仍然没有灵活地管理文件系统和存储管理。
逻辑卷管理器(LVM)提供更高级别的磁盘存储视图。
LVM传统上与包含许多磁盘的大型安装相关联,甚至在小环境中非常使用。
LVM具有许多功能,如通过吸收新的物理卷(PV)在线调整卷组或者通过在在线上删除现有的PV和在线调整逻辑卷(LV),并将物理范围添加到现有的LV。
使用LVM我们可以创建读取以及LV的读写快照。
可以通过RAID 0或者RAID 1来跨多个PV的整体或者镜像LVS的整体或者部分镜像。
可以在PVS之间移动在线LV。
LVM还将在共享存储群集中工作。
我们将显示创建LVM镜像的步骤
1)创建分区
要创建LVM镜像,我们需要确保具有自由空间。
在我们的情况下,我们将使用fdisk命令创建两个分区(我们可以使用分区或者整个磁盘)。
在创建分区之前,请确保使用了多少汽缸以及有多少汽缸。
检查可用空间以创建分区。
# fdisk -l Disk /dev/sdf: 10.7 GB, 10737418240 bytes 255 heads, 63 sectors/track, 1305 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/sdf1 * 1 765 6144831 83 Linux /dev/sdf2 766 892 1020127+ 82 Linux swap/Solaris
上面的命令显示总汽缸是1305,用过的汽缸是892.
这意味着,我们还有自由圆柱体,因此我们可以创建分区。
使用fdisk创建两个新分区。
# fdisk /dev/sdf Welcome to fdisk (util-linux 2.23.2). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Command (m for help): n Partition type: p primary (2 primary, 0 extended, 2 free) e extended Select (default p): p Partition number (3,4, default 3): First sector (391168-20971519, default 391168): Using default value 391168 Last sector, +sectors or +size{K,M,G} (391168-20971519, default 20971519): +100MB Partition 3 of type Linux and of size 95 MiB is set Command (m for help): t Partition number (1-3, default 3): Hex code (type L to list all codes): 8e Changed type of partition 'Linux' to 'Linux LVM' Command (m for help): n Partition type: p primary (3 primary, 0 extended, 1 free) e extended Select (default e): p Selected partition 4 First sector (585728-20971519, default 585728): Using default value 585728 Last sector, +sectors or +size{K,M,G} (585728-20971519, default 20971519): +100MB Partition 4 of type Linux and of size 95 MiB is set Command (m for help): t Partition number (1-4, default 4): Hex code (type L to list all codes): 8e Changed type of partition 'Linux' to 'Linux LVM' Command (m for help): p Disk /dev/sdf: 10.7 GB, 10737418240 bytes, 20971520 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes/512 bytes I/O size (minimum/optimal): 512 bytes/512 bytes Disk label type: dos Disk identifier: 0xabe92155 Device Boot Start End Blocks Id System /dev/sdf1 * 1 765 6144831 83 Linux /dev/sdf2 766 892 1020127+ 82 Linux swap/Solaris /dev/sdf3 391168 585727 97280 8e Linux LVM /dev/sdf4 585728 780287 97280 8e Linux LVM Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks.
创建分区时,请确保分区ID必须为8e。
2)创建物理量
现在我们有免费分区,我们需要使用上述分区创建物理卷。
创建物理量
# pvcreate /dev/sdf[3,4] Physical volume "/dev/sdf3" successfully created Physical volume "/dev/sdf4" successfully created
上面的命令将初始化分区为lvm分区。
这里LVM将仅将PV和UUID分配给分区。
3)创建卷组
现在我们创建了我们的物理卷,我们需要创建一个卷组。
如果我们已基于两个或者多个具有可用空间的磁盘/分区的VG,则无需创建一个新卷组
创建卷组
# vgcreate datavg /dev/sdf[3,4] Volume group "datavg" successfully created
上面的命令将创建卷组为Datavg。
LVM创建卷组描述符区域(VGDA)。
VGDA包含有关卷组的信息。
LVM在物理范围内创造(PE)。
4)创建镜像逻辑卷
在创建特定卷组中的镜像卷时,我们必须指定LVCreate命令的"-M"参数所需的数据副本数。
为了创建1个镜像数据,我们必须指定为"-m1"。
指定"-m1`创建一个镜像,它会产生两个文件系统的副本。
创建镜像LV.
# lvcreate -L 50M -m1 -n mirrorlv datavg Rounding up size to full physical extent 52.00 MB Logical volume "mirrorlv" created
在上面的命令中,我们创建了50MB的大小LV,其中包含了1个数据副本。
我们可以检查
# lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert root centos -wi-ao---- 17.47g swap centos -wi-ao---- 2.00g mirrorlv datavg rwi-a-r--- 50MB
我们可以使用"LVDisplay -V"命令查看镜像LV的状态。
只需搜索有关早期创建的逻辑卷的信息
# lvdisplay -v --- Logical volume -- LV Path /dev/datavg/mirrorlv LV Name mirrorlv1 VG Name datavg LV UUID J2kcdf-YxAn-k2d2-KFGS-pnhb-0Zhz-GRECFr LV Write Access read/write LV Creation host, time centos7-srv, 2016-05-08 03:17:28 +0100 LV Status available # open 0 LV Size 52.00 MiB Current LE 13 Mirrored volumes 2 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 8192 Block device 253:18
我们可以看到"镜像卷2"线,其中指示用于逻辑卷的磁盘数量,也可以扣除其他信息,该信息是逻辑卷的类型:镜像。
5)创建文件系统和安装
现在我们创建了逻辑卷,我们需要创建文件系统才能访问它
使用以下命令创建文件系统。
# mkfs:ext4 /dev/datavg/mirrorlv mke2fs 1.42.9 (28-Dec-2013) Filesystem label= OS type: Linux Block size=1024 (log=0) Fragment size=1024 (log=0) Stride=0 blocks, Stripe width=0 blocks 13328 inodes, 53248 blocks 2662 blocks (5.00%) reserved for the super user First data block=1 Maximum filesystem blocks=54525952 7 block groups 8192 blocks per group, 8192 fragments per group 1904 inodes per group Superblock backups stored on blocks: 8193, 24577, 40961 Allocating group tables: done Writing inode tables: done Writing superblocks and filesystem accounting information: done.
现在我们可以将文件系统安装到我们选择的位置。
用于安装文件系统的大多数常用方法是手动或者使用Mount命令或者通过在/etc/fstab
中添加条目,以便文件系统在启动时已安装。
将文件系统安装到/mnt/mirrorlv
的位置
# mount /dev/datavg/mirrorlv /mnt/mirrorlv
我们可以通过执行命令来验证。
df -Ph Filesystem Size Used Avail Use% Mounted on /dev/mapper/centos-root 18G 5.2G 13G 30% / devtmpfs 897M 0 897M 0% /dev tmpfs 912M 156K 912M 1% /dev/shm tmpfs 912M 9.1M 903M 1% /run tmpfs 912M 0 912M 0% /sys/fs/cgroup /dev/sda1 497M 189M 309M 38% /boot tmpfs 183M 8.0K 183M 1% /run/user/1000 /dev/mapper/datavg-mirrorlv 51M 842K 47M 2% /mnt/mirrorlv