Atlas+TerraformでAWSのインスタンスを作成する
手順
サインイン
Atlasにサインインします。
Tutorialのメニュー選択
Create and manage infrastructure with Terraformを選択します
Install Packer
Terraformのバージョンを確認します。
ver 0.4.1以上が必要です。
$ terraform version Terraform v0.6.3
Create Terraform project
Terraformプロジェクトの存在を確認されます。
Noと答えると、Exampleリポジトリのcloneの手順が表示されるので、
そのコマンドを実行します。
$ git clone "https://github.com/hashicorp/atlas-terraform-tutorial.git" cd atlas-terraform-tutorial
Generate Token
APIトークンを生成します。
set environment
$ export ATLAS_TOKEN="your token"
Verify
$ curl "https://atlas.hashicorp.com/ui/tutorial/check?access_token=$ATLAS_TOKEN" Success! Now go to your browser to move on to the next step.
Terraformのremote stateをAtlasに保存します
$ terraform remote config -backend-config "name=tbpgr/example" Initialized blank state with remote state enabled!
Terraformの設定をAtlasにPushする
$ terraform push -name "tbpgr/example" var.access_key Please enter your AWS access key Enter a value: input your access key var.secret_key Please enter your AWS secret key Enter a value: input your secret key The following variables will be set or overwritten within Atlas from their local values. All other variables are already set within Atlas. If you want to modify the value of a variable, use the Atlas web interface or set it locally and use the -overwrite flag. * access_key * secret_key Uploading Terraform configuration... Configuration "tbpgr/example" uploaded! (v1)
※AWSのアクセスキーが必要です
AtlasのEnvironmentsを確認
Confirm & Applyボタン
tfの内容をEC2に適用します。
結果を確認します
Atlasの画面実行結果
EC2の管理コンソールの確認結果
ブラウザの確認結果
tfファイルを変更します
EC2のインスタンスのtags.Nameの設定を追加してみます。
- example.tf
#-------------------------------------------------------------- # Instance #-------------------------------------------------------------- resource "aws_instance" "main" { instance_type = "t2.micro" # Trusty 14.04 ami = "ami-2a734c42" # This will create 1 instances count = 1 # 追加内容 tags = { Name = "Test tag name" } subnet_id = "${aws_subnet.main.id}" security_groups = ["${aws_security_group.allow_all.id}"] } # 略
Atlasに変更をPush
$ terraform push -name "tbpgr/example"
AtlasのEnvironmentsを確認
変更内容がコンソールログに表示されていることを確認できます。
Confirm & Applyボタン
tfの内容をEC2に適用します。
結果を確認します
EC2の管理コンソールの確認結果
Tagの内容がNameに表示されていることを確認できます。
AtlasのEnvironmentsで履歴を確認
stateの履歴を確認できます