Ceph で、Placement Group (PG) が矛盾していて pg repair が実行できない
Issue
- Placement Groupが保護されておらず一貫性がありません。
- 他にも、矛盾しているPlacement Groupがあります。これは、前回報告した問題と類似していますが、Primary OSDに問題がありそうだという点が異なります。以下に示すのは deep scrub 実行時のエラーです。
2015-05-20 19:33:45.740993 7fc237ddc700 0 log [ERR] :5.e010 shard 46: soid 45a4e010/default.118038857.24732__shadow_.kelxKI7tQ64YCK2RNrKZp7NYh_VurPu_1/head//5 digest 733226906 != known digest 608489496
2015-05-20 19:33:45.740998 7fc237ddc700 0 log [ERR] :5.e010 shard 135: soid 45a4e010/default.118038857.24732__shadow_.kelxKI7tQ64YCK2RNrKZp7NYh_VurPu_1/head//5 digest 733226906 != known digest 608489496
2015-05-20 19:36:29.672930 7fc237ddc700 0 log [ERR] :5.e010 deep-scrub 0 missing, 1 inconsistent objects
2015-05-20 19:36:29.672940 7fc237ddc700 0 log [ERR] :5.e010 deep-scrub 2 errors
-
Replica OSDでは一致していますが、PrimaryがReplicaと一致しないため 2 つのエラーが発生していることが確認できます。
-
ここでは、Digestの不一致を修正すべきと思いますが、警告メッセージが大量に発生した件について質問をしています。これまでと同じようにオブジェクトを手動で修復すべきかどうか、もしくはプライマリーがレプリカと一致しない特別なケースであるかを知りたいです。
-
以下のメッセージでは、PG 5.a096 (cephstore8860 の osd.1279) が、自動スクラブにより矛盾が発生していることが確認できます。このような矛盾したPlacement Groupに対して、deep scrubが実行されると以下のようなエラーが発生します。
2015-05-13 16:40:54.849618 7ff8e1020700 0 log [ERR] :5.a096 shard 327: soid 6a3aa096/default.86750274.2235__multipart_1.Canada/8.AUGUST 2014/Dennis + Jenny VID RAR/3.Reception Day/CUTAWAY/CARD 1.part303.rar.5RJ1X66LDt6rI76J2iB7irFZ_73q3d1.4/head//5 candidate had a read error, digest 1144609603 != known digest 404770159
2015-05-13 16:42:41.842931 7ff8e1020700 0 log [ERR] :5.a096 deep-scrub 0 missing, 1 inconsistent objects
2015-05-13 16:42:41.842937 7ff8e1020700 0 log [ERR] :5.a096 deep-scrub 1 errors
Environment
- Red Hat Ceph Storage 1.2.3
- Red Hat Ceph Storage 1.3
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.