🐕 ご挨拶
どうもTerraformって便利ですよね。好きです。
🐕 目的
ECSの動作検証をする度に以前の環境をそのまま置いておくか、都度作成していたのですが
今回はTerraformを利用して簡易的なECS検証環境を作成できるようにしました。
🐕 ゴール
Terraformを利用して東京リージョンにVPC,ALB,ECSが作成されている。
ALBのDNSからnginxのWelcomeページが確認できる。
🐕 前提&動作環境
- Terraformを利用できる初期準備が完了している
- Terraformのmodules構成がなんとなくわかる
- M1 Mac(sequoia15.6)
- AWS CLI(2.27.12)
- Terraform v1.11.2
🐕 手順
Githubから、Cloneをする。
https://github.com/tsubasa-akiyama/sample-awsecs.git
📁 ディレクトリ構成
Clone したディレクトリに以下ディレクトリが作成されているか確認する。
sample-awsecs/
├── envs
│ └── prod
│ ├── main.tf
│ ├── outputs.tf
│ ├── terraform.tfvars
│ └── variables.tf
├── modules
│ ├── alb
│ │ ├── main.tf
│ │ ├── outputs.tf
│ │ └── variables.tf
│ ├── ecs
│ │ ├── main.tf
│ │ ├── outputs.tf
│ │ └── variables.tf
│ └── vpc
│ ├── main.tf
│ ├── outputs.tf
│ └── variables.tf
└── README.md
デプロイ
Terraforms初期化
cd sample-awsecs/envs/prod
terraform init
作成物の確認
terraform plan
適用
terraform apply
Apply 完了画面に、ALBのDNSが表示されるのでhttpで検索しましょう。
(ECS立ち上がりに時間がかかる為、表示されない場合は時間を空けてお試しください。。。)
🐕 最後に
いかがでしょうか?GUIからだと時間がかかる作業もTerraformだと一瞬ですね。
もう少し、セキュリティを強固に設定できる部分あるので次はその辺やCICDやログ運用周りも含めたものを作成できるようにしていきたいです。