1.3.9. コマンドラインインターフェースを使用した Ceph OSD の削除

ストレージクラスターから OSD を削除するには、以下のステップを実行する必要があります *クラスターマップの更新* 認証キーの削除* OSD の OSD マップからの削除* ceph.conf ファイルから OSD を削除します。

OSD ノードに複数のドライブがある場合は、削除する OSD ごとにこの手順を繰り返して、それぞれのドライブについて OSD を削除する必要がある場合があります。

前提条件

  • 実行中の Red Hat Ceph Storage クラスター
  • 利用可能な OSD が十分になるようにして、ストレージクラスターが ほぼ完全 な比率にならないようにしてください。
  • OSD ノードへのルートレベルのアクセス。

手順

  1. OSD サービスを無効にし、停止します。

    構文

    systemctl disable ceph-osd@OSD_ID
    systemctl stop ceph-osd@OSD_ID

    [root@osd ~]# systemctl disable ceph-osd@4
    [root@osd ~]# systemctl stop ceph-osd@4

    OSD が停止したら、停止 します。

  2. ストレージクラスターから OSD を削除します。

    構文

    ceph osd out OSD_ID

    [root@osd ~]# ceph osd out 4

    重要

    OSD が削除されると、Ceph は再バランス調整を開始し、データをストレージクラスター内の残りの OSD にコピーします。Red Hat は、次の手順に進む前に、ストレージクラスターが active+clean になるまで待つことを推奨します。データの移行を確認するには、以下のコマンドを実行します。

    構文

    [root@mon ~]# ceph -w

  3. CRUSH マップから OSD を削除して、データを受信しないようにします。

    構文

    ceph osd crush remove OSD_NAME

    [root@osd ~]# ceph osd crush remove osd.4

    注記

    OSD およびこれを含むバケットを手動で削除するには、CRUSH マップをコンパイルし、デバイス一覧から OSD を削除して、ホストバケットの項目としてデバイスを削除するか、またはホストバケットを削除することもできます。CRUSH マップにあり、ホストを削除するには、マップを再コンパイルしてからこれを設定します。詳細は、『ストレージ戦略ガイド』の「CRUSH マップのデコンパイル」を参照してください。

  4. OSD 認証キーを削除します。

    構文

    ceph auth del osd.OSD_ID

    [root@osd ~]# ceph auth del osd.4

  5. OSD を削除します。

    構文

    ceph osd rm OSD_ID

    [root@osd ~]# ceph osd rm 4

  6. ストレージクラスターの設定ファイルを編集します。このファイルのデフォルト名は /etc/ceph/ceph.conf です。ファイルの OSD エントリーが存在する場合は削除します。

    [osd.4]
    host = _HOST_NAME_

  7. OSD を手動で追加している場合は、/etc/fstab ファイルで OSD への参照を削除します。
  8. 更新された設定ファイルを、ストレージクラスター内の他のすべてのノードの /etc/ceph/ ディレクトリーにコピーします。

    構文

    scp /etc/ceph/CLUSTER_NAME.conf USER_NAME@HOST_NAME:/etc/ceph/

    [root@osd ~]# scp /etc/ceph/ceph.conf root@node4:/etc/ceph/