2.9. trash コマンドを使用したブロックデバイスイメージの管理
RADOS Block Device (RBD) イメージは、rbd trash
コマンドを使用してゴミ箱に移動できます。
このコマンドは、以下のようなさまざまなオプションを使用できます。
- ゴミ箱からイメージを取り除く。
- ゴミ箱からイメージを一覧表示する。
- ゴミ箱からのイメージの削除を延期する。
- ゴミ箱からイメージを削除する。
- ゴミ箱からのイメージを復元する。
- ゴミ箱からイメージの復元して、名前を変更する。
- ゴミ箱から期限切れのイメージをパージする。
- ゴミ箱からパージをスケジューリングする。
前提条件
- 稼働中の Red Hat Ceph Storage クラスターがある。
- クライアントノードへの root レベルのアクセス。
手順
イメージをゴミ箱に移動します。
構文
rbd trash mv POOL_NAME/IMAGE_NAME
例
[root@rbd-client ~]# rbd trash mv mypool/myimage
イメージがゴミ箱に入ると、一意のイメージ ID が割り当てられます。
注記ゴミ箱オプションのいずれかを使用する必要がある場合は、後でこのイメージを指定するのにこのイメージ ID が必要です。
ゴミ箱のイメージを一覧表示します。
構文
rbd trash ls POOL_NAME
例
[root@rbd-client ~]# rbd trash ls mypool 1558a57fa43b rename_image
一意の IMAGE_ID
1558a57fa43b
は、任意のtrash
オプションに使用できます。イメージをゴミ箱に移動し、ゴミ箱からイメージの削除を延期します。
構文
rbd trash mv POOL_NAME/IMAGE_NAME --expires-at "EXPIRATION_TIME"
EXPIRATION_TIME は、"HH:MM:SS" または "tomorrow" の秒数、時間、日付、時間です。
例
[root@rbd-client ~]# rbd trash mv mypool/myimage --expires-at "60 seconds"
この例では、
myimage
はごみ箱に移動します。ただし、60 秒経過するまでゴミ箱から削除できません。ゴミ箱からイメージを復元します。
構文
rbd trash restore POOL_NAME/IMAGE_ID
例
[root@rbd-client ~]# rbd trash restore mypool/14502ff9ee4d
ゴミ箱からイメージを削除します。
構文
rbd trash rm POOL_NAME/IMAGE_ID [--force]
例
[root@rbd-client ~]# rbd trash rm mypool/14502ff9ee4d Removing image: 100% complete...done.
イメージの削除を延期した場合は、有効期限までゴミ箱から削除できません。以下のエラーメッセージが表示されます。
例
Deferment time has not expired, please use --force if you really want to remove the image Removing image: 0% complete...failed. 2021-12-02 06:37:49.573 7fb5d237a500 -1 librbd::api::Trash: remove: error: deferment time has not expired.
重要イメージをゴミ箱から削除したら、復元できません。
イメージの名前を変更し、ゴミ箱から元の場所に戻します。
構文
rbd trash restore POOL_NAME/IMAGE_ID --image NEW_IMAGE_NAME
例
[root@rbd-client ~]# rbd trash restore mypool/14502ff9ee4d --image test_image
ゴミ箱から期限切れのイメージを削除します。
構文
rbd trash purge POOL_NAME
例
[root@rbd-client ~]# rbd trash purge mypool
この例では、
mypool
からゴミ箱に移動したイメージをすべて削除します。