如何快速创建多个块设备?

以下示例中假设建立的RBD存储池"vdbench"中,需要创建30个块设备,每个块设备大小为200GB。

  1. 创建脚本,在RBD存储池中创建30个块设备,每个块设备大小为200GB。
    1
    vi create_image.sh
    

    添加以下内容:

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    #!/bin/bash
    pool="vdbench"
    size="204800"
    
    createimages()
    {
    for image in {1..30}
    do
    rbd create image${image} --size ${size} --pool ${pool} --image-format 2 --image-feature layering
    sleep 1
    done
    }
    createimages
    
  2. 按“Esc”键退出编辑模式,输入:wq!,按“Enter”键保存并退出文件。
  3. 执行脚本。
    1
    bash create_image.sh
    
    rbd create image用来进行image的设置,命令中:
    • ${image}表示image的序号。
    • --pool选项后面是指定的存储池。
    • --image-format选项后面是表示镜像格式,其中format 1已经弃用,format 2支持克隆,并在未来可以支持更多特性。
    • --image-feature选项后面是指定--image-format的特性启用或者禁用。
    • 常用命令:
      1
      2
      3
      4
      5
      # 列出名字为vdbench的存储池中的镜像
      rbd ls --pool vdbench
      
      # 删除名字为vdbench的存储池中的名字为image2的镜像
      rbd rm vdbench/image2
      

    更多关于rbd的命令操作,可以查阅Ceph开源社区中关于rbd命令的说明。