本日も乙スマートフォン用の表示で見る本日も乙ただの自己満足な備忘録。S3[toc]AWSでタグ付けによるコストの割り当て(コストアロケーション)をしている方が多いと思います。私が所属する組織でもタグ付けによってAWS料金を分けることをしています。コストの分割をやりやすくしてくれるので嬉しい機能ですが、ついついタグ付けを忘れがちになります。S3のようなサービスはバケット作成やオブジェクトの設置は簡単にできるので、急ぎでバケットを作った場合などタグ付けを忘れてしまうこともあります。タグ付けという行為をもっと楽にできないかなと考え、S3バケット作成時に自動的にタグを付ける方法をやってみたので紹介します。AWSのAPIコールや状態の変化などのイベントをキャッチして処理を行える機能です。今回は「S3バケットの作成」というイベントをキャッチして処理を行うようにします。Lambdaはサーバレスでスクリプトを実行できる機能です。Eventsでキャッチしたイベント(S3バケットの作成)でLambda関数(スクリプト)を実行(発火)させて、S3バケットにタグを付けます。Lambda次のようなスクリプトでLambda関数(今回はTaggingWhenS3Bucketという名前)を作成します。付与するタグセットですので任意のタグセットに変更しておきましょう。Lambda関数に紐付けるIAMロールに次のような権限を付与します。EventsCloudWatchのマネジメントコンソールにアクセスし、「ルール」をクリックし、「ルールの作成」をクリックします。図のようにイベントを設定し、ターゲットに先ほど作成したLambda関数を指定します。実際にS3バケットを作成してタグが付与されたか確認してみてください。タグが付与されるのには5分程度のタイムラグがあります。Logsを見てエラーが出ていないかを確認してみてください。Lambdaを組み合わせることで、EC2インスタンスなど実行サーバを用意しなくても、S3バケット作成時に自動的にタグを付ける方法を紹介しました。今回はS3バケット作成時のみでしたが、他のリソースにも応用できますのでぜひ色々試してみてください。月別アーカイブはてなブログをはじめよう!ohsawa0515さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。