Proxmox VE逻辑卷管理LVM详解(4-4)

4.4. 使用lvcreate创建逻辑卷

卷组是LVM架构中的核心,类似于非LVM系统中的磁盘分区,逻辑卷是我们最终所使用的对象,在卷组中创建逻辑卷,用到的命令是lvcreate。事实上,LVM有两种模式,分别为非Thin模式和Thin模式,在非Thin模式下,命令基本格式如下:

lvcreate -L 容量大小 -n 逻辑卷名 卷组名

在Thin模式下,命令基本格式如下:

lvcreate --thin -L 容量大小 -n 逻辑卷名 卷组名

根据图1所示,我们要在lisq卷组中创建Thin模式的逻辑卷,并挂载在LVM-Thin存储点上。在创建逻辑卷之前,我们必须知道lisq卷组的空间大小,可以通过命令“vgs”来查看到lisq卷组空间大小是90GB。

root@pve:~# vgs
  VG   #PV #LV #SN Attr   VSize    VFree   
  cdy    2   0   0 wz--n- <106.86g <106.86g
  lisq   2   0   0 wz--n-   93.12g   93.12g
  lixs   1   0   0 wz--n- <100.00g <100.00g
  pve    1   7   0 wz--n-  <39.50g   <4.88g

在创建逻辑卷之前,我们要做好逻辑卷名称以及空间大小的规划。根据图1所示,我们要从lisq卷组中创建名称为“mydata”且容量为90GB的LVM-Thin逻辑卷,从lixs卷组中创建名称为“mydir”且容量为95GB的LVM逻辑卷,cdy卷组中不创建逻辑卷。
r

oot@pve:~# lvcreate --thin -L 90G -n mydata lisq           # 创建LVM-Thin模式逻辑卷
  Thin pool volume with chunk size 64.00 KiB can address at most 15.81 TiB of data.
  Logical volume "mydata" created.
root@pve:~# lvcreate -L 95G -n mydir lixs                   # 创建LVM模式逻辑卷
  Logical volume "mydir" created. 

逻辑卷创建完成之后,我们可以通过“lvs”命令查看,还可以通过“lvdisplay”命令查看逻辑卷的详细信息。

root@pve:~# lvs
  LV            VG   Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  mydata        lisq twi-a-tz-- 90.00g             0.00   10.42  # LVM-Thin模式逻辑卷空间大小                     
  mydir         lixs -wi-a----- 95.00g                           # LVM模式逻辑卷空间大小                           
  data          pve  twi-aotz-- 18.87g             0.00   1.58                            
  root          pve  -wi-ao----  9.75g                                                    
  swap          pve  -wi-ao----  4.00g                                                    
  vm-100-disk-0 pve  Vwi-a-tz-- 32.00g data        0.00                                   
  vm-100-disk-1 pve  Vwi-a-tz-- 32.00g data        0.00                                   
  vm-101-disk-0 pve  Vwi-a-tz-- 32.00g data        0.00                                   
  vm-101-disk-1 pve  Vwi-a-tz-- 32.00g data        0.00  
root@pve:~# lvdisplay 
  --- Logical volume ---
  LV Path                /dev/lixs/mydir                   # LVM逻辑卷mydir文件路径
  LV Name                mydir                             # LVM逻辑卷名称:mydir
  VG Name                lixs                              # 卷组名称:lixs
  LV UUID                bIaKsE-7ezS-rrTS-epe0-yvqB-AzZl-7J4nCM
  LV Write Access        read/write
  LV Creation host, time pve, 2021-09-30 23:14:01 +0800
  LV Status              available
  # open                 0
  LV Size                95.00 GiB                         # LVM逻辑卷mydir空间大小
  Current LE             24320
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:13
   
  --- Logical volume ---
  LV Name                mydata                           # LVM-Thin逻辑卷mydata文件路径
  VG Name                lisq                             # 卷组名称:lixs
  LV UUID                wHEz7Q-U7bF-Dota-JXm3-vwor-cPoa-XZRnjL
  LV Write Access        read/write
  LV Creation host, time pve, 2021-09-30 23:13:09 +0800
  LV Pool metadata       mydata_tmeta             # 元数据池,用于存放管理和检索虚拟机的数据
  LV Pool data           mydata_tdata             # 数据池,用于存放虚拟机磁盘
  LV Status              available
  # open                 0
  LV Size                90.00 GiB                # LVM-Thin逻辑卷mydata空间大小
  Allocated pool data    0.00%
  Allocated metadata     10.42%
  Current LE             23040
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:12

注意,mydir逻辑卷是LVM模式的,是一个文件设备,设备名称为“/dev/lixs/mydir”。而mydata逻辑卷是LVM-Thin模式,是一个LV Pool,一旦在mydata创建虚拟机磁盘,则“/dev/lisq/mydata”自动被删取而代之的是虚拟机磁盘逻辑卷,具体请参考关于“data逻辑卷章节”。

root@pve:~# ls /dev/lixs
mydir
root@pve:~# ls /dev/lisq
mydata

我们在第三方WEB UI监控界面上,可以看到我们所创建的LVM-Thin mydata逻辑卷、LVM mydir逻辑卷,如图47所示。

在这里插入图片描述

图47. 新创建的逻辑卷

我们也可以通过“lsblk -f”命令行CLI来查看更详细的逻辑卷信息:

root@pve:~# lsblk -f
NAME                         FSTYPE      FSVER    LABEL UUID                                   FSAVAIL FSUSE% MOUNTPOINT
sda                                                                                                           
├─sda1                                                                                                        
├─sda2                       vfat        FAT32          F92A-97E4                                             
└─sda3                       LVM2_member LVM2 001       Ny0mtE-hiIR-IVRB-33aA-dKZe-uKyL-gtbWkM                
  ├─pve-swap                 swap        1              d971d023-1e21-4db4-b083-35581f2fc965                  [SWAP]
  ├─pve-root                 ext4        1.0            9cbd71dd-b8a4-473e-a503-48c8c0c0928b      3.2G    61% /
  ├─pve-data_tmeta                                                                                            
  │ └─pve-data-tpool                                                                                          
  │   ├─pve-data                                                                                              
  │   ├─pve-vm--100--disk--0                                                                                  
  │   ├─pve-vm--100--disk--1                                                                                  
  │   ├─pve-vm--101--disk--0                                                                                  
  │   └─pve-vm--101--disk--1                                                                                  
  └─pve-data_tdata                                                                                            
    └─pve-data-tpool                                                                                          
      ├─pve-data                                                                                              
      ├─pve-vm--100--disk--0                                                                                  
      ├─pve-vm--100--disk--1                                                                                  
      ├─pve-vm--101--disk--0                                                                                  
      └─pve-vm--101--disk--1                                                                                  
sdb                                                                                                           
├─sdb1                       LVM2_member LVM2 001       G4QEvl-FLjA-HLOy-47ue-pWRx-yZN0-b6NFaL                
│ ├─lisq-mydata_tmeta              # LVM-Thin逻辑卷mydata的元数据池                                                                                 
│ │ └─lisq-mydata                                                                                             
│ └─lisq-mydata_tdata              # LVM-Thin逻辑卷mydata的数据池                                                                           
│   └─lisq-mydata                                                                                             
└─sdb2                       LVM2_member LVM2 001       9mWUj0-lteJ-LDGj-V1cd-CHi4-jix4-vt0yGl                
sdc                                                                                                           
├─sdc1                       LVM2_member LVM2 001       N74Wl8-azXA-LxvN-eB5t-D33X-oosh-u30LSw                
│ └─lisq-mydata_tdata      # LVM-Thin逻辑卷mydata的数据池                                                                                 
│   └─lisq-mydata                                                                                             
└─sdc2                       LVM2_member LVM2 001       F3dAkc-a2vJ-s6dI-22KU-WBIh-qIVB-oc6Q37                
sdd                          LVM2_member LVM2 001       31G4SJ-B2J6-uSLL-1t20-VSTM-iIz3-dh0UNH                
└─lixs-mydir              # LVM逻辑卷mydir                                                                                    
sr0                          iso9660              PVE   2021-07-05-19-15-41-00                                

通过上面的讲解,我们现在应该知道mydata逻辑卷实际上和默认的data逻辑卷一样,是一个LVM-Thin模式逻辑卷,是一个精简池,我们到Proxmox VE 7.0界面中看一下这个精简池,如图48所示。

在这里插入图片描述

图48. LVM-Thin模式逻辑卷

接着我们到Proxmox VE 7.0界面中再来看一下卷组的使用率情况,通过这个卷组的使用率,给大家讲解一下这个界面的含义,如图49所示。

在这里插入图片描述

图49. 卷组的使用率

从图49中可以知道,cdy卷组目前的使用率为0%,也就是说到目前为止,我们并没有在卷组上创建逻辑卷(类似于磁盘分区)。lisq卷组目前的使用率为97%,也就是说到目前为止,我们在lisq卷组上创建了LVM-Thin模式逻辑卷mydata,这个mydata空间大小为90GB,占整个lisq逻辑卷空间的97%。lixs卷组目前的使用率为95%,也就是说到目前为止,我们在lixs卷组上创建了LVM模式逻辑卷mydir,这个mydir空间大小是95GB,占整个lixs逻辑卷空间的95%。

4.5. 使用mkfs创建文件系统(格式化逻辑卷)

逻辑卷创建完成之后,我们就可以像正常的磁盘分区一样使用逻辑卷了,但是在使用逻辑卷之前首先要将逻辑卷进行格式化。

所谓格式化逻辑卷,其实也就是在逻辑卷上创建文件系统,我们采用ext4文件系统来格式化逻辑卷,格式化操作如下:

root@pve:~# mkfs -t ext4 /dev/lixs/mydir          # mydir逻辑卷创建ext4文件系统
mke2fs 1.46.2 (28-Feb-2021)
Creating filesystem with 24903680 4k blocks and 6225920 inodes
Filesystem UUID: 1f5c23fe-eaf2-43b4-a274-43e9e12fc1ce
Superblock backups stored on blocks: 
	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
	4096000, 7962624, 11239424, 20480000, 23887872

Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (131072 blocks): done
Writing superblocks and filesystem accounting information: done   

注意,这里我只格式化了LVM模式的mydir逻辑卷,因为mydir逻辑卷要挂载到“目录”存储点上,而mydata需要挂载到“LVM-Thin”存储点上,cdy卷组需要挂载到“LVM”存储点上,这两者无需进行格式化,主要是在挂载到“LVM-Thin”和“LVM”存储点时,Proxmox VE 7.0会自动处理。也就是说,挂载到“目录”存储点上的LVM模式逻辑卷需要进行格式化并创建文件系统。

root@pve:~# lsblk -f
NAME                         FSTYPE      FSVER    LABEL UUID                                   FSAVAIL FSUSE% MOUNTPOINT
sda                                                                                                           
├─sda1                                                                                                        
├─sda2                       vfat        FAT32          F92A-97E4                                             
└─sda3                       LVM2_member LVM2 001       Ny0mtE-hiIR-IVRB-33aA-dKZe-uKyL-gtbWkM                
  ├─pve-swap                 swap        1              d971d023-1e21-4db4-b083-35581f2fc965                  [SWAP]
  ├─pve-root                 ext4        1.0            9cbd71dd-b8a4-473e-a503-48c8c0c0928b      3.2G    61% /
  ├─pve-data_tmeta                                                                                            
  │ └─pve-data-tpool                                                                                          
  │   ├─pve-data                                                                                              
  │   ├─pve-vm--100--disk--0                                                                                  
  │   ├─pve-vm--100--disk--1                                                                                  
  │   ├─pve-vm--101--disk--0                                                                                  
  │   └─pve-vm--101--disk--1                                                                                  
  └─pve-data_tdata                                                                                            
    └─pve-data-tpool                                                                                          
      ├─pve-data                                                                                              
      ├─pve-vm--100--disk--0                                                                                  
      ├─pve-vm--100--disk--1                                                                                  
      ├─pve-vm--101--disk--0                                                                                  
      └─pve-vm--101--disk--1                                                                                  
sdb                                                                                                           
├─sdb1                       LVM2_member LVM2 001       G4QEvl-FLjA-HLOy-47ue-pWRx-yZN0-b6NFaL                
│ ├─lisq-mydata_tmeta                                                                                         
│ │ └─lisq-mydata                                                                                             
│ └─lisq-mydata_tdata                                                                                         
│   └─lisq-mydata                                                                                             
└─sdb2                       LVM2_member LVM2 001       9mWUj0-lteJ-LDGj-V1cd-CHi4-jix4-vt0yGl                
sdc                                                                                                           
├─sdc1                       LVM2_member LVM2 001       N74Wl8-azXA-LxvN-eB5t-D33X-oosh-u30LSw                
│ └─lisq-mydata_tdata                                                                                         
│   └─lisq-mydata                                                                                             
└─sdc2                       LVM2_member LVM2 001       F3dAkc-a2vJ-s6dI-22KU-WBIh-qIVB-oc6Q37                
sdd                          LVM2_member LVM2 001       31G4SJ-B2J6-uSLL-1t20-VSTM-iIz3-dh0UNH                
└─lixs-mydir                 ext4        1.0            1f5c23fe-eaf2-43b4-a274-43e9e12fc1ce     # 创建了文件系统            
sr0                          iso9660              PVE   2021-07-05-19-15-41-00   

4.6. 挂载存储点

在Proxmox VE 7.0界面中,可以挂载多达12种类型的存储,LVM-Thin模式的mydata逻辑卷适合挂载到“LVM-Thin”存储点上,LVM模式的mydir逻辑卷适合挂载到“LVM”存储点上,cdy卷组适合挂载到“目录”存储点上,如图50所示。

在这里插入图片描述

图50. Proxmox VE界面的存储挂载点

在Proxmox VE 7.0中,逻辑卷有两种模式,分为LVM-Thin(Thin)模式和LVM(非Thin)模式,Proxmox VE 7.0中內建的local-lvm 的格式是 LVM-Thin。

LVM-Thin模式逻辑卷在使用上有好处,也有坏处:

  1. 好处,在创建虚拟机和容器时,具备快照功能,而且LVM-Thin可以超配磁盘空间;
  2. 坏处,只能存放虚拟机和容器文件,无法存放其他类型的文件;

LVM模式逻辑卷在使用上有好处,也有坏处:

  1. 好处,可以存放包括虚拟机和容器等多种文件类型(Proxmox VE限定LVM也只能存放虚拟机和容器文件);
  2. 坏处,虚拟机和容器没有快照功能,且LVM存储不能超配磁盘空间;

4.6.1. mydata逻辑卷挂载到LVM-Thin存储点

第一步:选择LVM-Thin挂载点

把LVM-Thin模式的mydata逻辑卷挂载到LVM-Thin存储点上,用于存放虚拟机磁盘和容器磁盘,首先我们先选择LVM-Thin挂载点,如图51所示。

在这里插入图片描述

图51. 选择LVM-Thin存储点

第二步:挂载LVM-Thin模式逻辑卷

在弹出的LVM-Thin界面中,填写LVM-Thin存储池名称、选择卷组以及精简池,如图52所示。

在这里插入图片描述

图52. 填写LVM-Thin配置

LVM-Thin存储池添加成功之后,我们会在Proxmox VE 7.0左侧导航树中出现“lisq-lvm-thin”存储标识,同时在有窗口也挂载上了lisq-lvm-thin存储池,如图53和图54所示。

在这里插入图片描述

图53. LVM-Thin存储池挂载成功

在这里插入图片描述

图54. LVM-Thin存储池信息

第三步:创建虚拟机检测使用情况

在创建虚拟机的界面中,存储池选择“lisq-lvm-thin”,从存储池 “lisq-lvm-thin”中切存储块来用作虚拟机磁盘,虚拟机磁盘可根据实际情况进行设置,如图55所示。

在这里插入图片描述

图55. LVM-Thin存储池信息

虚拟机创建成功,虚拟机磁盘存放在lisq-lvm-thin存储池中,且虚拟机可以正常启动,如图56所示。

在这里插入图片描述

图56. 虚拟机磁盘存放位置

4.6.2. cdy卷组挂载到LVM存储点

第一步:选择LVM挂载点

把cdy卷组卷挂载到LVM存储点上,用于存放虚拟机磁盘和容器磁盘,首先我们先选择LVM挂载点,如图57所示。

在这里插入图片描述

图57. 选择LVM存储点

第二步:挂载卷组

LVM存储点只能挂载卷组,在弹出的LVM界面中,填写LVM存储池名称、选择卷组以及精简池,如图58所示。

在这里插入图片描述

图58. 填写LVM挂载点配置

LVM存储池添加成功之后,我们会在Proxmox VE 7.0左侧导航树中出现“cdy”存储标识,同时在有窗口也挂载上了cdy存储池,如图59和图60所示。

在这里插入图片描述

图59. LVM存储池挂载成功

在这里插入图片描述

图60. LVM存储池配置信息

第三步:创建虚拟机检测使用情况

在创建虚拟机的界面中,存储池选择“cdy”,从存储池 “cdy”中切存储块来用作虚拟机磁盘,虚拟机磁盘可根据实际情况进行设置,如图61所示。

在这里插入图片描述

图61. 创建虚拟机vm103

虚拟机创建成功,虚拟机磁盘存放在cdy存储池中,且虚拟机可以正常启动,如图62所示。

在这里插入图片描述

图62. 虚拟机磁盘存放位置

虚拟机创建成功之后,我们在Proxmox VE 7.0界面中再来看一下cdy卷组的使用率情况,如图63所示。

在这里插入图片描述

图63. cdy卷组使用率

4.6.3. mydir逻辑卷挂载到目录存储点

第一步:在Proxmox VE后台创建挂载点

root@pve:~# mkdir /var/mydir         # 创建挂载点/var/mydir

第二步:修改/etc/fstab文件,实现永久挂载

root@pve:~# vim /etc/fstab
# <file system> <mount point> <type> <options> <dump> <pass>
/dev/pve/root / ext4 errors=remount-ro 0 1
/dev/pve/swap none swap sw 0 0
proc /proc proc defaults 0 0
/dev/lixs/mydir /var/mydir ext4 defaults 0  0       # 在最后添加这一句,永久挂载

root@pve:~# df -hT | grep -v tmpfs                # 查看挂载是否成功,有时候需要重启
Filesystem             Type      Size  Used Avail Use% Mounted on
/dev/mapper/pve-root   ext4      9.5G  5.9G  3.2G  65% /
/dev/mapper/lixs-mydir ext4       93G   24K   89G   1% /var/mydir  # 挂载成功
/dev/fuse              fuse      128M   20K  128M   1% /etc/pve

第三步:在Proxmox VE界面选择目录挂载点

把LVM模式的逻辑卷挂载到“目录”存储点上,用于存放虚拟机磁盘和容器磁盘,也可以存放其他格式的文档,首先我们先选择“目录”挂载点,如图64所示。

在这里插入图片描述

图64. 选择“目录”存储点

第四步:挂载LVM模式逻辑卷

“目录”存储点适合挂载LVM模式的逻辑卷,在弹出的LVM界面中,填写“目录”存储池名称、目录路径以及存储内容,如图65所示。

在这里插入图片描述

图65. 填写“目录”挂载点信息

“目录”存储池添加成功之后,我们会在Proxmox VE 7.0左侧导航树中出现“lixs-lvm”存储标识,同时在有窗口也挂载上了lixs-lvm存储池,如图66和图67所示。

在这里插入图片描述

图66. “目录”存储挂载成功

在这里插入图片描述

图67. “目录”存储池配置信息

第五步:创建虚拟机检测使用情况

在创建虚拟机的界面中,存储池选择“lixs-lvm”,从存储池 “lixs-lvm”中切存储块来用作虚拟机磁盘,虚拟机磁盘可根据实际情况进行设置,如图68所示。

在这里插入图片描述

图68. 创建虚拟机vm104

在这里插入图片描述

图69. 虚拟机磁盘存放位置

猜你喜欢

转载自blog.csdn.net/jianghu0755/article/details/129760672
今日推荐