検索

4.3. Ceph ファイルシステム

download PDF

ユーザー空間の Ceph ファイルシステム (CephFS) はアップグレード後に期待どおりに動作します

以前は、クラスターのアップグレード中に、ユーザー空間の CephFS クライアントがクラッシュすることがありました。これは、ユーザー空間側で保持されていた MDS 側の機能ビットが古いことが原因でした。

この修正により、ユーザー空間の CephFS クライアントの MDS 機能ビットが更新され、クラスターのアップグレード後にクライアントが期待どおりに動作できるようになります。

Bugzilla:2247174

大量のセッションメタデータがあるクライアントをブロックリストに登録してエビクトします

以前は、MDS 内に大量のクライアントメタデータが蓄積されると、MDS が読み取り専用モードに切り替わることがありました。

この修正により、蓄積の原因となっているクライアントをブロックリストに登録してエビクトするようになりました。これにより、MDS は期待どおりに動作します。

Bugzilla:2238663

リンク解除リクエストと再統合リクエストの間でデッドロックが発生しなくなりました

以前は、非同期の dirop バグを修正するときに、以前のコミットによってリグレッションが導入され、リンク解除リクエストと再統合リクエストの間でデッドロックが発生していました。

この修正により、古いコミットが元に戻され、リンク解除リクエストと再統合リクエストの間でデッドロックが発生しなくなりました。

Bugzilla:2228635

クライアントは常にキャップ取り消し確認応答を MDS デーモンに送信します

以前は、MDS デーモンがキャップ取り消しリクエストをクライアントに送信し、この間にクライアントがキャップを解放して inode を削除した場合、クライアントはリクエストを直接破棄していました。しかし、MDS デーモンはクライアントからのキャップ取り消し確認応答を待つ必要がありました。このため、キャップを取り消す必要がない場合でも、MDS デーモンはクライアントからの確認応答を待ち続け、MDS デーモンの健全性ステータスに警告が発生していました。

この修正により、inode が存在せず、MDS デーモンが停止状態にならない場合でも例外なく、クライアントはキャップ取り消し確認応答を MDS デーモンに送信するようになりました。

Bugzilla:2228000

MDS ロックが正しい順序で取得されます

以前は、MDS がメタデータツリーロックを誤った順序で取得し、create および getattr RPC リクエストでデッドロックが発生していました。

この修正により、MDS でロックが正しい順序で取得され、リクエストのデッドロックが発生しなくなりました。

Bugzilla:2235338

CephFS MDS が split_realms 情報の送信をスキップします

以前は、CephFS MDS が誤って split_realms 情報を送信し、kclient はこの情報を正しくデコードできませんでした。このため、クライアントは、split_realms を考慮せず、破損したスナップトレースとして扱っていました。

この修正により、split_realmskclient に送信されなくなり、クラッシュは発生しなくなりました。

Bugzilla:2228003

writing フラグを設定してもスナップショットデータが失われなくなりました

以前は、クライアントで Fb キャップの使用時に writing フラグを ‘1’ に設定していた場合、ダーティーキャップの場合はスキップし、既存のキャップスナップを再利用していました。しかし、これは正しくありませんでした。このことが原因で、2 つの連続したスナップショットが上書きされ、データが失われていました。

この修正により、writing フラグが正しく設定され、スナップショットデータが失われなくなりました。

Bugzilla:2224241

スレッド名の変更が失敗しなくなりました

以前は、まれに名前変更中に別のスレッドが dst dentry を検索しようとした場合、src dentry と dst dentry の両方が同じ inode に同時にリンクされ、スレッドが取得する検索結果に一貫性が欠ける場合がありました。したがって、2 つの異なる dentry が同じ inode にリンクされることで、名前変更リクエストは失敗していました。

この修正により、スレッドは名前変更アクションが完了するまで待機し、すべてが期待どおりに動作するようになりました。

Bugzilla:2227987

取り消しリクエストがスタックしなくなりました

以前は、'seq' を増やす取り消しリクエストの送信前に、クライアントが対応するキャップを解放し、古い seq でキャップ更新リクエストを送信した場合、MDS は seq とキャップの計算を確認しそこなっていました。このため、取り消しリクエストが無限にスタックし、クライアントから応答のない取り消しリクエストに関する警告が出力されていました。

この修正により、取り消しリクエストに対して常に確認応答が送信されるようになり、取り消しリクエストがスタックしなくなりました。

Bugzilla:2227992

エラーが MDLog::_recovery_thread で適切に処理されます

以前は、QA テストによって発行された fs fail により MDS がすでにブロックリストに登録されていた場合、書き込みが失敗していました。たとえば、QA テスト test_rebuild_moved_file (tasks/data-scan) は、この理由で失敗していました。

この修正により、書き込みの失敗は MDLog::_recovery_thread で適切に処理されるようになりました。

Bugzilla:2228358

Ceph クライアントが、アラームを送信する前に遅延の原因を検証するようになりました

以前は、Ceph は OSD の遅延を警告する誤ったアラートを送信することがありました。たとえば、X client(s) laggy due to laggy OSDs などです。これらのアラートは、遅延が実際に OSD によるものであり、他の原因によるものではないことを検証せずに送信されていました。

この修正により、X client(s) laggy due to laggy OSDs というメッセージは、一部のクライアントと OSD に遅延がある場合にのみ送信されるようになりました。

Bugzilla:2247187

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.