5.8.4. RWO ストレージを使用したアプリケーションの復旧


ReadWriteOnce (RWO) ストレージを使用するアプリケーションには、この Kubernetes の問題 で説明されている既知の動作があります。この問題のため、データゾーンに障害が発生した場合は、RWO ボリュームをマウントしているそのゾーンのアプリケーション Pod(例: cephrbd ベースのボリューム) は 6〜8 分後に Terminating ステータスのままになり、手動の介入なしではアクティブゾーンに再作成されません。

ステータスが NotReady の OpenShift Container Platform ノードを確認します。ノードが OpenShift コントロールプレーンと通信できない問題が生じる可能性があります。ただし、ノードは永続ボリューム (PV) に対して I/O 操作を実行している可能性があります。

2 つの Pod が同じ RWO ボリュームに同時に書き込む場合は、データ破損のリスクが発生します。NotReady ノードのプロセスが終了するか、終了するまでブロックされていることを確認します。

ソリューションの例:

  • 帯域外管理システムを使用してノードの電源をオフにし、確認を行うことは、プロセスを確実に終了させる例です。
  • 障害が発生したサイトのノードによってストレージとの通信に使用されるネットワークルートを無効します。

    注記

    障害のあるゾーンまたはノードにサービスを復元する前に、PV が指定されたすべての Pod が正常に終了していることを確認します。

Terminating Pod がアクティブなゾーンで再作成されるようにするには、Pod を強制的に削除するか、関連付けられた PV でファイナライザーを削除します。これら 2 つのアクションのいずれかが完了すると、アプリケーション Pod がアクティブゾーンで再作成され、その RWO ストレージが正常にマウントされます。

Pod を強制的に削除

強制削除は、Pod が終了したという kubelet からの確認を待ちません。

$ oc delete pod <PODNAME> --grace-period=0 --force --namespace <NAMESPACE>
<PODNAME>
Pod の名前です。
<NAMESPACE>
プロジェクトの namespace です。
関連付けられた PV のファイナライザーの削除

Terminating Pod によってマウントされる永続ボリューム要求 (PVC) に関連付けられた PV を見つけ、oc patch コマンドを使用してファイナライザーを削除します。

$ oc patch -n openshift-storage pv/<PV_NAME> -p '{"metadata":{"finalizers":[]}}' --type=merge
<PV_NAME>

Pod の名前です。

関連付けられた PV を見つける簡単な方法として、Terminating Pod を記述することができます。複数割り当ての警告が表示される場合は、PV 名が警告に含まれるはずです (例: pvc-0595a8d2-683f-443b-aee0-6e547f5f5a7c)。

$ oc describe pod <PODNAME> --namespace <NAMESPACE>
<PODNAME>
Pod の名前です。
<NAMESPACE>

プロジェクトの namespace です。

出力例:

[...]
Events:
  Type     Reason                  Age   From                     Message
  ----     ------                  ----  ----                     -------
  Normal   Scheduled               4m5s  default-scheduler        Successfully assigned openshift-storage/noobaa-db-pg-0 to perf1-mz8bt-worker-d2hdm
  Warning  FailedAttachVolume      4m5s  attachdetach-controller  Multi-Attach error for volume "pvc-0595a8d2-683f-443b-aee0-6e547f5f5a7c" Volume is already exclusively attached to one node and can't be attached to another
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

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

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

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

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

Legal Notice

Theme

© 2026 Red Hat
トップに戻る