Ceph PG状态介绍

本文分享自天翼云开发者社区《Ceph PG状态介绍》,作者:wwwdl

一、基本概念

size:副本数(如三副本,size=3);

min_size:支持可读写的最小副本数(如三副本,min_size=2);

upset:pg的目标osd列表;

actset:pg可接受读写osd列表。

如下为osd异常,重新选择osd,pg的osd列表变化过程:

二、pg各个状态

(1)creating:创建pool时,自动创建pg,此时会出现该状态;

(2)active:pg活跃态,表示pg可以接受读写业务,当pg状态不是active时,集群将业务异常,会导致上层业务大面积瘫痪;

(3)clean:pg处于健康态,三个副本的数据是一致的;

(4)recovering:pg增量恢复,根据日志条目,复原数据;

(5)backfilling:pg全量恢复,根据全量扫描对象,比较差异,还原差异数据;

(6)recovery-wait / backfill-wait:pg需要增量/全量恢复,当前等待状态,由于每个OSD并发恢复pg个数的限制(默认值为1);

(7)recovery-toofull / backfill-toofull:OSD出现容量使用超过门限值95%,无法数据迁移;

(8)scrubbing:扫描pg副本的元数据,副本之间进行比较,保证元数据一致,默认开启,一般一周扫描一次;

(9)deep+scrubbing:扫描pg副本的元数据与数据,副本之间进行对比,保证元数据和数据一致,默认关闭,由于扫描数据相当耗时,影响业务;

(10)inconsistent:扫描数据之后出现数据不一致,默认没有开启自动修复;

(11)repair:数据不一致时,修复数据的状态,默认关闭,需要手动出发修复,修复的原理:将正常的OSD的数据推送给异常的OSD。

(12)peering:协商副本之间数据一致性;

(13)degraded:降级态,peering完成后,检查到PG有对象需要修复;

(14)remapped:upset 不等于 actset;

(15)undersized:actset 小于副本数(size);

(16)activating:peering完成之后,同步固化peering的结果(info、log);

(17)peered:peering已经完成,当出现actset < min_size;

(18)down:peering过程中检查到,当前在线的osd无法完成数据修复;

(19)imcomplete:peering过程中,无法选取权威日志。 

(20)stale:未刷新态,mon将osd标记为down,可能由于网络原因,osd没有感知mon把自己标记为down,osd主动上报pg的列表还包含自己,被mon发现,将被标记为stale;

(21)snaptrim:删除快照;

(22)snaptrim-wait:由于每个osd并发的限制,已经有pg在做删除快照,那么其他的pg必须等待;

(23)snap-error:删除快照时,遇到异常情况, 如果出现snap-error,问题很严重,意味着丢失数据了。

posted @ 2024-07-19 15:00  天翼云开发者社区  阅读(2)  评论(0编辑  收藏  举报