Terraform
Security Hub CSPM の AWS Foundational Security Best Practices (FSBP) で [EC2.182] Amazon EBS Snapshots should not be publicly accessible という警告が出ていた docs.aws.amazon.com EC2.182 とは [EC2.182] Amazon EBS Snapshots should not be pub…
2026年2月に Amazon CloudWatch Alarm の「ミュートルール (Mute Rules)」 という新機能がリリースされた❗️ 計画メンテナンスのときなど Amazon CloudWatch Alarm のアクションを一時的に止めたい場合に今までだと「無効化」を設定する必要があった.もしく…
Terraform で環境ごとにリソースの有無を制御する場合や段階的にリソースを有効化するような場合に count を三項演算子のように使って制御できる. developer.hashicorp.com しかし count を使うと aws_sqs_queue.sandbox[0] のようにリソース id にインデッ…
2025年11月にリリースされた「AWS Lambda Managed Instances」を使うと Amazon EC2 上で AWS Lambda 関数を実行できる.AWS Lambda の良さ(お手軽さ)を残しつつ,Amazon EC2 で実行することによってコールドスタートを解消できたり,GPU インスタンスを選…
2026年1月に発表された Amazon ECR のブロブマウンティング (Blob mounting) を有効化すると Amazon ECR リポジトリ間で同じレイヤーを共有できてイメージのプッシュを高速化できる. aws.amazon.com docs.aws.amazon.com Terraform AWS Provider v6.29.0 Te…
Terraform のステートをデータベースで管理して tfstate 管理のボトルネック解消を目指す Stategraph という新プロダクトがある.ウェブサイトに書いてある Plans in seconds, not minutes はインパクトがある2026年2月25日に開催された Stategraph Demo Day…
Terraform プロジェクトの静的解析ツールとして TFLint と TFLint Ruleset for terraform-provider-aws (tflint-ruleset-aws) をよく使っている 最近 tflint-ruleset-aws のコードを読んでいたら「Deep Checking」という機能があることを知って,試してみる…
Terraform AWS Provider v6 から「リソースレベルで」リージョンを指定できる.たとえばプロバイダーで ap-northeast-1 リージョンを指定しつつ,Amazon ECR リポジトリを us-east-1 リージョンにデプロイする場合は以下のように実装すれば OK resource "aws…
2026年2月4日にリリースされた Terraform AWS Provider v6.31.0 で新しく aws_account_regions データソースが追加されていた気になって試してみることにした. 一言で言うと「AWS Organizations のメンバーアカウントで有効化されているリージョン情報」を…
Amazon CloudFront 標準ログ v2(アクセスログ)を Amazon S3 に保存する構成を Terraform で実装する機会があった.個人環境で検証したことをまとめておこうと思う❗️ docs.aws.amazon.com Amazon S3 関連 まずは Amazon CloudFront 標準ログ v2(アクセスロ…
Amazon CloudFront VPC origins を使うとプライベートサブネットにデプロイしたリソース(具体的には Application Load Balancer / Network Load Balancer / Amazon EC2)を Amazon CloudFront 経由で直接配信できる パブリックサブネットにリソースをデプロ…
2025年12月に正式リリースとなった「Terraform Actions」に入門できるチュートリアル「Invoke actions with Terraform」を試してみた AWS と Azure で試せるようになっていて,今回は AWS にした. developer.hashicorp.com Terraform Actions Terraform Act…
lambroll を使って AWS Lambda 関数をデプロイしてる環境で動作確認のために LocalStack にもデプロイしたいという相談があって,検証環境を作る機会があった.結果的に問題なくデプロイできた個人環境で検証したことをまとめておく. github.com 今回の構成…
2025年12月4日にリリースされた Terraform AWS Provider v6.25.0 で Amazon Athena の「マネージドクエリ結果 (Managed query results)」がサポートされた github.com マネージドクエリ結果は2025年6月にリリースされた新機能で,クエリ結果を保存する Amazo…
HashiCorp 公式の Terraform サンドボックス環境「Terraform sandboxes」を使うとブラウザ上で Terraform の勉強ができるLocalStack(AWS エミュレータ)もプリインストールされてて Terraform AWS Provider の勉強にもなる. 最近までなかったように思うけ…
Terraform AWS Provider v6 から「リソースレベルで」リージョンを指定できるようになった️ 今まではエイリアス付きのプロバイダーを定義する必要があった.詳しくは Terraform AWS provider 6.0 now generally available に載っている. 最近カスタムドメイ…
Terraform TLS Provider を使うと Terraform で秘密鍵などを生成できる️ registry.terraform.io ちなみにドキュメントには以下のように書いてあって,tfstate にシークレットが含まれるためプロダクション環境での利用は避けると良さそう. Because of these…
Terraform AWS Provider v6 へのバージョンアップを数回やっていて(既に4プロジェクトほどやった)そのときによく遭遇するのが aws_region データソースの name プロパティが deprecated になった件で,v6 以降は region プロパティを使う必要がある. name…
AWS WAF を使ってアプリケーションに Basic 認証を設定できる️Basic 認証のセキュリティレベルを理解した上で一時的な社内用途などで使いたいという場面はあると思う. 今回は AWS WAF + ALB(固定レスポンス)という簡単な組み合わせを Terraform で実装し…
2024年8月にリリースされた Cloudflare Terraform Provider v4.40.0 で Cloudflare Zero Trust 関連のリソースに変更があって,多くのリソースが deprecated になっている.よって,現在最新の v5 にアップデートするためにはリソースの変更に対応する必要が…
Terraform で Amazon S3 バックエンドを使う場合に「Amazon S3 バケット自体をどうやってデプロイする?」というブートストラップ問題がある.よく聞く選択肢としてはマネジメントコンソール・AWS CLI・AWS CloudFormation などがある.他にも Terraform で…
AWS Security Hub の AWS Foundational Security Best Practices (FSBP) で [SSM.7] SSM documents should have the block public sharing setting enabled という警告が出ていた docs.aws.amazon.com SSM.7 とは [SSM.7] SSM documents should have the blo…
Terraform で aws_lb_listener を使って ALB (Application Load Balancer) のリスナーをデプロイするときに default_action ブロックに複数のターゲットグループへの加重ルーティングを設定できる ドキュメントを抜粋すると以下のように書いてある.default_…
Terraform プロジェクトで environments ディレクトリを使って環境別のリソースを管理しているときに(Terraform on Google Cloud に載っている構成)Dependabot で Terraform AWS Provider のアップデートを「1つのプルリクエストにまとめたい」という場面…
Moto を使えば AWS アカウントなしで Terraform のチュートリアル「Use configuration to move resources」を実施できるよ〜という紹介記事を前に書いた kakakakakku.hatenablog.com 今度は Terraform のチュートリアル「Manage similar resources with coun…
2025年6月22日に HashiCorp 公式の認定試験「HashiCorp Certified: Terraform Authoring and Operations Professional」を受験して合格した❗️やったー \( 'ω')/ 試験問題に関係する内容は NDA を厳守するため書かず,今回は「試験紹介(普及のため!)」と…
Moto は LocalStack の内部でも使われている AWS モックツールで,Moto (Server Mode) を使えば http://localhost:5000 で AWS API を呼び出せるようになる github.com Moto を使って AWS アカウントなしで Terraform のチュートリアルを実行できたら勉強す…
HashiCorp から公式に提供されている Terraform MCP Server(AWS Terraform MCP Server ではなく♂️)の導入検証をする機会があった試したことを簡単にまとめておこうと思う. github.com Terraform MCP Server Terraform MCP Server で使えるツールは現状4…
Amazon Inspector で特定の CVE を一時的に検出対象から除外したいときに「抑制ルール」を活用できる docs.aws.amazon.com Terraform AWS Provider 以外の選択肢 しかし最近までは Terraform AWS Provider で「Amazon Inspector 抑制ルール」を設定すること…
Branch Deploy Action (branch-deploy) を使って Terraform をデプロイする仕組みを以下の記事にまとめたプルリクエストに .plan や .apply とコメントするとデプロイできるという IssueOps を実現できる kakakakakku.hatenablog.com 前に書いた記事では「1…