2016-10-27 3 views
0

私は、ユーザーがボックスにログインし、アクセス/秘密鍵を追加してから、インスタンスをvpcに展開できるようにpythonスクリプトを書いています。awsと追加マシンを追加するTerraform

  1. ユーザーAログで、彼の情報、スクリプトが
  2. インスタンスを展開し、ユーザーを入力:それはまた、などなど事前にタグ付けインスタンスのような他の物事のカップル

    私の問題はこれですん新しいインスタンスに変更するUser-Aのインスタンスをデプロイする代わりに、自分の情報を入力します。

これは単純な問題ですが、私は非常にテラフォームに新しいことを知っています。ここで

は、現在のTFファイルです:

1 provider "aws" { 
    2 #access_key = "${var.access_key}" 
    3 #secret_key = "${var.secret_key}" 
    4 region  = "${var.region}" 
    5 } 
    6 
    7 
    8 resource "aws_instance" "User-A" { 
    9 ami = "${lookup(var.amis, var.region)}" 
10 instance_type = "t2.micro" 
11 subnet_id ="subnet-12688d4a" 
12 
13 
14 tags { 
15   Name = “user-A box” 
16   multicast = “group,172.16.0.10" 
17   owner = “USER-A” 
18  } 
19 
20 
21 provisioner "local-exec" { 
22  command = "echo ${aws_instance.labMain.public_ip} > pubip.txt" 
23  } 
24 } 
25 
26 resource "aws_eip" "ip" { 
27 instance = "${aws_instance.labMain.id}" 
28 } 
29 
30 
31 output "Your Instance's pubic ip is" { 
32 value = "${aws_eip.ip.public_ip}" 
33 } 

基本的に

  1. 私はどこユーザーBがTFファイルを追加していることがわかりません。
  2. 行番号34〜33のコードをもう一度34行目に再現しますか?ユーザーBの情報は ですか?

私はこれが今どのように動作するかを見るのおかげ

答えて

0

複数の一意のインスタンスを作成するには、一意のリソース名を宣言するだけです。たとえば:

固めたが、この上記のコードは、あなただけの新しいリソース名に

#instance1 
resource "aws_instance" "User-A" { stuff } 
resource "aws_eip" "ip-User-A" { stuff } 

#instance2 
resource "aws_instance" "User-B" { stuff } 
resource "aws_eip" "ip User-B" { stuff } 
を定義する必要が追加のインスタンスを作るために

8 resource "aws_instance" "User-A" { stuff } 
26 resource "aws_eip" "ip" { stuff } 

「vlslabMain」と呼ばれる1つのインスタンスであります

関連する問題