AWS S3のバケット名について、以下のような場面があると思います。
・名前のスペルを誤って作成してしまったことに、データを保存してから気付いた
・よりデータ保存先がわかりやすい名前に変更したい
この記事では、このような際に手軽にS3バケット名を変更する方法を紹介します。
概要
バケット作成後は直接バケット名を変更することはできません。
実際には以下の操作を行います。
①. 新しい名前のバケットを作成
②. 保存データを旧バケット→新バケットに転送
③. 旧バケットを削除
CloudShellを利用する理由
データ転送を行う際に、AWS CLIを利用します。
そのため、本記事と似たような内容を扱っている記事ではどれも、AWS CLIのインストール・認証を前準備として伴います。
しかし、ちょっとした名前変更のために環境構築をするのは正直面倒くさいですよね...
そこで、AWS CloudShellを利用すれば上記の前準備は省略できます!
※マネジメントコンソール上のGUIで行うことも可能ですが、ヒューマンエラーを防ぐ意味でもCLIを利用する方が良いと考えました。
実際の操作
以下の例ではバケット名を「bucket-old-2024」から「bucket-new-2024」に変更します。
①
新規に「bucket-new-2024」を作成します。
②
マネジメントコンソールから、CloudShellサービスにアクセスします。
CloudShell上で以下のコマンドを実行します
aws s3 sync s3://bucket-old-2024 s3://bucket-new-2024
これだけで「bucket-old-2024」に保存していた全てのオブジェクトがコピーされます。
③
問題なく転送できたことを確認したら「bucket-old-2024」を削除します。
以上でバケット名の変更完了です。
終わりに
今回のS3バケット名変更のように、CLIで少しいじりたいだけの時はCloudShellが便利だと感じました。
(私はCLIをインストールするしか頭になかったですが、職場の先輩にCloudShellで良くない?と教えていただきました)
最後までご覧いただきありがとうございました!