在ceph上操作存储池无非就是查看,列表,创建,重命名,删除。常用的相关工具是“ceph osd pool”的子命令,如lscreaterenamerm。
1.创建存储池
副本存储池创建命令格式
擦除代码池存储池创建命令格式
示例:创建副本池
示例:创建擦除代码池
2.获取存储池的相关信息。
列出存储池:CEPH OSD池
Prompt:后跟detail表示列出存储池的详细信息;
获取存储池的统计信息:ceph osd池统计信息
提示:不指定存储池名称意味着查看所有存储池的统计信息;
显示的存储池使用信息:rados df或ceph df
提示:rados df和ceph df显示略有不同,rados信息全面但在底部;Cephedf对人类来说很容易理解;
3.重命名存储池
命令格式:ceph OSD池重命名旧名称新名称
4.删除存储池
我们知道删除存储池意味着数据丢失;所以ceph实现了两个机制,防止我们不小心删除了存储池;要删除存储池,必须先禁用这两种机制;
提示:删除前将其值设置为true,然后将其更改为false删除后;
删除重复池存储池
提示:虽然我们采用了上述两种机制来防止意外删除存储池,但是在直接删除存储池ceph时,我们也会提示需要写两遍存储池的名称,并添加-yes-i-really-really-mean-it选项来确定删除存储池的操作;
提示:删除要删除的存储池后,我们需要将mon allow pool delete的值修改为false,以防止以后存储池被误删除;
5.设置存储池配额
6.配置存储池参数。
存储池的很多配置属性都保存在配置参数中,以获取配置:ceph OSD pool get设置:ceph OSD池集;
存储池的常用可配置参数
Size:存储池中对象副本的数量;
min _ size:I/O所需的最小副本数;
PG_num:存储池中PG的数量;
Pgp_num:计算数据归位时要使用的PGs的有效数量;
7.存储池快照
关于存储池快照
?存储池是指整个存储池的状态快照;
?存储池快照可以保留存储池状态的历史;
?创建存储池快照可能需要大量存储空间,具体取决于存储池的大小;
创建存储池快照的命令格式:ceph osd pool mksnap或rados -p mksnap
列出的存储池的快照命令的格式:rados -p lssnap
删除存储池快照的命令格式:ceph osd pool rmsnap或rados -p rmsnap
提示:未使用的快照建议及时清除;
8.存储池数据压缩
其他可用的压缩参数
提示:压缩的最小体积和最大体积以字节为单位;
全局压缩选项
压缩属性可以在ceph配置文件中设置,该属性将对所有存储池生效;可以设置的相关参数如下
9.擦除代码池配置文件
自定义擦除代码配置文件
?-crush-device-class:设备类别,如hdd或ssd,默认为none,即忽略类别;
?- force: force用相同的名称覆盖现有的配置文件;
例如,如果所需架构必须承受两个OSD的损失,存储开销为30%;
擦除代码插件
Ceph支持在插件中加载擦除编码插件,存储管理员可以根据存储场景的需求优化选择合适的插件。目前,Ceph支持的插件包括以下三种:
?Reed_sol_van:最灵活的编码技术,管理员只需要提供k和m参数;
3.isa:只支持运行在intel CPU上的纠删码插件,支持reed_sol_van和cauchy技术;
发表评论