Stratis

目标

  使用stratis管理分层存储

实际操作

  • 环境准备
##安装stratis软件包
[root@sinfotek yum.repos.d]# yum -y install stratisd stratis-cli
##启动stratisd服务
[root@sinfotek yum.repos.d]# systemctl start stratisd
  • 擦除磁盘分区表
[root@sinfotek ~]# dd if=/dev/zero of=/dev/sdb bs=1k count=1
记录了1+0 的读入
记录了1+0 的写出
1024 bytes (1.0 kB, 1.0 KiB) copied, 0.00043999 s, 2.3 MB/s
[root@sinfotek ~]# wipefs /dev/sdb
DEVICE OFFSET      TYPE UUID LABEL
sdb    0x4fffffe00 gpt       
[root@sinfotek ~]# wipefs -a /dev/sdb
/dev/sdb:8 个字节已擦除,位置偏移为 0x4fffffe00 (gpt):45 46 49 20 50 41 52 54
/dev/sdb:将调用 ioctl 来重新读分区表:成功
[root@sinfotek ~]# wipefs /dev/sdb
  • 创建存储池
[root@sinfotek ~]# stratis pool create datapool /dev/sdb
[root@sinfotek ~]# stratis pool list
Name                       Total Physical   Properties                                   UUID
datapool   20 GiB / 37.64 MiB / 19.96 GiB      ~Ca,~Cr   0f89b420-52d3-4dd6-a2fb-95c6010964d5

[root@sinfotek ~]# stratis fs create datapool database
[root@sinfotek ~]# stratis pool list
Name                        Total Physical   Properties                                   UUID
datapool   20 GiB / 583.66 MiB / 19.43 GiB      ~Ca,~Cr   0f89b420-52d3-4dd6-a2fb-95c6010964d5
[root@sinfotek ~]# blkid
/dev/sda1: UUID="81bcf28c-3d4d-4ffb-8e3b-fd3646c2b246" TYPE="ext4" PARTUUID="28edffc0-01"
/dev/sda2: UUID="1KPDxP-719R-RvtD-hdbu-R4LF-dBdF-EqdzVr" TYPE="LVM2_member" PARTUUID="28edffc0-02"
/dev/sr0: UUID="2020-06-08-22-08-25-00" LABEL="CentOS-8-2-2004-x86_64-dvd" TYPE="iso9660" PTUUID="545ce9a4" PTTYPE="dos"
/dev/sdb: UUID="05b8bd63993147da853b35e547d27221" POOL_UUID="0f89b42052d34dd6a2fb95c6010964d5" BLOCKDEV_SECTORS="41943040" BLOCKDEV_INITTIME="1668060036" TYPE="stratis"
/dev/mapper/cl-root: UUID="ba0f7820-2f56-45e2-9f4c-b531d0cb51dc" TYPE="xfs"
/dev/mapper/cl-swap: UUID="676497a8-09b3-4f7e-9d5d-55e32efe165a" TYPE="swap"
/dev/mapper/stratis-1-0f89b42052d34dd6a2fb95c6010964d5-thin-fs-110e9dc0080349e2af0efc47f8ba7669: UUID="110e9dc0-0803-49e2-af0e-fc47f8ba7669" TYPE="xfs"
[root@sinfotek ~]# stratis fs list
Pool Name   Name       Used      Created             Device                           UUID                                
datapool    database   546 MiB   Nov 10 2022 14:17   /dev/stratis/datapool/database   110e9dc0-0803-49e2-af0e-fc47f8ba7669
  • 挂在创建的存储块
[root@sinfotek ~]# blkid /dev/stratis/datapool/database
/dev/stratis/datapool/database: UUID="110e9dc0-0803-49e2-af0e-fc47f8ba7669" TYPE="xfs"
[root@sinfotek ~]# mkdir /database
[root@sinfotek ~]# mount /dev/stratis/datapool/database /database
[root@sinfotek ~]# df -h
文件系统                                                                                         容量  已用  可用 已用% 挂载点
devtmpfs                                                                                         1.9G     0  1.9G    0% /dev
tmpfs                                                                                            1.9G     0  1.9G    0% /dev/shm
tmpfs                                                                                            1.9G  9.4M  1.9G    1% /run
tmpfs                                                                                            1.9G     0  1.9G    0% /sys/fs/cgroup
/dev/mapper/cl-root                                                                               17G  4.7G   13G   28% /
/dev/sda1                                                                                        976M  193M  716M   22% /boot
tmpfs                                                                                            1.0M     0  1.0M    0% /run/stratisd/keyfiles
tmpfs                                                                                            376M  4.0K  376M    1% /run/user/0
/dev/mapper/stratis-1-0f89b42052d34dd6a2fb95c6010964d5-thin-fs-110e9dc0080349e2af0efc47f8ba7669  1.0T  7.2G 1017G    1% /database

##配置自动挂载需要指定其检测顺序,在stratisd服务启动后才能进行检测该服务提供的磁盘
[root@sinfotek database]# vim /etc/fstab 
UUID=110e9dc0-0803-49e2-af0e-fc47f8ba7669       /database       xfs     x-systemd.requires=stratisd.service     0 0
  • 创建磁盘快照
[root@sinfotek database]# stratis fs snapshot datapool database db-snapshot
##语法:stratis fs snapshot 存储池名称 存储块名称 快照名称
[root@sinfotek database]# stratis pool list
Name                      Total Physical   Properties                                   UUID
datapool   20 GiB / 2.10 GiB / 17.90 GiB      ~Ca,~Cr   0f89b420-52d3-4dd6-a2fb-95c6010964d5
[root@sinfotek database]# stratis fs list
Pool Name   Name          Used       Created             Device                              UUID                                
datapool    database      1.53 GiB   Nov 10 2022 14:17   /dev/stratis/datapool/database      110e9dc0-0803-49e2-af0e-fc47f8ba7669
datapool    db-snapshot   1.53 GiB   Nov 10 2022 16:30   /dev/stratis/datapool/db-snapshot   230c4ea4-20cd-4f9a-bc29-96965fd09106
##制作快照可以进行数据丢失时的恢复
  • 删除存储池中的存储块并恢复数据
[root@sinfotek ~]# umount /database
[root@sinfotek ~]# stratis fs destroy datapool database 
[root@sinfotek ~]# stratis fs list
Pool Name   Name          Used       Created             Device                              UUID                                
datapool    db-snapshot   1.53 GiB   Nov 10 2022 16:30   /dev/stratis/datapool/db-snapshot   230c4ea4-20cd-4f9a-bc29-96965fd09106
[root@sinfotek ~]# mount /dev/stratis/datapool/db-snapshot /database
[root@sinfotek ~]# cd /database/
[root@sinfotek database]# ls
Centos-8.repo
文档更新时间: 2022-11-10 16:36   作者:xiubao yan