CodeBuildでPython単体テストを自動化
223{icon} {views} TerraformでCodeBuildプロジェクトを構築し、非公開GitHubリポジトリからPythonのunittestを実行してビルド可否を判定する手順を紹介します。ソース認証には […]...
SQS→Lambdaでバッチ内の失敗メッセージだけ再試行する方法
978{icon} {views} バッチ内で失敗したメッセージのみ再実行したい場合、LambdaのイベントソースマッピングにReportBatchItemFailuresを指定し、失敗したメッセージIDを返せばよい。こ […]...
CloudWatch埋め込みメトリクスフォーマットを試す
407{icon} {views} aws-embedded-metricsを活用し、LambdaログをJSON形式で出力するだけでCloudWatchメトリクスが自動作成される。TerraformでIAMやスケジュール […]...
Aurora Data APIで踏み台なしでSQLを実行する
1.1k{icon} {views} Aurora Data APIを使えば、セキュリティグループの開放や踏み台サーバーが不要でHTTPS経由の直接クエリ実行が可能になります。Terraformやboto3との連携も容易 […]...
Auroraグローバルデータベースのマルチリージョンフェイルオーバーを試す
777{icon} {views} 複数リージョン間でAuroraのライター/リーダーの自動昇格やグローバルテーブルの切り替え動作をTerraformで構築し、フェイルオーバーを検証した。ボタン操作だけでプライマリの切り […]...
CloudFront+WAF+Secrets ManagerでALBへの直接アクセスを防ぐ方法
516{icon} {views} CloudFrontからのみカスタムヘッダーを付与し、WAFがSecrets Managerの値と一致しないリクエストをブロックする構成です。ヘッダーをローテーションすることで、固定値 […]...
API GatewayにKinesis Data StreamsをつけてLambdaのスロットリングを回避する
395{icon} {views} API GatewayからKinesis Data Streamsへ直接データを流し込み、LambdaがポーリングしてDynamoDBへ書き込むことで大量リクエストでもスロットリングを […]...
Route 53の多彩なルーティングとフェイルオーバー手法
1.1k{icon} {views} Amazon Route 53ではフェイルオーバーや複数回答、加重、レイテンシーなどのさまざまなルーティング機能を用いて高可用性を実現できます。NLBやGlobal Accelera […]...
Route 53を使ったマルチリージョンのフェイルオーバーを試す
673{icon} {views} Route 53のフェイルオーバールーティングを中心にALBやACMなどを複数リージョンで組み合わせ、プライマリ障害時にセカンダリへ切り替わる仕組みをTerraformで実装した事例。 […]...
Aurora Searverlessのゼロキャパシティを試す
382{icon} {views} Aurora Serverless v2の自動停止と再開を試し、ゼロキャパシティからの復帰が約15~18秒であることを確認します。ベクトルデータベースを用いた構成で、生じるレイテンシー […]...