Menu Close

9.8.4. マークアウトと置換のアプローチを使用して FileStore から BlueStore への移行

FileStore から BlueStore に移行する最も簡単な方法は、各デバイスを順次マークアウトし、ストレージクラスター全体でデータが複製されるのを待ち、OSD を再プロビジョニングし、再度「in」のマークに戻すことです。

前提条件

  • 稼働中の Red Hat Ceph Storage クラスターがある。
  • ノードへの root アクセス。

手順

以下の変数 OSD_ID を ODS の識別番号に置き換えます。

  1. 置き換える FileStore OSD を検索します。

    1. OSD 識別番号を取得します。

      [root@ceph-client ~]# ceph osd tree
    2. OSD が FileStore または BlueStore を使用しているかどうかを特定します。

      構文

      ceph osd metadata OSD_ID | grep osd_objectstore

      [root@ceph-client ~]# ceph osd metadata 0 | grep osd_objectstore
          "osd_objectstore": "filestore",

    3. FileStore デバイスと BlueStore デバイス数の現在の数を表示するには、次のコマンドを実行します。

      [root@ceph-client ~]# ceph osd count-metadata osd_objectstore
  2. FileStore OSD にマークが付けられます。

    ceph osd out OSD_ID
  3. データが OSD から移行されるまで待機します。

    while ! ceph osd safe-to-destroy OSD_ID ; do sleep 60 ; done
  4. OSD を停止します。

    systemctl stop ceph-osd@OSD_ID
  5. この OSD が使用しているデバイスを取得します。

    mount | grep /var/lib/ceph/osd/ceph-OSD_ID
  6. OSD をアンマウントします。

    umount /var/lib/ceph/osd/ceph-OSD_ID
  7. 手順 5 からの値を DEVICE として使用して、OSD データを破棄します。

    ceph-volume lvm zap DEVICE
    重要

    デバイスの内容が破壊されますので、非常に注意 してください。先に進む前に、デバイスのデータが不要で、ストレージクラスターが正常であることを確認してください。

    注記

    OSD が暗号化されている場合は、dmsetup remove を使用して OSD をザッピングする前に、osd-lockbox をアンマウントして暗号化を削除します。

    注記

    OSD に論理ボリュームが含まれている場合は、ceph-volume lvm zap コマンドで --destroy オプションを使用します。

  8. OSD が破棄されていることをストレージクラスターに認識させます。

    [root@ceph-client ~]# ceph osd destroy OSD_ID --yes-i-really-mean-it
  9. ステップ 5 の DEVICE と、同じ OSD_ID を使用して、OSD を BlueStore OSD として再プロビジョニングします。

    [root@ceph-client ~]# ceph-volume lvm create --bluestore --data DEVICE --osd-id OSD_ID
  10. この手順を繰り返します。

    注記

    新規 BlueStore OSD の再入力は、OSD を破棄する前にストレージクラスターが HEALTH_OK であることを確認していれば、次の FileStore OSD のドレイン (枯渇) と同時に発生する可能性があります。これを行わないと、データの冗長性が軽減され、リスクが高まるか、またはデータ損失の可能性が高まります。