Ceph性能调优参数
1 GLOBAL参数调优
集群范围内的配置参数定义在ceph的配置文件中,任何一个ceph守护进程启动的时候都会遵循已定义的设置。这些配置参数全部放在/etc/ceph/ceph.conf文件中,这个文件有一个global部分和若干个服务类型部分,任何时候一个ceph服务启动,都会应用[global]部分,以及进程特定部分的配置。
1.1 network
建议使用两个物理隔离的网络,分别作为Public Network(公共网络,即客户端访问网络)和Cluster Network(集群网络,即节点之间的网络)。
Public Network:定义Public Network的语法:Public network = {public network / netmask}。
public network = x.x.x.x/24
Cluster Network:定义Cluster Network的语法:Cluster network = {cluster network / netmask}。
cluster network = x.x.x.x/24
1.2 osd pool default min size
处于degraded状态的副本数。它确定了Ceph在向客户端确认写操作时,存储池中的对象必须具有的最小副本数目,缺省值为0。
osd pool default min size = 3
1.3 osd pool default pg和osd pool default pgp
确保集群有一个切实的PG数量。建议每个OSD的PG数目是100。使用这个公式计算PG个数:(OSD总数 * 100)/副本个数。
对于10个OSD和副本数目为3的情况,PG个数应该小于(10*100)/3 = 333。
osd pool default pg num = 128
osd pool default pgp num = 128
1.4 osd pool default min size
这是处于degraded状态的副本数目,它应该小于osd pool default size的值,为存储池中的object设置最小副本数目来确认写操作。即使集群处于degraded状态。如果最小值不匹配,Ceph将不会确认写操作给客户端。
osd pool default min size = 1
1.5 osd recovery threads
恢复数据所需的线程数。 osd_recovery_threads = 1
1.6 osd backfilling
设置允许Ceph配置回填操作(backfilling operation)的优先级比请求读写更低。osd max backfills:允许进或出单个OSD的最大backfill数。
osd_max_backfills = 2
1.7 osd recovery max active
某个给定时刻,每个OSD上同时进行的所有PG的恢复操作(active recovery)的最大数量。
osd_recovery_max_active = 1
1.8 osd journal size
应该使用这个参数来设置日志大小。日志大小应该至少是预期磁盘速度和filestore最大同步时间间隔的两倍。如果使用了SSD日志,最好创建大于10GB的日志,并调大filestore的最小、最大同步时间间隔。
osd_journal_size = 10240
2 OSD参数调优
2.1 OSD常用设置
下面的设置允许Ceph OSD进程设定文件系统类型、挂载选项,以及一些其他有用的配置。
2.1.1 osd mkfs options xfs
创建OSD的时候,Ceph将使用这些xfs选项来创建OSD的文件系统:
osd_mkfs_options_xfs = “-f -i size=2048”
2.1.2 osd mount options xfs
设置挂载文件系统到OSD的选项。当Ceph挂载一个OSD时,下面的选项将用于OSD文件系统挂载。
osd_mount_options_xfs =“rw,noatime,inode64,logbufs=8,logbsize=256k, delayl