Ceph配置参数分析

本文深入解析Ceph的配置参数,涵盖固定配置、网络、pool size、认证、osd down out、objecter、rgw、debug、osd op、client message、scrub、thread timeout等关键参数,提供调优建议,帮助理解参数背后的意义,优化Ceph集群性能。
摘要由CSDN通过智能技术生成

概述

Ceph的配置参数很多,从网上也能搜索到一大批的调优参数,但这些参数为什么这么设置?设置为这样是否合理?解释的并不多

本文从当前我们的ceph.conf文件入手,解释其中的每一项配置,做为以后参数调优和新人学习的依据;

参数详解

1,一些固定配置参数

fsid = 6d529c3d-5745-4fa5-*-*
mon_initial_members = **, **, **
mon_host = *.*.*.*, *.*.*.*, *.*.*.*
以上通常是通过ceph-deploy生成的,都是ceph monitor相关的参数,不用修改;


2,网络配置参数

public_network = 10.10.2.0/24  默认值 ""
cluster_network = 10.10.2.0/24 默认值 ""
public network:monitor与osd,client与monitor,client与osd通信的网络,最好配置为带宽较高的万兆网络;
cluster network:OSD之间通信的网络,一般配置为带宽较高的万兆网络;

3,pool size配置参数

osd_pool_default_size = 3       默认值 3
osd_pool_default_min_size = 1   默认值 0 // 0 means no specific default; ceph will use size-size/2
这两个是创建ceph pool的时候的默认size参数,一般配置为3和1,3副本能足够保证数据的可靠性;

4,认证配置参数

auth_service_required = none   默认值 "cephx"
auth_client_required = none    默认值 "cephx, none"
auth_cluster_required = none   默认值 "cephx"
以上是Ceph authentication的配置参数,默认值为开启ceph认证;

在内部使用的ceph集群中一般配置为none,即不使用认证,这样能适当加快ceph集群访问速度;

5,osd down out配置参数

mon_osd_down_out_interval = 3600  默认值 300 // seconds
mon_osd_min_down_reporters = 3    默认值 2
mon_osd_report_timeout = 900      默认值 900
osd_heartbeat_interval = 10       默认值 6
osd_heartbeat_grace = 60          默认值 20
  • mon_osd_down_out_interval:ceph标记一个osd为down and out的最大时间间隔
  • mon_osd_min_down_reporters:mon标记一个osd为down的最小reporters个数(报告该osd为down的其他osd为一个reporter)
  • mon_osd_report_timeout:mon标记一个osd为down的最长等待时间
  • osd_heartbeat_interval:osd发送heartbeat给其他osd的间隔时间(同一PG之间的osd才会有heartbeat)
  • osd_heartbeat_grace:osd报告其他osd为down的最大时间间隔,grace调大,也有副作用,如果某个osd异常退出,等待其他osd上报的时间必须为grace,在这段时间段内,这个osd负责的pg的io会hang住,所以尽量不要将grace调的太大。

基于实际情况合理配置上述参数,能减少或及时发现osd变为down(降低IO hang住的时间和概率),延长osd变为down and out的时间(防止网络抖动造成的数据recovery);

参考:

http://docs.ceph.com/docs/master/rados/configuration/mon-osd-interaction/

http://blog.wjin.org/posts/ceph-osd-heartbeat.html

6,objecter配置参数

objecter_inflight_ops = 10240               默认值 1024
objecter_inflight_op_bytes = 1048576000     默认值 100M

osd client端objecter的throttle配置,它的配置会影响librbd,RGW端的性能;

配置建议:

调大这两个值

7,ceph rgw配置参数

rgw_frontends = "civetweb num_threads=500"              默认值 "fastcgi, civetweb port=7480"
rgw_thread_pool_size = 200                              默认值 100
rgw_override_bucket_index_max_shards = 20               默认值 0
 
rgw_max_chunk_size = 1048576                            默认值 512 * 1024
rgw_cache_lru_size = 10000                              默认值 10000 // num of entries in rgw cache
rgw_bucket_default_quota_max_objects = *                默认值 -1 // number of objects allowed
  • rgw_frontends:rgw的前端配置,一般配置为使用轻量级的civetweb;prot为访问rgw的端口,根据实际情况配置;num_threads为civetweb的线程数;
  • rgw_thread_pool_size:rgw前端web的线程数,与rgw_frontends中的num_threads含义一致,但num_threads 优于 rgw_thread_pool_size的配置,两个只需要配置一个即可
  • 0
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值