存储池、归置组和 CRUSH 配置参考

当你创建存储池并给它设置归置组数量时,如果你没指定 Ceph 就用默认值。我们建议更改某些默认值,特别是存储池的副本数和默认归置组数量,可以在运行 pool 命令的时候设置这些值。你也可以把配置写入 Ceph 配置文件的 [global] 段来覆盖默认值。

[global]

	# By default, Ceph makes 3 replicas of objects. If you want to make four 
	# copies of an object the default value--a primary copy and three replica 
	# copies--reset the default values as shown in 'osd pool default size'.
	# If you want to allow Ceph to write a lesser number of copies in a degraded 
	# state, set 'osd pool default min size' to a number less than the
	# 'osd pool default size' value.

	osd pool default size = 4  # Write an object 4 times.
	osd pool default min size = 1 # Allow writing one copy in a degraded state.

	# Ensure you have a realistic number of placement groups. We recommend
	# approximately 100 per OSD. E.g., total number of OSDs multiplied by 100 
	# divided by the number of replicas (i.e., osd pool default size). So for
	# 10 OSDs and osd pool default size = 4, we'd recommend approximately
	# (100 * 10) / 4 = 250.

	osd pool default pg num = 250
	osd pool default pgp num = 250

mon max pool pg num

描述:每个存储的最大归置组数量。
类型:Integer
默认值:65536

mon pg create interval

描述:在同一个 OSD 里创建 PG 的间隔秒数。
类型:Float
默认值:30.0

mon pg stuck threshold

描述:多长时间无响应的 PG 才认为它卡住了。
类型:32-bit Integer
默认值:300

osd pg bits

描述:每个 OSD 的归置组位数。
类型:32-bit Integer
默认值:6

osd pgp bits

描述:每个 OSD 为 PGP 留的位数。
类型:32-bit Integer
默认值:6

osd crush chooseleaf type

描述:在一个 CRUSH 规则内用于 chooseleaf 的桶类型。用序列号而不是名字。
类型:32-bit Integer
默认值:1 ,通常一台主机包含一或多个 OSD 。

osd pool default crush replicated ruleset

描述:创建多副本存储池时用哪个默认 CRUSH 规则集。
类型:8-bit Integer
默认值:CEPH_DEFAULT_CRUSH_REPLICATED_RULESET ,也就是说,“挑选数字 ID 最小的规则集”。这样,没有规则集 0 时也能成功创建存储池。

osd pool erasure code stripe width

描述:设置每个已编码池内的对象条带尺寸(单位为字节)。尺寸为 S 的各对象将存储为 N 个条带,且各条带将分别编码/解码。
类型:Unsigned 32-bit Integer
默认值:4096

osd pool default size

描述:设置一存储池的对象副本数,默认值等同于 ceph osd pool set {pool-name} size {size}
类型:32-bit Integer
默认值:3

osd pool default min size

描述:设置存储池中已写副本的最小数量,以向客户端确认写操作。如果未达到最小值, Ceph 就不会向客户端回复已写确认。此选项可确保降级( degraded )模式下的最小副本数。
类型:32-bit Integer
默认值:0 ,意思是没有最小值。如果为 0 ,最小值是 size - (size / 2)

osd pool default pg num

描述:一个存储池的默认归置组数量,默认值即是 mkpoolpg_num 参数。
类型:32-bit Integer
默认值:8

osd pool default pgp num

描述:一个存储池里,为归置使用的归置组数量,默认值等同于 mkpoolpgp_num 参数。当前 PG 和 PGP 应该相同。
类型:32-bit Integer
默认值:8

osd pool default flags

描述:新存储池的默认标志。
类型:32-bit Integer
默认值:0

osd max pgls

描述:将列出的最大归置组数量,一客户端请求量大时会影响 OSD 。
类型:Unsigned 64-bit Integer
默认值:1024
Note:默认值应该没问题。

osd min pg log entries

描述:清理日志文件的时候保留的归置组日志量。
类型:32-bit Int Unsigned
默认值:1000

osd default data pool replay window

描述:一 OSD 等待客户端重播请求的时间,秒。
类型:32-bit Integer
默认值:45