状況
1 時間ごとに cron で動く掃除スクリプトの誤りで、本番バケット(バージョニング有効)の images/ 配下が大量に削除された。ライフサイクルルールには、非現行バージョンを 1 日後に完全削除する設定がある。
対応する順番として、最も適切なものは?
- A削除マーカーを消して、オブジェクトを復元する
- B非現行バージョンを削除するライフサイクルルールを止める
- Ccron の掃除スクリプトを止める
- D消えたプレフィックスと件数を洗い出す
正答
- C → B → D → A
- A → D → B → C
- D → A → C → B
- B → A → C → D
解説
まず、被害を広げている元を止める。スクリプトは 1 時間ごとに再実行されるので、放っておくと削除が続く(C)。次に、非現行バージョンを 1 日後に完全削除するルールを止める。今回の削除で元のデータは非現行バージョンになったので、ルールが働くと復元の手段が無くなる(B)。期限はスクリプトより長いが、止める操作は数分で済む。そのうえで、どのプレフィックスの何件が消えたかを洗い出し(D)、対象を確定してから削除マーカーを消して復元する(A)。範囲を確かめずに復元を始めると、意図して消したものまで戻したり、途中で次の削除に上書きされたりする。
この問題を含む AWS のテストを制限時間つきで解く
AWSクイズへ