生产环境ceph.conf配置

[global]
 
fsid = 1235bE62-8ae1-difg-893a-892a675757c6
 
mon_initial_members = ceph-node01,ceph-node02,ceph-node03
 
mon_host = 192.168.170.11,192.168.170.12,192.168.170.13
 
auth_cluster_required = cephx
 
auth_service_required = cephx
 
auth_client_required = cephx
 
public_network = 192.168.170.0/22 #管理网络
 
cluster_network = 192.168.180.0/22 #集群网络
 
mon_pg_warn_max_per_osd = 1000 #每个osd上pg数量警告值,这个可以根据具体规划来设定
 
osd_pool_default_size = 3 #默认副本数为3
 
osd_pool_default_min_size = 2 #最小副本数为2,也就是只能坏一个
 
mon_osd_full_ratio = .85 #存储使用率达到85%将不再提供数据存储
 
mon_osd_nearfull_ratio = .70 #存储使用率达到70%集群将会warn状态
 
osd_deep_scrub_randomize_ratio = 0.01 #随机深度清洗概率,值越大,随机深度清洗概率越高,太高会影响业务
 
[osd]
 
osd_max_write_size = 1024 #默认90M,一次写操作最小值
 
osd_recovery_op_priority = 1 #默认为10, 1-63 osd修复操作的优先级, 。值越小,优先级越低
 
osd_recovery_max_active = 1 #限定每个osd上同时有多少个pg可以同时进行recover
 
osd_recovery_max_single_start = 1 # 和osd_recovery_max_active一起使用,要理解其含义。假设我们配置osd_recovery_max_single_start为1,osd_recovery_max_active为3,那么,这意味着OSD在某个时刻会为一个PG启动一个恢复操作,而且最多可以有三个恢复操作同时处于活动状态。
 
osd_recovery_max_chunk = 1048576 #默认为8388608, 设置恢复数据块的大小,以防网络阻塞
 
osd_recovery_threads = 1 #恢复数据所需的线程数
 
osd_max_backfills = 1 #集群故障后,最大backfill数为1,太大会影响业务
 
osd_scrub_begin_hour = 22 #清洗开始时间为晚上22点
 
osd_scrub_end_hour = 7 #清洗结束时间为早上7点
 
osd_recovery_sleep = 0 #默认为0,recovery的时间间隔,会影响recovery时常,如果recovery导致业务不正常,可以调大该值,增加时间间隔
 
osd_crush_update_on_start = false # 新加的osd会up/in,但并不会更新crushmap,prepare+active期间不会导致数据迁移
  • 部分默认配置说明
"bluestore_2q_cache_kin_ratio": "0.500000",  #2q cache中真正存储新的缓存页面的链表 Ain 所占用整个cache空间的比例
"bluestore_2q_cache_kout_ratio": "0.500000",  # 2q cache中存储被正常淘汰的缓存页面的链表 Alout 所占用整个cache的空间比例
"mon_osd_prime_pg_temp_max_time": "0.500000",  ##当外部OSD返回到群集时,显示器应花费多少时间来尝试引导PGMap。默认值是0.5
"mon_pg_check_down_all_threshold": "0.500000",   ##降低OSD的阈值百分比,之后我们检查所有PG的陈旧值。默认值是0.5
"osd_recovery_sleep_hybrid": "0.025000",   #出队列后先Sleep一段时间,拉长两个Recovery的时间间隔
"osd_scrub_interval_randomize_ratio": "0.500000",  #随机执行scrub的概率,在osd_scrub_begin_hour-osd_scrub_end_hour之间会执行
"osd_scrub_load_threshold": "0.500000",   #只有负载低于该值时才允许触发Scrub  #最大负载(超过这个负载scrub不进行)
"osd_scrub_backoff_ratio": "0.660000",   

"mon_lease_renew_interval_factor": "0.600000",   #leader去更新其他monitor租约的时间间隔数,默认是0.6
"journal_throttle_low_threshhold": "0.600000",
"mon_cache_target_full_warn_ratio": "0.660000",   #在pools的cache_target_full and target_max_object 之间就报警,默认是0.66
"mds_cache_mid": "0.700000",
"mds_max_purge_ops_per_pg": "0.500000", 

"mon_osd_min_in_ratio": "0.750000",   #在把 OSD 标记为 out 前,保持处于 in 状态的 OSD 最小比例。默认值是.75
"client_cache_mid": "0.750000",