Terraform

【Terraform】Terraform ~ AWS VPC ~

■ はじめに 今回は、Terraform で AWS VPC を作成することについて まとめておく。 目次 【1】VPC 【2】Subnet 【3】Security Group 【1】VPC https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/vpc 主な項目 Items Explana…

【Terraform】Terraform ~ provider ~

■ はじめに 今更だが、Terraform で AWS環境へデプロイする際に必要な provider について扱ってなかったので、メモ 目次 【1】AWS環境にデプロイする際に必要な要素 【2】provider 【3】AWS Provider 1)Argument Reference 【1】AWS環境にデプロイする…

【Terraform】Terraform ~ null_resource / terraform_data ~

■ はじめに https://dk521123.hatenablog.com/entry/2023/05/23/002314 などで使う機会があった Terraform の null_resource について ちゃんと理解する 勉強中に、terraform_data ってのも知ったので、それもメモ。 目次 【1】null_resource 1)用途 2)…

【Terraform】Terraform ~ Workspace ~

■ はじめに https://dk521123.hatenablog.com/entry/2023/05/05/004939 で、Terraform の tfstate / Backend について扱ったが 今回は、Workspace について、徐々にメモっておく 目次 【1】Workspace 【2】コマンド 1)Workspaceの作成 2)Workspaceの切…

【Terraform】Terraform ~ AWS Lambda / あれこれ ~

■ はじめに https://dk521123.hatenablog.com/entry/2024/05/30/010920 の続き。 今回は、前回の AWS Lambda の Hello worldを元に 色々と拡張してみる 目次 【1】Lambdaレイアーを付与 0)使用するAPI 1)フォルダ構成 2)サンプル 【2】S3バケットの…

【Terraform】Terraform ~ AWS Lambda / 入門編 ~

■ はじめに 大分、久しぶりに、Terraformを使うので リハビリがてらに、AWS Lambdaをまとめていく 目次 【1】API 1)aws_lambda_function 2)aws_lambda_layer_version 3)aws_lambda_permission 【2】Tips 1)${path.module} 2)archive_file 3)fi…

【Terraform】Terraform ~ 入門編 ~

■ はじめに 既存AWS環境をTerraformコードとしてエクスポートするツール を探したら、terraformer があったので、メモ。 目次 【1】terraformer 【2】使用上の注意 1)サポートしているTerraform version 【3】環境構築 1)サポートOS 2)前提条件 3…

【Terraform】Terraform ~ AWS CodeArtifact ~

■ はじめに AWS CodeArtifact の環境を軽くTerraformで作ったので そこで得たことをメモっておく 目次 【1】API 1)aws_codeartifact_repository 【2】使用上の注意 1)external_connections は1つしか指定できない 【3】サンプル 例1:既存のdomainを…

【Terraform】Terraform ~ 基本編 / Data Sources ~

■ はじめに https://dk521123.hatenablog.com/entry/2023/05/03/000000 の続き。 Terraform の Data Sources(データソース) について扱う。 目次 【1】データリソース - data 【2】利用例 【3】サンプル 例1:AWS S3 例2:AWS Region 【4】filter 1…

【Terraform】Terraform ~ AWS MWAA ~

■ はじめに Amazon Managed Workflows for Apache Airflow (MWAA) を Terraform で作る。 なお、MWAA および Airflow については、以下の関連記事を参照のこと。 MWAA ~ 入門編 ~ https://dk521123.hatenablog.com/entry/2021/09/29/131101 Apache Airflow…

【Terraform】Terraform ~ local / variable ~

■ はじめに Terraform の 変数について扱う。 目次 【0】Terraform の変数 【1】local 1)Hello world 【2】variable 1)Hello world 【3】variableの値の設定の仕方 1)コマンドの引数で直接設定「-var option」 2)ファイルで設定「.tfvars files…

【Terraform】Terraform ~ AWS EMR ~

■ はじめに AWS EMR を Terraform で構築する 目次 【1】API 1)Resource 2)Module 【2】サンプル 【1】API 1)Resource [1] EMR https://registry.terraform.io/providers/figma/aws-4-49-0/latest/docs/resources/emr_cluster [2] EMR Containers c…

【Terraform】Terraform ~ tag あれこれ ~

■ はじめに 小ネタ。 Terraform の default_tags などでトラブルがあったのでメモ。 目次 【1】tags 【2】default_tags 1)モジュールへのタグ設定の継承方法 【3】merge関数 【1】tags * AWS の Tag で利用できる https://registry.terraform.io/provi…

【Terraform】AWS MSK Connect 内の 接続情報を設定を考える

■ はじめに https://dk521123.hatenablog.com/entry/2023/05/14/122215 https://dk521123.hatenablog.com/entry/2023/05/25/000000 の続き。 今回は、AWS MSK Connect の 設定部分、特に、機密に関わるDBなどの接続情報を Secret Manager から取得することを…

【Terraform】Terraform ~ AWS KMS ~

■ はじめに 今回は、Terraform で AWS Key Management Service (KMS) を作る なお、KMSの復習は、以下の関連記事を参照のこと KMS ~ 入門編 ~ https://dk521123.hatenablog.com/entry/2020/02/27/232553 目次 【1】公式ドキュメント 1)Resource: aws_km…

【Terraform】Terraform ~ AWS MSK Connect ~

■ はじめに https://dk521123.hatenablog.com/entry/2023/05/14/122215 から分冊。 今回は、AWS MSK Connect をTerraform で作成する MSK = Managed Streaming for apache Kafka Amazon MSK ~ 入門編 ~ https://dk521123.hatenablog.com/entry/2023/04/21/…

【Terraform】Terraform ~ AWS ECR ~

■ はじめに Amazon Elastic Container Registry (ECR) を、Terraform で作る。 なお、ECRについては、以下の関連記事を参照のこと。 Amazon ECR ~ 入門編 ~ https://dk521123.hatenablog.com/entry/2020/05/22/165711 Amazon ECR ~ 基本編 ~ https://dk5…

【Terraform】Terraform ~ テンプレート ~

■ はじめに テンプレートをちょうど勉強してた際に、以下のサイト https://tech.revcomm.co.jp/terraform-troubleshooting って記事に「既存のコードが非推奨になっている」ってあって その中で「 Template provider は、すでに非推奨」っとあったので その…

【Terraform】Terraform ~ AWS EC2 ~

■ はじめに 休み明けに、Terraform で EC2 を立ち上げそうなので 予習をしておく 目次 【1】公式ドキュメント 1)AMI 【2】サンプル 例1:Systems Manager(Session Manager)経由でアクセス 例2:SSH経由でアクセス 【3】EC2あれこれ 1)シェルを実…

【Terraform】Terraform ~ 基本編 / Module ~

■ はじめに https://dk521123.hatenablog.com/entry/2023/05/03/000000 より分冊。 Terraform の Module について扱う。 目次 【1】モジュール - module 【2】モジュール化の一例 【3】モジュール種類 1)ローカルモジュール 2)リモートモジュール 【…

【Terraform】Terraform ~ 機密情報の扱いを考える ~

■ はじめに 今回は、パスワードなどの機密情報を Terraform でどう扱うかを考えて ここにちょこちょこまとめていく。 できれば、実践したい。 目次 【0】今回学べたこと 【1】機密情報の扱いを考える 案1:tfvars ファイルで変数で切り出す 案1の例 案2…

【Terraform】Terraform ~ AWS CloudWatch ~

■ はじめに https://dk521123.hatenablog.com/entry/2023/05/14/122215 のトラブルシュートのために、 AWS CloudWatchで出力することを学んだので、メモ。 目次 【1】公式ドキュメント 1)Resource: aws_cloudwatch_log_group 【2】使い方 【3】サンプル…

【Terraform】Terraform ~ Terraformあれこれ ~

■ はじめに Terraform に関する Tips を徐々にだけど ここに書き溜めていく 目次 【1】デバッグログレベルを切り替えるには 【2】タイムアウト時間を変更するには 【3】依存関係を指定するには 1) resourceセクションから別リソースを参照 2) depends…

【Terraform】Terraform ~ datadog ~

■ はじめに datadog を将来的に扱いそうなので Terraform で構築できるように予習。 目次 【1】datadog 【2】公式ドキュメント 【3】AWSへの導入準備 1)IAM 【4】自サービスへの適用 1)モニター作成 【1】datadog * サーバ監視や分析などを行うモニ…

【Terraform】Terraform ~ 複数環境へデプロイすることを考える ~

■ はじめに 通常、複数環境(dev/stage/prod)へ Terraform を使って デプロイすることを考える そこで、複数環境へデプロイする際に使えそうなTipsをまとめる 目次 【1】Backend の切り替え 1)サンプル 2)補足:terraform init -migrate-state 【2】v…

【Terraform】Terraform ~ tfstate / Backend ~

■ はじめに https://dk521123.hatenablog.com/entry/2023/04/20/172823 において、 エラー「AlreadyExistsException: Workflow with name 'xxx-xxxx' already Exists」 について、ひとまずの回避案を提示したが、ちゃんとした解決案が分かった。 その解決案…

【Terraform】Terraform ~ 基本編 ~

■ はじめに https://dk521123.hatenablog.com/entry/2019/12/09/222057 https://dk521123.hatenablog.com/entry/2023/04/05/000224 の続き。 今回は、Terraform コードの基本的な文法について扱う。 目次 【1】環境リソース 1)リソース - resource 2)デ…

【Terraform】Terraform ~ 特定リソースのみデプロイ・削除する ~

■ はじめに 小ネタ。 エラー「AlreadyExistsException: Workflow with name 'xxx-xxxx' already Exists」 が出たので、一つの解決案として、 「特定リソースのみデプロイする」ってのが あったので、調査。 目次 【1】トラブル概要 1)エラー内容 2)原因…

【Terraform】Terraform ~ AWS IAM ~

■ はじめに https://dk521123.hatenablog.com/entry/2023/04/09/104204 https://dk521123.hatenablog.com/entry/2023/04/11/152801 https://dk521123.hatenablog.com/entry/2023/04/08/220411 の続き。 今回は、IAM Role を作成することになったので、メモ。…

【Terraform】Terraform ~ AWS Secrets Manager ~

■ はじめに https://dk521123.hatenablog.com/entry/2023/04/05/000224 https://dk521123.hatenablog.com/entry/2023/04/09/104204 https://dk521123.hatenablog.com/entry/2023/04/08/220411 の続き。 今回は、Terraform で AWS Secrets Manager について扱…