2017-05-17 11 views
1

は、私は私がプライベートサブネット内のインスタンスは、このterraformを通してカスタムvpc(デフォルトではない)awsでapacheサーバーを実行するには?

resource "aws_instance" "my_apache" { 
    ami = "ami-8437a5e4" 
    key_name = "clust" 
    subnet_id = "${aws_subnet.my_private1.id}" 
    vpc_security_group_ids = ["sg-40542d3b"] 
    availability_zone = "us-west-2a" 
    instance_type = "t2.micro" 
    tags { 
     Name = "apache" 
     } 
     provisioner "remote-exec" { 
     inline = [ 
      "sudo apt-get update", 
      "sudo apt-get install apache2", 
      "sudo service apache2 start" 
     ] 
     } 
} 
で起動するTerraform.Myコードをプライベートサブネット内のApacheを実行中のインスタンスを起動する必要が1つのパブリックサブネットと2プライベートsubnet.Nowとテラフォームを通じて、AWSでカスタムVPCを作成しました

インスタンスが起動していますが、インスタンス内でApacheサーバーが実行されていません。disのようなエラーが表示されます。

aws_instance.my_apache (remote-exec): Connecting to remote host via SSH... 
aws_instance.my_apache (remote-exec): Host: 172.16.2.163 
aws_instance.my_apache (remote-exec): User: root 
aws_instance.my_apache (remote-exec): Password: false 
aws_instance.my_apache (remote-exec): Private key: false 
aws_instance.my_apache (remote-exec): SSH Agent: true 
aws_instance.my_apache: Still creating... (3m0s elapsed) 
^CInterrupt received. Gracefully shutting down... 
aws_instance.my_apache: Still creating... (3m10s elapsed) 
aws_instance.my_apache (remote-exec): Connecting to remote host via SSH... 
aws_instance.my_apache (remote-exec): Host: 172.16.2.163 
aws_instance.my_apache (remote-exec): User: root 
aws_instance.my_apache (remote-exec): Password: false 
aws_instance.my_apache (remote-exec): Private key: false 
aws_instance.my_apache (remote-exec): SSH Agent: true 

続きます。

問題は何ですか?そのインスタンスでApacheを実行する方法は?

+1

?プロビジョニングを実行するためにインスタンスに接続するためにプライベートサブネットにアクセスできないようです –

答えて

0

まずプライベートサブネットにインスタンスを作成していますので、terraformを実行しているマシンからインスタンスに接続していることを確認してください。

第二の事あなたのログを指定されています

aws_instance.my_apache (remote-exec): Password: false 
aws_instance.my_apache (remote-exec): Private key: false 

使用provisnors接続:

connection { 
    type  = "ssh" 
    user  = "root" 
    private_key = "${var.private_key}" 
} 

参照してください:https://www.terraform.io/docs/provisioners/connection.htmlあなたはテラフォームを実行しているところから持っていない接続のどのような

関連する問題