LoginSignup
26
26

More than 5 years have passed since last update.

S3の100万オブジェクトを簡単に消す方法

Last updated at Posted at 2015-07-08

はじめに

とある案件のクロージングでS3のオブジェクトを消すのにちょっと苦労したので、その共有です。時間のない方はまとめだけよむとよいです。

マネジメントコンソールから消す 1日目

AWSマネジメントコンソールにログインして、S3に移動、バケットを選択して「delete」
次の日になったら消えるだろうということで、その日はそのまま帰りました。

マネジメントコンソールから消す 2日目、朝

朝、会社にくると、まったく消えていませんでした。STSをつかったログインだったので1時間程度で削除権限がなくなったようです。
IAMユーザーを作成して、そのユーザーで削除を実行しました。
その間、別の作業をすることにしました。

マネジメントコンソールから消す 2日目、夜

夜、朝の作業をおもいだし、実行結果を確認しようとしました。
ですが、削除処理を実行しているブラウザ画面がどこかにいってしまいました。たぶん、別のページにリロードしてしまったのでしょう。バケットにオブジェクトは一杯のこっている雰囲気です。

ここで、S3のライフサイクルルールをおもいだしました。これは
「S3のオブジェクトに有効期限を設定する」
という機能で、期限のたったオブジェクトをアーカイブ(gracierに保存)、失効(削除される)が可能です。

ライフサイクルをつかった削除方法

バケットを選択して、ライフサイクルを選択、「ルールを追加する」をクリックします。
スクリーンショット 2015-07-08 21.05.37.png

バケット単位の場合はなにも変更せず「ルールの設定」をクリック、一部のオブジェクトを消したい場合はプレフィックスを設定します。

スクリーンショット 2015-07-08 21.00.50.png

最新バージョンの操作は「失効のみ」を選択します。
失効する日は1日後(1が最小値です)。
「レビュー」をクリック
スクリーンショット 2015-07-08 21.00.10.png

必要ならルール名を入力して「ルールの作成と有効化」をクリック
スクリーンショット 2015-07-08 21.10.09.png

バケット画面をみるとルールが追加されていることが確認できます。
スクリーンショット 2015-07-08 21.10.36.png

マネジメントコンソールから消す 3日目、昼

UTCだと日付の区切りが朝9:00なので、少し時間をまってお昼に確認したところ無事全部のオブジェクトが削除されていました。メデタシメデタシ。

まとめ

S3の100万オブジェクトの削除は時間がかかるので、ライフサイクルルールをつかうとよいです。一日かかりますが、確実にファイルは消えます。
でも、これ間違って使うと恐ろしい機能ですのでご注意ください。

26
26
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
26
26