こんにちは😸
カスタマーサクセス部の山本です。
Windows 11 pro に Terraform をインストールした際のメモです。
前提
「コンピュータのプロパティ」から以下を確認しました。
- OS バージョンは Windows 11 pro
- CPU は AMD
ダウンロード
CPU は AMD なので、右側の AMD を選択します。
Install | Terraform | HashiCorp Developer
展開
解凍したフォルダを適当な場所に配置します。
Powershell
を起動し、該当のフォルダに移動して、 terraform
と実行するとエラーになりました。
terraform.exe
と実行すると実行できます。
cmd /c terraform
は実行可能です。
つまり、エイリアスを利用するには cmd
に切り替える必要がありそうです。
切り替えると terraform
と実行できました。
AWS 認証情報の設定
色々方法がありますが、terraform.tfvars
にアクセスキー・シークレットキー情報を格納しました。
aws_access_key_id = AKIAXXXXXXXXXXXXXXXXXXXX aws_secret_access_key = hfhaodfhadkfjhajkdfhladhfldajhfalsdhjfadlf
AWS Provider を使用して東京リージョンに VPC を作成します。
main.tf
variable "aws_access_key_id" {} variable "aws_secret_access_key" {} # AWS プロバイダの設定 terraform { required_providers { aws = { source = "hashicorp/aws" version = "~> 6.0" } } } provider "aws" { region = "ap-northeast-1" access_key = var.aws_access_key_id secret_key = var.aws_secret_access_key } # Create a VPC resource "aws_vpc" "example" { cidr_block = "10.0.0.0/16" }
terraform apply
を実行してみます。
リソースができました。
terraform.tfstate
や、.terraform.lock.hcl
が作成されています。
terraform.tfstate
の中身
{ "version": 4, "terraform_version": "1.12.2", "serial": 3, "lineage": "f352b4ab-99c5-57c4-6647-4c20b012a97d", "outputs": {}, "resources": [ { "mode": "managed", "type": "aws_vpc", "name": "example", "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", "instances": [ { "schema_version": 1, "attributes": { "arn": "arn:aws:ec2:ap-northeast-1:112233445566:vpc/vpc-00b9b1f2c2e214a62", "assign_generated_ipv6_cidr_block": false, "cidr_block": "10.0.0.0/16", "default_network_acl_id": "acl-08c982ecc5cd0d2c1", "default_route_table_id": "rtb-0a4cbccdae00660aa", "default_security_group_id": "sg-041e9d0e2d22e1536", "dhcp_options_id": "dopt-0ac1e6b7d6816830f", "enable_dns_hostnames": false, "enable_dns_support": true, "enable_network_address_usage_metrics": false, "id": "vpc-00b9b1f2c2e214a62", "instance_tenancy": "default", "ipv4_ipam_pool_id": null, "ipv4_netmask_length": null, "ipv6_association_id": "", "ipv6_cidr_block": "", "ipv6_cidr_block_network_border_group": "", "ipv6_ipam_pool_id": "", "ipv6_netmask_length": 0, "main_route_table_id": "rtb-0a4cbccdae00660aa", "owner_id": "112233445566", "region": "ap-northeast-1", "tags": null, "tags_all": {} }, "sensitive_attributes": [], "identity_schema_version": 0, "private": "eyJzY2hlbWFfdmVyc2lvbiI6IjEifQ==" } ] } ], "check_results": null }
.terraform.lock.hcl
の中身
# This file is maintained automatically by "terraform init". # Manual edits may be lost in future updates. provider "registry.terraform.io/hashicorp/aws" { version = "6.3.0" constraints = "~> 6.0" hashes = [ "h1:yaA7q6gSIJaFEtUcrGrjuI8z2wzwBxIyJeCocYiKD2A=", "zh:0502dc1889cca94c89bfc00b214970bffa2d81a2cdb55e05ab6192484ddb1532", "zh:0a009c6f643410dc29fe2c07aee57e726ac86335fad84788fc7412abbd3a55be", "zh:0ddd577e5f23dc0be23b87d62dff1f5694b88b1fbc01bdd3046b4b51cc18a00c", "zh:1b2754cb01fa2c1a6a59c4195212f6bd4b3d1602e3f4ffb94ab609e01f2ea11a", "zh:2bc0edb35a1411670d74e827db58ef32a07e11757fdaa17934dce5451511e55a", "zh:703415b5c58d9232bdb686816e90525dfe96b0a374062bd8e27bec553cac5538", "zh:8c4f1f41722aacb4b128dfb269f5b3f0aa1239a5742f22abb012f87095b2244c", "zh:9815c0cc480acfef7c9b6b31505070bb0247a0982d98b4b6e51b1923b3a65f7e", "zh:9b12af85486a96aedd8d7984b0ff811a4b42e3d88dad1a3fb4c0b580d04fa425", "zh:b3563ce1e4c40fa139c045a1db06c3308fcf8aa9722c0a586a18bfbcedc111b5", "zh:bbcf01aa5188416cb0f31425c2dfc3a4df41248d4dce9ebab709d416177a3011", "zh:bc49559699e6a03ff57675172fc367db9993df74a502e0c6f273127af82990a9", "zh:c89bbeee5db6bbe80ce152481b85a4d44b733d7c1e1a37924f36c9cde0b7ce2d", "zh:d26793472e127a98dfa5d32a71adc4c960b573afc427604c9815bae9cda31a72", "zh:eb8db004ccbf52b3ed8b15189c59560c233abd2c2f5ac5ee68768841c3c8e206", ] }
参考リンク
- Install | Terraform | HashiCorp Developer
- terraform apply command reference | Terraform | HashiCorp Developer
- State | Terraform | HashiCorp Developer
- Dependency Lock File (.terraform.lock.hcl) - Configuration Language | Terraform | HashiCorp Developer
余談
登山に行こうと思って寝坊したので、近所をランニングしました。
9 km のコースを 5 周したら、まあまあ良い運動になりました。夏は長い距離走るのは大変なので、やるならゆっくり走ろうと思いました。