Ceph块设备云硬盘测试过程
阅读原文时间:2021年04月26日阅读:1

注意,需要使用两种账户进行登录,使用configadmin创建存储池。然后使用sqhadmin创建云硬盘。

多副本存储池可以设置副本的个数,支持2-3

纠删码存储池好像只可以设置一个,错,纠删码也可以创建多个。

# rbd ls -p sqhecec

列举出sqhecec存储池上的云硬盘列表

基于多副本存储池创建云硬盘

存储池存在分级缓存关系的时候,无法删除存储池。

存储池已经被云硬盘使用的时候无法删除存储池。

缓存池只能单一用途的使用。

input number 能输入e,这个问题要解决,这是因为e表示2.71828

另外1e3,在c语言中表示1000。

如果纠删码存储池sqhec_nocache未关联缓存层的话,这样是不能再sqhec_nocache上面创建云硬盘的

云硬盘存在快照,是无法删除云硬盘的。

快照创建链接克隆的时候,必须得先锁定。

一份云硬盘的快照在锁定以后可以进行多份链接克隆。

# rbd snap list --imagesqhec/clone_643

列举出来sqhec存储池下的clone_643云硬盘的快照信息

为存储池创建的密钥文件内容为:

[client.rbd001]

Key=AQDLVIlzgBZXHBAA+76TDF+ofuVr75xN2hxTYw==

caps mds = "allow r"

caps mon = "allow r"

caps osd = "allow rwx pool = rbd001"

无法创建同名同池的密钥

无法创建同名不同池的密钥。就是在密钥列表中,密钥的名字唯一。

为同一个存储池可以创建不同名字的密钥,但密钥文件client.rbd001.keyring中的内容是一样的。也就是为同一个存储池创建不同名字的密钥,它们的名字可以不同,但内容相同。错,这是不对的,通过实践表明,不同的名字的密钥,里面的内容是不一样的。

客户端使用保存下来的密钥能够映射云硬盘池rbd001上的云硬盘,权限为读写。

  1. # cd ~
  2. 把从web端下载好的密钥文件client.rbdmix.keyring和配置文件ceph.conf拖到当前目录/home下
  3. # ls 查看已经有了这两个文件。
  4. # rbd map rbd002/qwewe --id rbdmix --keyring ./client.rbdminx.keyring -c ceph.conf 【注意:该命令的作用是把存储池中的云硬盘映射成为一个类似硬盘的设备,该命令执行后系统会回显所映射成功的设备名。】
  5. /dev/rbd0【注意:这就是云硬盘映射在本地上的设备名】
  6. # mkfs.xfs /dev/rbd0【注意:这个命令是因为映射成功的设备名必须先格式化成文件系统,这样我们才能够使用,因为未格式化的话,/dev/rbd0 is writing-protected, mounting read-only.因而我们先通过这个命令把设备/dev/rbd0格式化成xfs的文件系统】
  7. # mount /dev/rbd0 /home/sqh 【该命令是把格式化后的设备挂载到当前目录下的sqh目录。命令执行后,通过df可以查看挂载的结果】
  8. # df
  9. /dev/rbd0 12572672 33360 12539312 %1 /home/sqh
    【注意:这是df命令执行后,我们能够看到的一行信息,df显示所有的挂载信息,关注一下挂载的设备名,和挂载的目录。至此,我们就把云硬盘rbd002/qwewe 映射到了本地的目录/home/sqh了,我们cd到该目录下,就可以对云硬盘进行读写了。】
  10. # umount /home/sqh【该命令解挂在当前的目录】
  11. # rbd unmap /dev/rbd0【该命令解除把云硬盘映射成一个类似硬盘的设备。】
  12. # rbd showmapped【该命令可以显示存储池,云硬盘,已经所映射成的设备名称。】

在dos命令行输入mstsc可以访问别人的主机桌面。

在创建密钥时,如果是分配了缓存层的纠删码存储池,则在创建密钥时,要在选择存储层时即把云硬盘所在的存储层给选中,也要把所关联的缓存层选中。