1.3.8. Ansible を使用した Ceph OSD の削除

Red Hat Ceph Storage クラスターの容量をスケールダウンしないといけない場合があります。Ansible を使用して Red Hat Ceph Storage クラスターから OSD を削除するには、Playbook の shrink-osd.yml を実行します。

重要

ストレージクラスターから OSD を削除すると、その OSD に含まれるすべてのデータが破棄されます。

重要

OSD を削除する前に、クラスターにリバランスするのに十分な容量があることを確認します。

重要

配置グループが active+clean 状態にあり、OSD に同じオブジェクトのレプリカやイレイジャーコーディングシャードが含まれない限り、OSD を同時に削除しないでください。不明な場合は、Red Hat サポート にお問い合わせください。

前提条件

  • Ansible によりデプロイされた実行中の Red Hat Ceph Storage
  • 実行中の Ansible 管理ノード

手順

  1. /usr/share/ceph-ansible/ ディレクトリーに移動します。

    構文

    [user@admin ~]$ cd /usr/share/ceph-ansible

  2. Ceph Monitor ノードの /etc/ceph/ から、削除する OSD が含まれるノードに管理キーリングをコピーします。
  3. Ceph の通常のデプロイメントまたはコンテナー化されたデプロイメント向けに Ansible Playbook を実行します。

    構文

    ansible-playbook infrastructure-playbooks/shrink-osd.yml -e osd_to_kill=ID -u ANSIBLE_USER_NAME -i hosts

    以下を置き換えます。

    • ID は、OSD ノードの ID に置き換えます。複数の OSD を削除するには、OSD ID をコンマで区切ります。
    • ANSIBLE_USER_NAME は、Ansible ユーザーの名前に置き換えてください。

    [user@admin ceph-ansible]$ ansible-playbook infrastructure-playbooks/shrink-osd.yml -e osd_to_kill=1 -u user -i hosts

  4. OSD が正常に削除されていることを確認します。

    構文

    [root@mon ~]# ceph osd tree

関連情報