kakakakakku blog

Weekly Tech Blog: Keep on Learning!

S3

Amazon S3 Vectors に入門できるコンテンツ「Tutorial: Getting started with S3 Vectors」

2025年7月15日にプレビューでリリースされた Amazon S3 Vectors を試してみたいな〜❗️と思って,ドキュメントにある公式チュートリアル「Tutorial: Getting started with S3 Vectors」を試してみた. docs.aws.amazon.com Amazon S3 Vectors に入門できる最…

S3 バケットの「バージョニング」と「ライフサイクル」を組み合わせてファイルを数日後に削除する

Amazon S3 バケットにあるファイル(オブジェクト)をアプリケーションから削除しつつ,誤った削除(オペレーションミスなど)を考慮して数日間はファイルを戻せるようにしておきたいという要件があったとする アプリケーション側で頑張って仕組みを作り込む…

tflocal を使って Terraform から LocalStack にデプロイしよう

Terraform から LocalStack にデプロイする場合,以下のように provider.tf の provider 設定で LocalStack のエンドポイントを参照するように実装する必要がある provider "aws" { region = "ap-northeast-1" access_key = "DUMMY" secret_key = "DUMMY" s3…

Terraform S3 Backend でステートロックのための DynamoDB が不要になる use_lockfile = true

Terraform v1.10.0 で導入された S3 Backend の use_lockfile オプションを使うと,Amazon S3 バケットで tfstate を管理しつつ,Amazon S3 のネイティブ機能 (conditional writes) でステートロックも実現できる今までステートロックのために使っていた Ama…

S3 Object Lambda に入門できるチュートリアル「Using Amazon S3 Object Lambda to Dynamically Watermark Images as They Are Retrieved」

最近アーキテクチャレビュー会をしているときに「そういえば Amazon S3 Object Lambda ってあったな〜」という話になった Amazon S3 Object Lambda は 2021年にリリースされてて,リリース直後に試した記憶はあるけど最近は使う機会がなかったな〜と思って,…

LocalStack v3.7 の新機能!Amazon S3 の conditional writes(条件付き書き込み)を試す

2024年8月20日に Amazon S3 の conditional writes(条件付き書き込み)がサポートされたオブジェクトの上書きを防ぐ仕組みを独自実装せず,Amazon S3 に任せられるようになるところがメリットだと思う. aws.amazon.com 試す さっそく PutObject を試す.AW…

フォルダオブジェクトの有無によって aws s3api list-objects-v2 コマンドの結果が異なる

AWS CLI で Amazon S3 の aws s3api list-objects-v2 コマンドを使ってオブジェクト数をカウントしてたときに少しハマったことがあって簡単にメモしておこうと思う awscli.amazonaws.com 起きたこと 例えば Amazon S3 バケットに folder/file.txt というオブ…

AWS Step Functions で AWS Lambda 関数を使わず Amazon S3 にオブジェクトをアップロードする

AWS Step Functions でワークフローを構築しているときに AWS Step Functions の実行時に渡すインプットの一部をファイルとして Amazon S3 に保存したいという場面があったりする❗️実際に最近あった \( 'ω')/ もちろん AWS Lambda 関数を追加すれば柔軟で…

Amazon S3 署名付き URL 経由のアップロードでオブジェクトメタデータを設定する

Amazon S3 署名付き URL を発行してオブジェクトをアップロードするときに「オブジェクトメタデータ」も設定できるできるのかな〜と気になって試してみたらできた.署名付き URL 経由でアップロードされたオブジェクトに対して付加情報を設定しておくという…

boto3 Config で Amazon S3 Transfer Acceleration エンドポイントを使えるようにする

Amazon S3 で Transfer Acceleration を有効化すると,エッジロケーションを活用してオブジェクトを高速にアップロード・ダウンロードできるようになる.そして bucketname.s3-accelerate.amazonaws.com というエンドポイントが追加される aws.amazon.com do…

AWS CDK でプレフィックス集計のために Amazon S3 Storage Lens を設定する

Amazon S3 でオブジェクトの使用状況(合計サイズ・平均サイズなど)を「プレフィックス別(フォルダ別)」で可視化する場合,Amazon S3 Storage Lens の「高度なメトリクスとレコメンデーション機能」で「プレフィックス集計」を設定する❗️ docs.aws.amazon…

Amazon S3 のマルチパートアップロード・署名付き URL・Transfer Acceleration を組み合わせてファイルをアップロードするソリューション

Amazon S3 バケットにサイズの大きなファイルをアップロードするソリューション aws-samples/amazon-s3-multipart-upload-transfer-acceleration を試した❗️このソリューションは Amazon S3 の機能「マルチパートアップロード」と「署名付き URL」と「Transf…

AWS CDK でローカルファイルを Amazon S3 にアップロードできる aws_s3_deployment

AWS CDK で aws_s3_deployment モジュールを使うとローカルにある ZIP ファイル・ディレクトリなどを Amazon S3 にアップロードできる❗️使いどころとしては,静的ファイル・設定ファイル・データセットなどのアップロードも AWS CDK のワークフローに含めて …

Terraform で ALB のアクセスログを設定するときに InvalidConfigurationRequest と出たら

Terraform で ALB (Application Load Balancer) を構築するときに「アクセスログ」を Amazon S3 に流す設定をすると,以下のように InvalidConfigurationRequest というエラーが出る場合がある⚡️エラーをよく読むと Please check S3bucket permission と書い…