Ceph中,每个pool可以设置size以及min_size,他们默认分别是3和2(当然可以在配置文件里配置这两个属性的默认值,也可以在pool创建后通过ceph的命令更改pool的size以及min_size属性)。 size是该pool的副本数,也即数据有size个副本;min_size是指当集群出现故障时,PG至少还有min_size副本正常时,可以服务io。 那么min_siz...
ceph min_size 为1 在使用Ceph集群进行数据存储时,设置min_size参数为1是一个常见的做法。在Ceph中,min_size参数决定了在数据容错性方面的表现。将min_size参数设置为1意味着系统可以容忍单个故障域的失败,而不会因为该故障域的失效而导致整个系统不可用。 设置min_size为1的优势在于增强了集群的鲁棒性。当系统中...
当我们在Ceph集群中创建一个对象时,Ceph会根据“ceph min size”参数的设定创建相应数量的副本,并将这些副本存储在不同的OSD上,从而保证数据的可靠性。 “ceph min size”参数的一个重要作用是在集群中出现故障时保证数据的可靠性。假设我们将“ceph min size”设定为2,即每个对象至少需要拥有两个副本。当一个OSD...
pool 的 size 设置的是一个对象包括它自身在内的目标副本数,默认为 3,表示一个对象有另外两个副本;min_size 设置的是处于 degraded 模式下的对象还能接受IO时的最小副本数。当实际副本数低于 min_size 时,该对象将是只读的。 2.2 实验 0: 集群有4个 osd (0,2,5,3),pool 的 size 和 min_size 都是3...
min_size=K+1 也就是默认的环境下的是min_size是3 到这里就知道上面为什么会出现上面的状况了,也就是这个编码设置的时候需要自己去控制下,比如4+2的ec,最多能挂掉几个,如果在以前可以很肯定的说是2个,实际在新的情况下是4+1=5也就是只允许挂掉一个是可读可写的 ...
min_size 1 ##如果存储池的副本数大于这个值,此rule不会应用 max_size 10 ##如果存储池的副本数大于这个值,此rule不会应用 step take default ##以default root 为入口 step chooseleaf firstn 0 type host ##隔离城为host级,即不同副本在不同的主机上 ...
min_size如果=1,那么一个盘坏掉之后仍然可以写入。 坏了一个盘之后,如果min_size=2,那么数据写入不会报错,因为XFS文件系统有写缓存,缓存无法更新到硬盘,此时如果断电重启数据会丢失。为了优化这个问题需要: ceph osd pool set rbd min_size 2 mount参数要加上-o wsync,保证元数据的一致性 ...
为了模拟故障,(size = 3, min_size = 2) 我们手动停止了 osd.1,然后查看PG状态,可见,它此刻的状态是active+undersized+degraded,当一个 PG 所在的 OSD 挂掉之后,这个 PG 就会进入undersized+degraded 状态,而后面的[0,2]的意义就是还有两个副本存活在 osd.0 和 osd.2 上, 并且这个时候客户端可以正常读...
min_size 1 #pool中最小指定的副本数量不能小1 max_size 10 #pool中最大指定的副本数量不能大于10 step take default #查找bucket入口点,一般是root类型的bucket step chooseleaf firstn 0 type host #选择一个host,并递归选择叶子节点osd step emit #结束 ...
ceph osd pool set<poolname>size|min_size<val> 注意:你可以在运行时修改参数值。如果是在 Ceph 配置文件中进行的修改,你可能需要重启集群。 POOL SIZE = 1 如果你设置了osd pool default size的值为1,那你就仅有对象的单份拷贝。OSD 依赖于其他 OSD 告诉自己应该保存哪些对象。如果第一个 OSD 持有对象的...