Terraform環境構築からAmazon linuxの最新イメージを立てるまでのメモ
前提
- aws configureでアクセスキーなどの設定を済ましている。
Terraformのインストール
$ brew install terraform
tfenvのインストール
$ brew install tfenv
そして怒られ
Error: Cannot install tfenv because conflicting formulae are installed. Please `brew unlink terraform` before continuing.
言われたとおりunlinkを実行
$ brew unlink terraform
再実行
$brew install tfenv
うまく行ったっぽいので、いろいろ設定。 設定は、実践Terraformに合わせる。
$ tfenv use 0.12.5 $ echo 0.12.5 > .terraform-version $ tfenv install
定義ファイル書く
data>aws_ssm_parameter>amzn2_am>valueと名前空間をたどっていくとAMI IDが取得できる。
provider aws { region = "ap-northeast-1" } # create ami amazon linux 2 latest version data aws_ssm_parameter amzn2_ami { name = "/aws/service/ami-amazon-linux-latest/amzn2-ami-hvm-x86_64-gp2" } # get ami id from Systems Manager Parameter Store resource aws_instance tftest { ami = data.aws_ssm_parameter.amzn2_ami.value instance_type = "t2.micro" }
Terraform initとapply
$ terraform init $ terraform apply
applyにあたって合意を求められるのでyes
Enter a value: yes
apply完了
Apply complete! Resources: 1 added, 0 changed, 0 destroyed.
コンソールで確認
参考資料
実践Terraform AWSにおけるシステム設計とベストプラクティス (技術の泉シリーズ(NextPublishing))
- 作者:野村 友規
- 発売日: 2019/09/20
- メディア: オンデマンド (ペーパーバック)