4.13. Ansible を使用した Ceph File System の削除
ceph-ansible
を使用して Ceph File System( CephFS) を削除することができます。その前に、すべてのデータのバックアップを作成し、すべてのクライアントがローカルにファイルシステムのマウントを解除していることを確認します。
この操作は破壊的で、Ceph File System に保存されているデータが永続的にアクセスできないようにします。
前提条件
- 稼働中の Red Hat Ceph Storage クラスターがある。
- データの適切なバックアップ。
- すべてのクライアントが Ceph File System をアンマウントしている。
- Ansible 管理ノードへのアクセス
- Ceph Monitor ノードへの root レベルのアクセス。
手順
/usr/share/ceph-ansible
ディレクトリーに移動します。[admin@admin ~]$ cd /usr/share/ceph-ansible
Ansible インベントリーファイルの
[mdss]
セクションを確認して、Ceph Metadata Server (MDS) ノードを特定します。Ansible 管理ノードで/usr/share/ceph-ansible/hosts
を開きます。例
[mdss] cluster1-node5 cluster1-node6
この例では、
cluster1-node5
およびcluster1-node6
は MDS ノードです。max_mds
パラメーターを1
に設定します。構文
ceph fs set NAME max_mds NUMBER
例
[root@mon ~]# ceph fs set cephfs max_mds 1
削除するメタデータサーバー (MDS) を指定して、Playbook
shrink-mds.yml
を実行します。構文
ansible-playbook infrastructure-playbooks/shrink-mds.yml -e mds_to_kill=MDS_NODE -i hosts
MDS_NODE を、削除するメタデータサーバーノードに置き換えます。Ansible Playbook から、クラスターを縮小するかどうかを尋ねられます。
yes
と入力して、Enter キーを押します。例
[admin@admin ceph-ansible]$ ansible-playbook infrastructure-playbooks/shrink-mds.yml -e mds_to_kill=cluster1-node6 -i hosts
オプション: 追加の MDS ノードのプロセスを繰り返します。
構文
ansible-playbook infrastructure-playbooks/shrink-mds.yml -e mds_to_kill=MDS_NODE -i hosts
MDS_NODE を、削除するメタデータサーバーノードに置き換えます。Ansible Playbook から、クラスターを縮小するかどうかを尋ねられます。
yes
と入力して、Enter キーを押します。例
[admin@admin ceph-ansible]$ ansible-playbook infrastructure-playbooks/shrink-mds.yml -e mds_to_kill=cluster1-node5 -i hosts
CephFS のステータスを確認します。
構文
ceph fs status
例
[root@mon ~]# ceph fs status cephfs - 0 clients ====== +------+--------+----------------+---------------+-------+-------+ | Rank | State | MDS | Activity | dns | inos | +------+--------+----------------+---------------+-------+-------+ | 0 | failed | cluster1-node6 | Reqs: 0 /s | 10 | 13 | +------+--------+----------------+---------------+-------+-------+ +-----------------+----------+-------+-------+ | Pool | type | used | avail | +-----------------+----------+-------+-------+ | cephfs_metadata | metadata | 2688k | 15.0G | | cephfs_data | data | 0 | 15.0G | +-----------------+----------+-------+-------+ +----------------+ | Standby MDS | +----------------+ | cluster1-node5 | +----------------+
mdss
セクションとその中のノードを Ansible インベントリーファイルから削除して、site.yml
またはsite-container.yml
Playbook の今後の実行でメタデータサーバーとして再プロビジョニングされないようにします。Ansible インベントリーファイル/usr/share/ceph-ansible/hosts
を編集するために開きます。例
[mdss] cluster1-node5 cluster1-node6
[mdss]
セクションと、その下のすべてのノードを削除します。CephFS を削除します。
構文
ceph fs rm FS_NAME --yes-i-really-mean-it
FS_NAME は、削除する Ceph File System の名前に置き換えます。
例
[root@mon]# ceph fs rm cephfs --yes-i-really-mean-it
オプション: CephFS が使用したプールを削除します。
Ceph Monitor ノードで、プールを一覧表示します。
構文
ceph osd pool ls
CephFS が使用したプールを見つけます。
例
[root@mon ~]# ceph osd pool ls rbd cephfs_data cephfs_metadata
この出力例では、
cephfs_metadata
およびcephfs_data
は CephFS によって使用されたプールです。メタデータプールを削除します。
構文
ceph osd pool delete CEPH_METADATA_POOL CEPH_METADATA_POOL --yes-i-really-really-mean-it
プール名を 2 回追加することで、CEPH_METADATA_POOL をメタデータストレージに使用されるプール CephFS に置き換えます。
例
[root@mon ~]# ceph osd pool delete cephfs_metadata cephfs_metadata --yes-i-really-really-mean-it pool 'cephfs_metadata' removed
データプールを削除します。
構文
ceph osd pool delete CEPH_DATA_POOL CEPH_DATA_POOL --yes-i-really-really-mean-it
プール名を 2 回追加することで、CEPH_METADATA_POOL をメタデータストレージに使用されるプール CephFS に置き換えます。
例
[root@mon ~]# ceph osd pool delete cephfs_data cephfs_data --yes-i-really-really-mean-it pool 'cephfs_data' removed
そのプールが存在しないことを確認します。
例
[root@mon ~]# ceph osd pool ls rbd
cephfs_metadata
プールおよびcephfs_data
プールは一覧表示されなくなりました。
関連情報
- Red Hat Ceph Storage File System Guide の Removing a Ceph File System Manually を参照してください。
- Red Hat Ceph Storage 戦略ガイドの プールの削除 セクションを参照してください。