Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services 如何通过Terraform启动没有密钥对的EC2实例?_Amazon Web Services_Amazon Ec2_Terraform_Terraform Provider Aws_Infrastructure As Code - Fatal编程技术网

Amazon web services 如何通过Terraform启动没有密钥对的EC2实例?

Amazon web services 如何通过Terraform启动没有密钥对的EC2实例?,amazon-web-services,amazon-ec2,terraform,terraform-provider-aws,infrastructure-as-code,Amazon Web Services,Amazon Ec2,Terraform,Terraform Provider Aws,Infrastructure As Code,我想用我的Terraform配置启动一个没有密钥对的EC2实例。我在互联网上找不到任何表明Terraform使用“无钥匙对”的信息。有谁配置过Terraform以这种方式使用吗?这是一个Terraform脚本,它创建了一个类型为t2.micro的EC2实例,而不需要密钥并输出其IP地址 terraform.tf: provider "aws" { profile = "default" region = "us-west-2" } variable "instance_type" {

我想用我的Terraform配置启动一个没有密钥对的EC2实例。我在互联网上找不到任何表明Terraform使用“无钥匙对”的信息。有谁配置过Terraform以这种方式使用吗?

这是一个Terraform脚本,它创建了一个类型为
t2.micro
的EC2实例,而不需要密钥并输出其IP地址

terraform.tf:

provider "aws" {
  profile = "default"
  region  = "us-west-2"
}

variable "instance_type" {
 default = "t2.micro"
}

resource "aws_instance" "ec2_instance" {
 ami = "ami-0d1cd67c26f5fca19"
 instance_type = "var.instance_type"
}

output "ip" {
 value = "aws_instance.ec2_instance.public_ip"
}
将其放在dir上,并使用以下命令运行它
terraformapply
。 您可以使用
地形平面图
对其进行测试


注意:不要忘记将您的
access_密钥
secret_密钥
添加到本地aws配置(
aws configure
)中,以使其正常工作。您还可以使用以避免错误地公开您的凭据


只是不提供
key\u name
参数?你试过什么?你能编辑你的问题来显示你写的地形代码并解释你有什么问题吗?这是我问题的解决方案。我试着在没有密钥对参数的情况下运行我的EC2实例terraform代码,它启动了没有密钥对的实例。非常感谢。“注意:不要忘记将您的
access\u密钥
secret\u密钥
添加到文件中。”。这是一种通过将凭据提交到版本控制来意外公开凭据的简单方法。最好使用AWS CLI的
AWS configure
命令设置凭据,或使用AWS vault之类的工具安全获取临时凭据。