Terraform
nextpublishing.jp terraform import 単一リソースのインポート 準備 インポートの実行 コードの修正 関連リソースのインポート terraformer 準備 指定したリソースのインポート terraform import 単一リソースのインポート 準備 aws ec2 create-vpc --cidr-…
nextpublishing.jp tfstateファイルのバックアップ ステートの参照 terraform state list terraform state show terraform state pull ステートの上書き tfstateファイルの書き換え, terraform state push ステートからリソースを削除 準備 terraform state …
nextpublishing.jp Terraformバージョンを固定する ブロバイダバージョンを固定する 削除操作を抑止する コードフォーマットをかける バリデーションをかける オートコンプリートを有効にする プラグインキャッシュを有効にする TFLintで不正なコードを検出…
nextpublishing.jp 三項演算子 複数リソース作成 リソース作成制御 データソース 主要な組み込み関数 ランダム文字列 Multipleプロバイダ Dynamic blocks 三項演算子 variable "env" {} resource "aws_instance" "example" { ami = "ami-0c3fd0f5d33134a76" …
nextpublishing.jp ElastiCache ElastiCacheパラメータグループ ElastiCacheサブネットグループ ElastiCacheレプリケーショングループ github.com ElastiCache ElastiCacheパラメータグループ クラスタモード有効/無効を選択する 公式 今回は無効 resource "…
nextpublishing.jp RDS: Relational Database Service DBパラメータグループ DBオプショングループ DBサブネットグループ DBインスタンス マスターパスワードの変更 【補】後始末 github.com RDS: Relational Database Service DBパラメータグループ my.cnf…
やりたいこと AWS STS AssumeRole 試す 構築 IAM Role IAM User, S3 Bucket AssumeRole前、S3にPutObjectできないことを確認する AssumeRoleし、S3にPutObjectできることを確認する まとめ IAM Roleを使わない(使いたくない)理由ってなんだろうあるのかな— …
nextpublishing.jp コンテナの設定管理 SSMパラメータストア Terraformによるコード化 よくない よい コード化する必要ある? SSMパラメータストアとECSの統合 https://github.com/wand2016/terraform_ch12_example コンテナの設定管理 実行環境ごとに異なる…
nextpublishing.jp バッチ設計 ECS Scheduled Tasks タスク定義・コンテナ定義 CloudWatch Events CloudWatchイベントIAMロール CloudWatchイベントターゲット バッチ設計 エラーハンドリング 通知 ロギング リトライ 自動 手動 リトライできるように設計さ…
nextpublishing.jp ECSの構成要素 ECSの起動タイプ Webサーバーの構築 ECSクラスタ(Fargate) タスク定義 ECSサービス コンテナの動作確認 Fargateにおけるロギング CloudWatch Logs ECSタスク実行IAMロール Dockerコンテナのロギング github.com ECSの構成要…
nextpublishing.jp Route 53 ドメインの登録 ホストゾーン DNSレコード ACM: AWS Certificate Manager SSL証明書の検証 (DNSによる) HTTPS用ロードバランサー HTTP->HTTPSリダイレクト ここまでに作ったリスナー リクエストフォワーディング ターゲットグル…
nextpublishing.jp HTTP用ロードバランサー リスナー 【追記】terraform destroyでハング github.com HTTP用ロードバランサー resource "aws_lb" "example" { name = "example" load_balancer_type = "application" internal = false idle_timeout = 60 enab…
nextpublishing.jp KMS: Key Management Service KMS: Key Management Service 公式/AWS Key Management Service の概念 AWS KMS カスタマーマスターキー (CMK) を使用して、データキーの生成、暗号化、復号化を実行する CMKで直接暗号化・復号化は行わない …
nextpublishing.jp パブリックネットワーク VPC: Virtual Private Cloud パブリックサブネット インターネットゲートウェイ・ルートテーブル ルート ルートテーブルの関連付け プライベートネットワーク プライベートサブネット ルートテーブル作成・関連付…
nextpublishing.jp プライベートバケット 【補習】SSE-KMS ブロックパブリックアクセス パブリックバケット ログバケット ログローテーションバケット・バケットポリシー 【補習】SSE-KMS暗号化を強制するバケットポリシーを作ってみる github.com プライベ…
nextpublishing.jp ポリシー ロール 信頼ポリシー IAMロール作成、IAMポリシーアタッチ github.com ポリシー main.tf data "aws_iam_policy_document" "allow_describe_regions" { statement { effect = "Allow" actions = ["ec2:DescribeRegions"] resource…
nextpublishing.jp 変数 ローカル変数 出力値 データソース プロバイダ 参照 組み込み関数 モジュール github.com 変数 variable "example_instance_type" { default = "t3.micro" } resource "aws_instance" "example" { ami = "ami-0c3fd0f5d33134a76" ins…
nextpublishing.jp リソースの作成 更新、再構築、削除 tfstateファイル github.com リソースの作成 最初にやるやつ docker-compose run terraform init Creating network "terraform-practice_default" with the default driver Initializing the backend..…
nextpublishing.jp AWS IAMユーザー AWS CLI, クレデンシャル Terraform git-secrets AWS IAMユーザー 練習用に、とりあえずのAdministratorAccess権限のユーザをつくる 本番運用ではちゃんとminimum privilegeでつくろうね AWS CLI, クレデンシャル 生で入…