検索

8.3. ローカルストレージデバイスを使用してプロビジョニングされた、失敗したまたは不要な Ceph OSD を削除

download PDF

以下の手順に従って、ローカルストレージデバイスを使用して、Ceph がプロビジョニングした障害のあるオブジェクトまたは不要なオブジェクトストレージデバイス (OSD) を削除できます。

重要

クラスターのスケールダウンは、Red Hat サポートチームの支援がある場合にのみサポートされます。

警告
  • Ceph コンポーネントが正常な状態ではないときに OSD を削除すると、データが失われる可能性があります。
  • 2 つ以上の OSD を同時に削除すると、データが失われます。

前提条件

  • Ceph が正常かどうかを確認します。詳細は、Ceph クラスターが正常であることの確認 を参照してください。
  • アラートが発生していないか、再構築プロセスが進行中ではないことを確認してください。

手順

  1. OSD デプロイメント上のレプリカを 0 にスケールして、OSD を強制的にマークダウンします。障害により OSD がすでにダウンしている場合は、この手順をスキップできます。

    # oc scale deployment rook-ceph-osd-<osd-id> --replicas=0
  2. 失敗した OSD をクラスターから削除します。

    # failed_osd_id=<osd_id>
    
    # oc process -n openshift-storage ocs-osd-removal -p FAILED_OSD_IDS=$<failed_osd_id> | oc create -f -

    ここで、FAILED_OSD_ID、rook-ceph-osd 接頭辞の直後の Pod 名の整数です。

  3. ログを確認して、OSD が正常に削除されたことを確認します。

    # oc logs -n openshift-storage ocs-osd-removal-$<failed_osd_id>-<pod-suffix>
  4. オプション:OpenShift Container Platform の ocs-osd-removal-job Pod から cephosd:osd.0 is NOT ok to destroy としてエラーが 発生した場合は、エラー cephosd:osd.0 is NOT ok to destroy のトラブルシューティング を参照してください
  5. 障害のある OSD に関連付けられた Persistent Volume Claim (永続ボリューム要求、PVC) リソースを削除します。

    1. 失敗した OSD に関連付けられた PVC を取得します。

      # oc get -n openshift-storage -o yaml deployment rook-ceph-osd-<osd-id> | grep ceph.rook.io/pvc
    2. PVC に関連付けられた persistent volume (PV) を取得します。

      # oc get -n openshift-storage pvc <pvc-name>
    3. 障害が発生したデバイス名を取得します。

      # oc get pv <pv-name-from-above-command> -oyaml | grep path
    4. 失敗した OSD に関連付けられた prepare-pod を取得します。

      # oc describe -n openshift-storage pvc ocs-deviceset-0-0-nvs68 | grep Mounted
    5. 関連付けられた PVC を削除する前に osd-prepare pod を削除します。

      # oc delete -n openshift-storage pod <osd-prepare-pod-from-above-command>
    6. 失敗した OSD に関連付けられた PVC を削除します。

      # oc delete -n openshift-storage pvc <pvc-name-from-step-a>
  6. 障害が発生したデバイスエントリーを LocalVolume custom resoure (CR)から削除します。

    1. 障害が発生したデバイスを使用してノードにログインします。

      # oc debug node/<node_with_failed_osd>
    2. 障害が発生したデバイス名の /dev/disk/by-id/<id> を記録します。

      # ls -alh /mnt/local-storage/localblock/
  7. オプション: OSD のプロビジョニングにローカルストレージオペレーターが使用されている場合は、{osd-id} を使用してマシンにログインし、デバイスのシンボリックリンクを削除します。

    # oc debug node/<node_with_failed_osd>
    1. 障害が発生したデバイス名の OSD シンボリックリンクを取得します。

      # ls -alh /mnt/local-storage/localblock
    2. symlink を削除します。

      # rm /mnt/local-storage/localblock/<failed-device-name>
  8. OSD に関連付けられた PV を削除します。
# oc delete pv <pv-name>

検証手順

  • OSD が正常に削除されたかどうかを確認するには、次のコマンドを実行します。

    #oc get pod -n openshift-storage ocs-osd-removal-$<failed_osd_id>-<pod-suffix>

    このコマンドはステータスを Completed として返す必要があります。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.