使用已创建的ppk密钥在terraform中创建ec2实例

时间:2020-06-17 15:34:33

标签: amazon-web-services amazon-ec2 terraform

我正在尝试使用terraform创建一个Ec2实例,并试图传递我的键值。 我知道我想念一些东西。这是我正在尝试的:

resource "aws_instance" "packer-yellowpages" {

  ami = "ami-03ec9965cffdc1ef7"
  instance_type = "t3.micro"
  key_name = "yp-web-dev"
  tags ={
      Name  = "packer-yellowpages-tr"
  }
}

当我使用ssh客户端腻子登录到创建的计算机时,出现超时错误。 我觉得我的Terraform无法找到该键,并且在编写它时缺少此步骤。

有人可以帮助我解决我的问题吗?

2 个答案:

答案 0 :(得分:1)

您错过了将安全组添加到EC2实例的操作。

您需要在Terraform文档中使用vpc_security_group_ids属性。没有连接安全组,您将无权访问该实例。

如果您没有现有的安全组,则可以使用aws_security_group资源类型在terraform中创建一个。

答案 1 :(得分:0)

对于key_name = yp-web-dev,aws会将相应的公钥添加到实例默认登录帐户

例如,基于debian的操作系统,用户登录名将为ubuntu用户。

如果要ssh到ec2实例,则需要yp-web-dev的私钥。

ssh -i yp-web-dev.pem <username>@<ip>

当然,您需要从网络到VPC的端口22打开!

telnet <ip> 22,以检查您的网络是否可以访问实例22。