Ceph集群管理之存储池

命令描述

rados是Ceph对象存储集群(RADOS)的工具集。利用该命令可以在RADOS集群上进行存储池的相关操作。具体包括存储池的创建删除,状态获取,快照的创建删除,对象数据的创建删除等。

命令摘要

       rados [ -m monaddr ] [ mkpool | rmpool foo ] [ -p | –pool

       pool ] [ -s | –snap snap ] [ -i infile ] [ -o outfile ]

       command …


命令详述

lspools

显示存储池列表。


df

显示存储池的统计信息,包含磁盘空间使用情况,对象数量和读写数据量等内容。

mkpool

创建一个存储池。

       mkpool foo

rmpool

删除一个存储池

       rmpool foo [ foo –yes-i-really-really-mean-it ]

get

存储对象操作接口,用于从存储获取某个对象的数据,并写入指定的文件。 格式如下:

get name outfile

      示例:

        rados –p zsn get name outfile

put

在存储池创建一个对象,并用指定的文件内容填充。命令格式如下:

put name infile

示例:

rados –p zsn put name infile

rm

 移除存储池中的某个对象,格式如下:

rm name

     示例:

          rados –p zsn rm name

ls

列出某个存储池中的对象,并将其写入指定的文件中,格式如下:

     ls outfile

示例:

lssnap

列出某个存储池中的快照列表。

clonedata

       clonedata srcname dstname –object-locator key

       Clone object byte data from srcname to dstname.  Both objects must be stored with the locator key key (usually either  srcname or dstname).  Object attributes and omap keys are not copied or cloned.

mksnap

创建一个特定名称的快照。

 mksnap foo

rmsnap foo

移除一个特定名称的快照。

     rmsnap foo

bench

进行若干时间的基准性能测试,具体格式如下:

bench seconds mode [ -b objsize ] [ -t threads ]

模式可以是write, seq, 或者rand。seq和rand是读基准测试,也即顺序读和随机读。

在进行读基准测试之前,首先需要使用选项–no-cleanup进行写基准的测试。默认的对象大小是4MB,默认模拟线程数量是16。

选项

-p pool, –pool pool

要操作的存储池对象,很多命令都需要该选项。

-s snap, –snap snap

从给定的存储池快照读取数据,该选项在快照读操作中都可以使用。

-i infile

定义输入文件。

-o outfile

定义输出文件。

-c ceph.conf, –conf=ceph.conf

使用给定的配置文件代替默认配置路径下(/etc/ceph)的配置文件,命令启动时用于确定monitor的地址。

-m monaddress[:port]

连接该参数指定的monitor地址,忽略配置文件中的地址。

示例

显示集群使用情况。

     rados df

获取存储池foo的对象列表。

     rados -p foo ls –

向存储池foo中写入一个对象。

     rados -p foo put myobject blah.txt

为存储池foo创建一个快照。

     rados -p foo mksnap mysnap

删除存储池foo中的一个对象。

     rados -p foo rm myobject

读取快照版本的对象的内容。

     rados -p foo -s mysnap get myobject blah.txt.old

如果引用本站的原创文章,请注明原文链接:,本站保留追究责任的权利!

发表评论