Terraform入門 AWS EC2インスタンスを立ち上げるサンプル
環境
AWS terraform
mac環境
概要
terraformでは、main.tf のような tfファイル を書き、terraformの各種コマンドを行うことで、クラウド上などにインフラリソースを構築することができます。AWSやAzure,GCPなどの providerを指定して使うようになっており、さまざまなクラウド環境の構築を行うことができます。
操作手順
1. aws configure などのコマンドによりaws_access_key_id や aws_secret_access_key等の認証情報をセットします。
認証情報ファイル
[default] aws_access_key_id=AKIAIOSFODNN7EXAMPLE aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY aws_session_token = IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZ2luX2IQoJb3JpZVERYLONGSTRINGEXAMPLE
設定ファイル
[default] region=us-west-2 output=json [profile user1] role_arn=arn:aws:iam::333999:role/user1role source_profile=default role_session_name=session_user1 region=us-east-1 output=text
2.terraformの導入
$ brew install terraform
3.main.tfファイルを作成する
provider "aws" { version = "~> 2.0" region = "ap-northeast-1" } resource "aws_instance" "tf_test_instance1" { ami = "ami-xxxd" # instance_type = "t2.micro" tags = { Name = "tf_test(20231201)" } lifecycle { prevent_destroy = true } }
.terraformを初期化します
$ terraform init
4.terrafaromの実行
$ terraform plan
本番の実行
$ terraform apply
5.リソースを削除/削除防止
$ terraform plan -destroy
削除防止(lifecycleを指定する)
lifecycle { prevent_destroy = true }