文档章节

ceph常用命令-pool相关命令

泽_娟
 泽_娟
发布于 2017/06/05 19:41
字数 1093
阅读 77
收藏 0

1.1 查询系统中所有的pool

命令格式:

ceph osd lspools
或rados lspools

 

1.2      创建pool

(1)    指定pg数目、pgp数目等创建pool

命令格式:

ceph osd pool create <poolname>{pg-num}{pgp-num} {replicated|erasure} {<erasure_code_profile>} {<ruleset>}

命令含义:

 Pool分为replicated pool和erasure code pool,replicate pool以多副本的方式提供数据备份,EC pool使用纠删码方式提供数据安全

 创建erasure pool还可以指定erasure_code_profile,erasure_code_profile 使用命令osd erasure-code-profile set指定,erasure-code-profile参数含义:

    directory=<dir>         \ # plugin directory absolute path

    plugin=jerasure         \ # plugin name (only jerasure)

    k=<k>                   \ # data chunks (default 2)

    m=<m>                   \ # coding chunks (default 2)

    technique=<technique>   \ # coding technique

 Jerasure 是多种Erasure Coding算法的一个开源库采用C/C++实现活跃很高且使用广,technique可选项:reed_sol_van, reed_sol_r6_op, cauchy_orig, cauchy_good, liberation, blaum_roth and liber8tion.

    每个pg占用一定内存和CPU、且PG数目的增加会增加peer数目,因此每个pool配置的PG数目有一定的限制,否则会影响整个集群的性能,每个pool大概需要的PG数目为:

                  (OSDs * 100)

Total PGs =  ------------

                 OSD per object

OSD per object对于replicated pool来说为副本数,对于EC pool来说是k+m

(2) 指定uid创建pool

命令格式:

mkpool <pool-name> [123[ 4]]

  命令含义:

创建pool,其拥有者uid为123,crush rule为4

 

1.3 修改pool参数

命令格式:

ceph osd pool set {pool-name} {key} {value}

命令含义:

Key值含义:

Size:pool副本数

min_size:pool最小副本数,当pool中object副本数小于min_size, object将停止接收I/O

crash_replay_interval: PG修复期间,运行客户端重放请求而不提交时间间隔(单位s,默认45s)

pgp_num:使用pgp_num计算pg id

crush_ruleset:pool使用的crush rule_id,ceph osd crush rule dump可查询所有配置的策略

auid:设置pool归属用户id

hit_set_type: cache命中跟踪类型设置,默认为bloom,其他的类型包括explicit_hash、explicit_object

hit_set_period:

hit_set_count:

hit_set_ fpp:bloom误检率

cache_target_dirty_ratio:默认.4,当cache脏数据到达40%,将脏数据刷到后端pool中

cache_target_full_ratio:默认.8,d当cache中数据量到达80%,将cache中冷数据删除

target_max_bytes:cache pool最大容量

target_max_objects:cache pool最大存储的object数目

cache_min_flush_age: object刷到后端pool的最小年龄,单位为s

cache_min_evict_age:object从cache中删除的最小年龄,单位为s

 

1.4 查询pool参数

命令格式:

osd pool get <poolname> size|min_size| crash_replay_interval|pg_num|pgp_num| crush_ruleset| 

hit_set_type|hit_set_period|hit_set_count|hit_set_fpp|auid|target_max_objects|target_max_bytes|    

cache_target_dirty_ratio|cache_target_full_ratio|cache_min_flush_age|cache_min_evict_age|erasure_code_profile

或者使用ceph osd dump |grep pool显示所有pool的参数

 

1.5 删除pool

命令格式:

ceph osd pool delete {pool-name} [{pool-name} \ [-yes-i-really-really-mean-it]

或

rados rmpool <pool-name> [<pool-name> --yes-i-really-really-mean-it]

命令含义:

删除pool,当pool有数据或者配置了用户等信息,需要将这些信息手动删除掉,否则强制删除后这些信息还会在

 

1.6 重命名pool

命令格式:

ceph osd pool rename {current-pool-name} {new-pool-name}

 

1.7 查询pool配额

命令格式

ceph osd pool get-quota <poolname>

命令含义:

查询pool容量和最大object数目

 

1.8 设置pool配额

命令格式

ceph osd pool set-quota <poolname> max_objects|max_bytes <val>

命令含义:

设置pool容量和最大object数目

  

1.9 查询pool属性

命令格式:

ceph osd pool stats {<poolname>}

 

1.10 创建pool快照

命令格式:

ceph osd pool mksnap <poolname> <snapname>

该命令等同于:
rados mksnap <snapname> -p <poolname>

命令含义: 对pool中所有的object做快照

 

1.11 查询pool快照

命令格式:

rados lssnap –p <poolname>

命令含义:

查询pool快照

 

1.12 pool快照回滚

命令格式:

rados rollback <obj-name> <snap-name>  -p < poolname >

命令含义:目前只能针对pool中某个object进行回滚,不能整个pool回滚,我们可以考虑自己实现下?

 

1.13 cache pool配置和删除

(1) 将一个pool配置为另外一个pool cache命令:

ceph osd tier add <poolname> <cachepoolname>

或

osd tier add-cache <poolname> <cachepoolname> [cachepoolname size

(2) 设置cache pool模式:

ceph osd pool set <cachepoolname> cache-mode <val>

<val>一共有4个:

‘none’, ‘writeback’, ‘forward’, and ‘readonly’

 ‘writeback’和‘readonly’见2.3节

  ‘forward’将cache pool关闭之前,需要将cache pool模式改为’ forward’,不接收客户端的IO后,才将cache pool数据刷到后端pool

(3) 如果将cache pool工作模式设置为writeback‘,需要执行下面命令

Cache pool才能工作,目的将I/O映射到cache pool中

ceph osd tier set-overlay <poolname> <cachepoolname>

(4)将cache pool数据刷到后端pool

rados -p {cachepool} cache-flush-evict-all

(5)解除cache pool和后端pool对应关系

ceph osd tier remove-overlay <cachepoolname>

ceph osd tier remove <poolname> <cachepoolname>

 

© 著作权归作者所有

共有 人打赏支持
泽_娟
粉丝 0
博文 25
码字总数 9857
作品 0
长沙
架构设计:系统存储(29)——分布式文件系统Ceph(管理)

3-3. Ceph常用命令 Ceph文件系统提供的运维命令主要是按照Ceph中的工作角色/工作职责进行划分的,例如有一套专门对OSD节点进行管理的命令、有一套专门对PG进行管理的命令、有一套专门对MDS角...

yinwenjie
2017/04/22
0
0
Ceph Block Device块设备操作

使用ceph block device需要如下三个步骤: 1. 在ceph 集群的pool中创建一个Block Device image. 2. ceph Client使用RBD设备与ceph集群的Block Device image进行映射(Map)。 3. ceph Client...

dhb_oschina
2016/03/31
468
0
架构设计:系统存储(27)——分布式文件系统Ceph(安装)

1. 概述 从本篇文章开始介绍一款现在非常火的分布式文件系统Ceph,包括这款文件系统的安装、基本使用场景、常用管理命令和重要工作原理。特别是讨论了PaxOS算法的基本理后,就更容易理解Cep...

yinwenjie
2017/04/05
0
0
开源实践分享:Ceph bluestore部署实践

Ceph bluestore部署 首先为大家分享Ceph bluestore具体该如何部署,使用环境如下 • 单节点 • CentOS 7.4 • 使用 ceph-deploy 进行部署 准备 centos 7.4 系统的机器,并配置好 ssh 的无密码...

OpenInfra
05/24
0
0
基于centos6.7的Ceph分布式文件系统安装指南

转载自 http://blog.csdn.net/yhao2014/article/details/51394815?locationNum=4&fps=1 centos6.8成功部署,感谢原作者,文章简洁明了,非常适合新手学习部署。 本文修改了一些失效的下载链接...

linux_wei
2017/02/20
0
0

没有更多内容

加载失败,请刷新页面

加载更多

等语句含义

经常会看到某些网站的框架中会用到 <!--[if IE7]><![endif]--> 等语句,今天特意查阅了下它们的区别: <!--[if IE]>所有的IE可识别<![end if]--><!--[if !IE]>除IE外都能识别<![end if]-->......

度_
14分钟前
0
0
资源的有限性与任务的复杂性之间的矛盾

看了一篇文章How to Manage Connections Efficiently in Postgres, or Any Database, 文章讨论了如何管理Postgres数据库连接,列举了几种方式: 每个请求一个连接 连接复用 连接池 连接池管理...

52iSilence7
15分钟前
1
0
Python PEP8规范整理

PEP8规范总结 PEP8 是什么呢,简单说就是一种编码规范,是为了让代码“更好看”,更容易被阅读。 具体有这些规范,参考 PEP 8 --Style Guide for Python Code.当然也可以使用Pycharm检查或使...

_Change_
26分钟前
0
0
input去空格

货币转换while True:MonStr = input()if MonStr[:3] == "RMB":USD = eval(MonStr[3:])/6.78print("USD{:.2f}".format(USD))elif MonStr[:3] == "USD":RMB = eval(MonStr[3:......

fadsaa
29分钟前
0
0
单例设计模式

单例设计模式 设计模式介绍与代码编写 在编写程序时经常会遇到一些典型的问题或需要完成某种特定需求.设计模式就是针对这些问题和需求.在大量的实践中总结和理论化之后的代码结构.编程风格以...

码农屌丝
31分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部