ceph存储 ceph集群配置参数二
2014-12-18 08:43
501 查看
6、KEYVALUESTORE CONFIG REFERENCE
http://ceph.com/docs/master/rados/configuration/keyvaluestore-config-ref/
KeyValueStore is an alternative OSD backend compared to FileStore. Currently, it uses LevelDB as backend. KeyValueStore doesn’t need journal device. Each operation will
flush into the backend directly.
KeyValueStore所用的后端(leveldb):keyvaluestore backend
(1)队列
队列上可以存储的最大操作数:keyvaluestore queue max ops
队列上可以存储的最大btye数:keyvaluestore queue max bytes
(2)线程
并行线程数:keyvaluestore op threads
文件操作线程超时秒数:keyvaluestore op thread timeout
提交一个操作多少秒都可以取消:keyvaluestore op thread suicide timeout
(3)MISC
条带大小:keyvaluestore default strip size
注:每个对象会分割成多个键值对存储在后端
header cache大小:keyvaluestore header cache size
注:存的东西和文件系统中的inode差不多
7、OSD CONFIG REFERENCE
http://ceph.com/docs/master/rados/configuration/osd-config-ref/
(1)通用设置
OSD的UUID:osd uuid
注:一个uuid作用于一个OSD Daemon,一个fsid作用于整个cluster,这两个不一样
OSD数据存储的路径:osd data
注:实际底层设备挂载的地方e.g. /var/lib/ceph/osd/$cluster-$id
一次写入最大的MB数(默认90):osd max write size
在内存中允许存储的最大客户端数据信息(默认500MB):osd client message size cap
RADOS class插件地址($libdir/rados-classes):osd class dir
(2)文件系统设置
生成文件系统的类型:osd mkfs options {fs-type}
注:对XFS默认-f -i 2048,其他类型无默认,e.g. osd mkfs options xfs = -f -d agcount=24
挂载选项:osd mount options
{fs-type}
注:对XFS默认rw,noatime,inode64,其他类型rw, noatime,e.g.
osd mount options xfs = rw, noatime, inode64, nobarrier, logbufs=8 其中noatime表示取消读文件时记录最后一次读取的时间(access time),节省时间,inode64表示inode数有64位(近乎无限制)现在的很多文件系统会在数据提交时强制底层设备刷新cache,避免数据丢失,称为write barriers。但是,其实我们数据库服务器底层存储设备要么采用RAID卡,RAID卡本身的电池可以掉电保护;要么采用Flash卡,它也有自我保
护机制,保证数据不会丢失。所以我们可以安全的使用nobarrier挂载文件系统。
(3)日志设置
日志路径:osd journal
注:建议使用硬盘或SSD单独存放,默认/var/lib/ceph/osd/$cluster-$id/journal
日志大小(默认5120MB,即5G):osd journal size
注:如果是0表示整个块设备都用来存日志,建议初始设为1G,至少为2 * (expected throughput * filestore max sync interval),其中throughput
为磁盘转速和网络速率的最小值,filestore max sync interval参数在上文filestore参数设置中有解释。
(4)SCRUBBING
scrubbing相当于一个周期性检查工作,保证数据完整性,对象没有丢失,轻量级的scrubbing每天进行,它检查对象的大小和属性,深度scrubbing每周进行,它读取数据并进行校验和来保证数据的完整性。
一个Ceph OSD Daemon内能够同时进行的scrubbing操作(默认1):osd max scrubs
scrub线程超时(默认60秒):osd scrub thread timeout
终止一个scrub最终线程(finalize thread)的超时(默认600秒):osd scrub finalize thread timeout
最大负载(超过这个负载scrub不进行):osd scrub load threshold
最小scrub间隔(负载低时进行,默认每天):osd scrub min interval
最大scrub间隔(不管负载如何,默认每周):osd scrub max interval
深层scrub间隔(默认每周):osd deep scrub interval
深层scrub时的读大小(默认512K):osd deep scrub stride
(5)操作
Ceph OSD Daemon 并行线程数(0表示关闭多线程,默认是2):osd op threads
客户端操作的优先级(默认63):osd client op priority
修复操作的优先级(默认10):osd recovery op priority
线程超时(默认30秒):osd op thread timeout
一个操作变成 complaint worthy (不造啥意思)的超时(默认30s):osd op complaint time
后端磁盘线程数(如scrub操作和snap trimming操作。默认为1):osd disk threads
磁盘线程优先级(默认不设置)类:osd disk thread ioprio class
注:idle-磁盘线程优先级比任何一个OSD线程都低,这有助于在一个繁忙的OSD上不让他scrub;rt-磁盘线程优先级比任何一个OSD线程都高,如果scrub比较需要。这个参数要将内核设置为CFQ调度才有用。
磁盘线程优先级(默认是-1):osd disk thread ioprio priority
注:这个参数要个上面那个参数一起使用,有0-7(最低)个级别,-1表示不设置,单独设置每个OSD scrub的优先级,拥塞或存在IO竞争是可以用这个,这个参数要将内核设置为CFQ调度才有用。
可以跟踪到的已完成的操作数量(默认20):osd op history size
最老可以跟踪到的已完成的操作(默认600):osd op history duration
一次显示多少操作的log(默认5):osd op log threshold
(6)BACKFILLING
当新加入OSD或删除OSD时,部分PG会迁移已达到新的平衡,这一行为会导致性能下降,为避免性能下降,可以设置迁移为backfill操作,并设置它的优先级低于正常读写。(backfill我猜是先标志一下,等空闲的时候在实际操作)
一个OSD运行的最大的backfill操作数(默认10):osd max backfills
每一个backfill扫描的最小对象数(默认64):osd backfill scan min
每一个backfill扫描的最大对象数(默认512):osd backfill scan max
如果OSD Daemon的使用率高于这个值测不响应backfills请求(默认0.85):osd backfill full ratio
backfill请求重试间隔(默认10秒):osd backfill retry interval
(7)OSD MAP
osd map记录着OSD所有信息,包括节点的改变,加入和退出等等信息,随着集群的运行,这个map会越变越大,一下一些配置保证了在map变大的情况下集群仍然能够运行良好。
开启删除Map中的重复内容(默认是true):osd map dedup
map的cache大小(默认500MB):osd map cache size
OSD进程运行时map在内存中的cache大小(默认50MB):osd map cache bl size
OSD进程运行时map在内存中的cache的增量大小:osd map cache bl inc size
每个MOSDMap消息的最大的映射项:osd map message max
(8)RECOVERY
延迟多少秒开始修复对象(默认0):osd recovery delay start
每个OSD一次可以接受的修复请求(默认15):osd recovery max active
注:增大会加速修复但同时也会增加集群负载
修复最大的chunk大小:osd recovery max chunk
修复过程的线程数量(默认1):osd recovery threads
修复线程超时(默认30s):osd recovery thread timeout
在恢复过程中保留克隆重叠(应始终设置为true):osd recover clone overlap
(9)杂项
snap trim线程的超时设定(默认1小时):osd snap trim thread timeout
后台log线程的超时设定(默认1小时):osd backlog thread timeout
默认通知超时(默认30s):osd default notify timeout
检查日志文件是否损坏(代价大,默认false):osd check for log corruption
命令线程超时设定(默认10分钟):osd command thread timeout
返回最大的丢失对象数(默认256):osd command max records
将tmap用作omap(默认false):osd auto upgrade tmap
只将tmap用作调试(默认false):osd tmapput sets users tmap
不删减log空间,多用磁盘空间(默认false):osd preserve trimmed log
http://ceph.com/docs/master/rados/configuration/keyvaluestore-config-ref/
KeyValueStore is an alternative OSD backend compared to FileStore. Currently, it uses LevelDB as backend. KeyValueStore doesn’t need journal device. Each operation will
flush into the backend directly.
KeyValueStore所用的后端(leveldb):keyvaluestore backend
(1)队列
队列上可以存储的最大操作数:keyvaluestore queue max ops
队列上可以存储的最大btye数:keyvaluestore queue max bytes
(2)线程
并行线程数:keyvaluestore op threads
文件操作线程超时秒数:keyvaluestore op thread timeout
提交一个操作多少秒都可以取消:keyvaluestore op thread suicide timeout
(3)MISC
条带大小:keyvaluestore default strip size
注:每个对象会分割成多个键值对存储在后端
header cache大小:keyvaluestore header cache size
注:存的东西和文件系统中的inode差不多
7、OSD CONFIG REFERENCE
http://ceph.com/docs/master/rados/configuration/osd-config-ref/
(1)通用设置
OSD的UUID:osd uuid
注:一个uuid作用于一个OSD Daemon,一个fsid作用于整个cluster,这两个不一样
OSD数据存储的路径:osd data
注:实际底层设备挂载的地方e.g. /var/lib/ceph/osd/$cluster-$id
一次写入最大的MB数(默认90):osd max write size
在内存中允许存储的最大客户端数据信息(默认500MB):osd client message size cap
RADOS class插件地址($libdir/rados-classes):osd class dir
(2)文件系统设置
生成文件系统的类型:osd mkfs options {fs-type}
注:对XFS默认-f -i 2048,其他类型无默认,e.g. osd mkfs options xfs = -f -d agcount=24
挂载选项:osd mount options
{fs-type}
注:对XFS默认rw,noatime,inode64,其他类型rw, noatime,e.g.
osd mount options xfs = rw, noatime, inode64, nobarrier, logbufs=8 其中noatime表示取消读文件时记录最后一次读取的时间(access time),节省时间,inode64表示inode数有64位(近乎无限制)现在的很多文件系统会在数据提交时强制底层设备刷新cache,避免数据丢失,称为write barriers。但是,其实我们数据库服务器底层存储设备要么采用RAID卡,RAID卡本身的电池可以掉电保护;要么采用Flash卡,它也有自我保
护机制,保证数据不会丢失。所以我们可以安全的使用nobarrier挂载文件系统。
(3)日志设置
日志路径:osd journal
注:建议使用硬盘或SSD单独存放,默认/var/lib/ceph/osd/$cluster-$id/journal
日志大小(默认5120MB,即5G):osd journal size
注:如果是0表示整个块设备都用来存日志,建议初始设为1G,至少为2 * (expected throughput * filestore max sync interval),其中throughput
为磁盘转速和网络速率的最小值,filestore max sync interval参数在上文filestore参数设置中有解释。
(4)SCRUBBING
scrubbing相当于一个周期性检查工作,保证数据完整性,对象没有丢失,轻量级的scrubbing每天进行,它检查对象的大小和属性,深度scrubbing每周进行,它读取数据并进行校验和来保证数据的完整性。
一个Ceph OSD Daemon内能够同时进行的scrubbing操作(默认1):osd max scrubs
scrub线程超时(默认60秒):osd scrub thread timeout
终止一个scrub最终线程(finalize thread)的超时(默认600秒):osd scrub finalize thread timeout
最大负载(超过这个负载scrub不进行):osd scrub load threshold
最小scrub间隔(负载低时进行,默认每天):osd scrub min interval
最大scrub间隔(不管负载如何,默认每周):osd scrub max interval
深层scrub间隔(默认每周):osd deep scrub interval
深层scrub时的读大小(默认512K):osd deep scrub stride
(5)操作
Ceph OSD Daemon 并行线程数(0表示关闭多线程,默认是2):osd op threads
客户端操作的优先级(默认63):osd client op priority
修复操作的优先级(默认10):osd recovery op priority
线程超时(默认30秒):osd op thread timeout
一个操作变成 complaint worthy (不造啥意思)的超时(默认30s):osd op complaint time
后端磁盘线程数(如scrub操作和snap trimming操作。默认为1):osd disk threads
磁盘线程优先级(默认不设置)类:osd disk thread ioprio class
注:idle-磁盘线程优先级比任何一个OSD线程都低,这有助于在一个繁忙的OSD上不让他scrub;rt-磁盘线程优先级比任何一个OSD线程都高,如果scrub比较需要。这个参数要将内核设置为CFQ调度才有用。
磁盘线程优先级(默认是-1):osd disk thread ioprio priority
注:这个参数要个上面那个参数一起使用,有0-7(最低)个级别,-1表示不设置,单独设置每个OSD scrub的优先级,拥塞或存在IO竞争是可以用这个,这个参数要将内核设置为CFQ调度才有用。
可以跟踪到的已完成的操作数量(默认20):osd op history size
最老可以跟踪到的已完成的操作(默认600):osd op history duration
一次显示多少操作的log(默认5):osd op log threshold
(6)BACKFILLING
当新加入OSD或删除OSD时,部分PG会迁移已达到新的平衡,这一行为会导致性能下降,为避免性能下降,可以设置迁移为backfill操作,并设置它的优先级低于正常读写。(backfill我猜是先标志一下,等空闲的时候在实际操作)
一个OSD运行的最大的backfill操作数(默认10):osd max backfills
每一个backfill扫描的最小对象数(默认64):osd backfill scan min
每一个backfill扫描的最大对象数(默认512):osd backfill scan max
如果OSD Daemon的使用率高于这个值测不响应backfills请求(默认0.85):osd backfill full ratio
backfill请求重试间隔(默认10秒):osd backfill retry interval
(7)OSD MAP
osd map记录着OSD所有信息,包括节点的改变,加入和退出等等信息,随着集群的运行,这个map会越变越大,一下一些配置保证了在map变大的情况下集群仍然能够运行良好。
开启删除Map中的重复内容(默认是true):osd map dedup
map的cache大小(默认500MB):osd map cache size
OSD进程运行时map在内存中的cache大小(默认50MB):osd map cache bl size
OSD进程运行时map在内存中的cache的增量大小:osd map cache bl inc size
每个MOSDMap消息的最大的映射项:osd map message max
(8)RECOVERY
延迟多少秒开始修复对象(默认0):osd recovery delay start
每个OSD一次可以接受的修复请求(默认15):osd recovery max active
注:增大会加速修复但同时也会增加集群负载
修复最大的chunk大小:osd recovery max chunk
修复过程的线程数量(默认1):osd recovery threads
修复线程超时(默认30s):osd recovery thread timeout
在恢复过程中保留克隆重叠(应始终设置为true):osd recover clone overlap
(9)杂项
snap trim线程的超时设定(默认1小时):osd snap trim thread timeout
后台log线程的超时设定(默认1小时):osd backlog thread timeout
默认通知超时(默认30s):osd default notify timeout
检查日志文件是否损坏(代价大,默认false):osd check for log corruption
命令线程超时设定(默认10分钟):osd command thread timeout
返回最大的丢失对象数(默认256):osd command max records
将tmap用作omap(默认false):osd auto upgrade tmap
只将tmap用作调试(默认false):osd tmapput sets users tmap
不删减log空间,多用磁盘空间(默认false):osd preserve trimmed log
相关文章推荐
- ceph存储 ceph集群配置参数一
- ceph存储 ceph集群配置参数三
- ceph存储 ceph集群网络配置
- ceph存储 ceph集群ntp校时详细配置说明
- ceph存储 ceph集群配置
- ceph存储 ceph集群osd配置
- 配置Ceph集群为OpenStack后端存储
- ceph存储 centos上搭建Ceph分布式文件系统集群示例一
- java调用存储过程超时及DBCP参数配置说明
- RADOS:一种可扩展高可用的PB级存储集群(Ceph)
- ceph存储 dd中sKip 和 seek参数理解
- 数据存储-SharedPreferences(保存软件配置参数)
- 用Openfiler 给Oracle RAC集群配置共享存储
- 系统参数配置的存储管理与应用的通用方法
- 基于CentOS与VmwareStation10搭建Oracle11G RAC 64集群环境:2.搭建环境-2.7. 配置资源与参数
- Centos6.5下Ceph存储集群的搭建
- 集群环境配置Tomcat的bindOnInit参数控制在完全启动后才接受Request请求
- apache 集群tomcat配置参数说明
- 教你如何利用分布式的思想处理集群的参数配置信息——spring的configurer妙用
- c#项目中可以用xml文件存储配置参数