Linux的高级存储管理

linux的高级存储管理


实验环境

全新的虚拟机,并且添加一块全新的硬盘,并且要在虚拟机关闭的情况下添加全新的硬盘


一 逻辑卷

  • pv #物理卷 被处理过的物理分区
  • pe #物理扩展 设定存储最小单元
  • vg #物理卷组 捆绑pv到一个组中
  • lv #逻辑卷 分配最终的使用设备
  • 监控建立过程:
    watch -n 1 "pvs;echo ====;vgs;echo ====;df -h /weixindata"

【1】lvm设备建立

  • 首先进行设备分区
    Linux的高级存储管理

  • 建立物理分区并设定分区type为lvm
    pvcreate /dev/vda1 #创建pv
    vgcreate westosvg -s 2M /dev/vda1 #创建vg -s设定pe大小为200M
    lvcreate -L 200M -n westoslv westosvg #创建lvm -L指定大小 -n指定名称
    mkfs.xfs /dev/mapper/westosvg-westoslv #格式化
    mount /dev/westosvg/westoslv /weixindata/ #挂载
    Linux的高级存储管理* 对操作进行监控
    Linux的高级存储管理

【2】lvm拉伸

*xfs只支持拉伸不能进行缩减,ext4支持拉伸和缩减
缩减:需要卸载之后,才能进行缩减,先缩减系统,再缩减设备,缩减完成之后需要进行重新挂载
可以将xfs格式化成ext4,但是格式化时,里面的内容就会被清除
(1)当vg中的容量充足
首先需要拉伸设备,之后拉伸文件系统
lvextend -L 200M /dev/mapper/westosvg-westoslv #拉伸设备
xfs_growfs /指定挂载目录/ #拉伸文件系统
resize2fs /dev/mapper/westosvg-westoslv #当文件系统为ext时使用此命令

  • lvextend -L 200M /dev/mapper/westosvg-westoslv #拉伸设备
    Linux的高级存储管理

  • xfs_growfs /weixindata/ #拉伸文件系统,在rhel7中可以用设备或者挂载点,在rhel8中只能用挂载点
    Linux的高级存储管理

  • resize2fs /dev/mapper/westosvg-westoslv #当文件系统为ext时使用此命令

(2)不充足时
首先要拉伸vg组,再拉伸设备,之后拉伸文件系统系统

  • 划分分区

  • pvcreate /dev/设备名
    Linux的高级存储管理

  • vgextend westosvg /dev/设备名
    Linux的高级存储管理

  • lvextend -L 2500M /dev/westosvg/westoslv #指定扩展大小
    Linux的高级存储管理

  • xfs_growfs /指定挂载目录/ #拉伸文件系统
    Linux的高级存储管理Linux的高级存储管理

【3】lvm的快照

cd /westos (在LVM设备挂载状态下切换)
ls
touch file{1…5}
ls
[root@localhost westos]# cd
[root@localhost ~]# lvcreate -L 50M -n westoslv-bak -s /dev/westosvg/westoslv
[root@localhost ~]# mount /dev/westosvg/westoslv-bak /westos
[root@localhost ~]# cd /westos
[root@localhost westos]# ls
[root@localhost westos]# rm -rf *
[root@localhost westos]# ls
[root@localhost westos]# cd
[root@localhost ~]# umount /westos
[root@localhost ~]# lvremove /dev/westosvg/westoslv-bak
[root@localhost ~]# lvcreate -L 50M -n westoslv-bak -s /dev/westosvg/westoslv
[root@localhost ~]# mount /dev/westosvg/westoslv-bak /westos/
[root@localhost ~]# cd /westos
[root@localhost westos]# ls
file

Linux的高级存储管理Linux的高级存储管理

【3】LVM设备的缩减

  • mkfs.ext4 /dev/westosvg/westoslv #xfs文件系统不支持缩减ext文件系统可以,因此需要先将其文件系统格式化为ext4格式
  • resize2fs /dev/mapper/westosvg-westoslv #ext4文件系统拉伸
    缩减步骤:
  • umount /指定挂载目录 #卸载
  • e2fsck -f /dev/westosvg/westoslv #扫描文件
  • resize2fs /dev/westosvg/westoslv 1500M #文件系统拉伸
  • lvreduce -L 1500M /dev/westosvg/westoslv #LV缩减
  • mount /dev/westosvg/westoslv /指定挂载目录/ #挂载
  • vgreduce westosvg /dev/设备名 #vg缩减

【4】lvm设备的删除

  • lvremove /dev/westos_vg/westos_lv0_backup #删除lvremove
  • vgremove westos_vg #删除vgremove
  • pvremove /dev/vdb2 #删除pv
    Linux的高级存储管理Linux的高级存储管理

二 Vdo

(虚拟数据优化器)

【1】vdo设备的建立

  • vdo create --name=vdo设备名 --device=/dev/设备名(硬盘)
  • vdo status --name=vdo设备名 | less
  • Deduplication: enabled #vdo检测并删除重复数据的功能时开启的
  • Compression: enabled #vdo数据压缩功能开启
    Linux的高级存储管理Linux的高级存储管理

【2】vdo设备的使用

  • mkfs.xfs -K /dev/mapper/vdo设备名 #格式化vdo设备的文件系统为xfs
  • mkdir /指定目录 #创建一个目录用于挂载vdo设备
  • mount /dev/mapper/vdo设备名 /指定目录 #挂载vdo设备到指定目录

【3】vdo设备的测试

  • (1)vdostats --human-readable %查看vdo设备信息如下所示
    Device Size Used Available Use% Space saving%
    /dev/mapper/vdo设备名 20.0G 4.0G 16.0G 20% 98%

  • (2)多次复制同一文件到vdo设备中,发现从第二次往后复制时间明显缩短,并且vdo设备中的所占内存基本不增加

  • cp /xxxx /xxxx /xxxx /vdo设备名/

  • vdostats --human-readable
    Device Size Used Available Use% Space saving%
    /dev/mapper/vdo设备名 20.0G 4.4G 15.6G 22% 2%

  • cp /xxxx /xxxx /xxxx /vdo设备名/

  • vdostats --human-readable
    Device Size Used Available Use% Space saving%
    /dev/mapper/vdo设备名 20.0G 4.5G 15.5G 22% 50
    Linux的高级存储管理Linux的高级存储管理

【4】vdo设备的删除

  • vdo remove --name=vdo设备名 #删除vdo设备

Linux的高级存储管理

上一篇:封装虚拟机


下一篇:linux企业运维LAMP架构----3.nginx配置管理(并发优化 负载均衡+反向代理 平滑升级 算法扩展 限流 配置管理 重定向 防盗链)