gpt4 book ai didi

amazon-ec2 - Terraform 无法使用 Amazon EC2 导入 key 对

转载 作者:行者123 更新时间:2023-12-04 13:15:51 24 4
gpt4 key购买 nike

使用 Terraform 0.7.7。

我有一个简单的 Terraform 文件,内容如下:

provider "aws" {
access_key = "${var.access_key}"
secret_key = "${var.secret_key}"
region = "${var.region}"
}

resource "aws_instance" "personal" {
ami = "${lookup(var.amis, var.region)}"
instance_type = "t2.micro"
}

resource "aws_eip" "ip" {
instance = "${aws_instance.personal.id}"
}

resource "aws_key_pair" "personal" {
key_name = "mschuchard-us-east"
public_key = "${var.public_key}"
}
Terraform apply产生以下错误:
aws_key_pair.personal: Creating...
fingerprint: "" => "<computed>"
key_name: "" => "mschuchard-us-east"
public_key: "" => "ssh-rsa pubkey hash mschuchard-us-east"
aws_instance.personal: Creating...
ami: "" => "ami-c481fad3"
availability_zone: "" => "<computed>"
ebs_block_device.#: "" => "<computed>"
ephemeral_block_device.#: "" => "<computed>"
instance_state: "" => "<computed>"
instance_type: "" => "t2.micro"
key_name: "" => "<computed>"
network_interface_id: "" => "<computed>"
placement_group: "" => "<computed>"
private_dns: "" => "<computed>"
private_ip: "" => "<computed>"
public_dns: "" => "<computed>"
public_ip: "" => "<computed>"
root_block_device.#: "" => "<computed>"
security_groups.#: "" => "<computed>"
source_dest_check: "" => "true"
subnet_id: "" => "<computed>"
tenancy: "" => "<computed>"
vpc_security_group_ids.#: "" => "<computed>"
aws_instance.personal: Creation complete
aws_eip.ip: Creating...
allocation_id: "" => "<computed>"
association_id: "" => "<computed>"
domain: "" => "<computed>"
instance: "" => "i-0ab94b58b0089697d"
network_interface: "" => "<computed>"
private_ip: "" => "<computed>"
public_ip: "" => "<computed>"
vpc: "" => "<computed>"
aws_eip.ip: Creation complete
Error applying plan:

1 error(s) occurred:

* aws_key_pair.personal: Error import KeyPair: InvalidKeyPair.Duplicate: The keypair 'mschuchard-us-east' already exists.
status code: 400, request id: 51950b9a-55e8-4901-bf35-4d2be234abbf

我在谷歌上找到的唯一帮助是删除 *.tfstate文件,我尝试过,但没有帮助。我可以使用此 key 对启动带有 gui 的 EC2 实例,并轻松通过 ssh 进入其中,但在尝试使用相同的全功能 key 对时,Terraform 出错。

最佳答案

该错误告诉您 key 对已存在于您的 AWS 账户中,但 Terraform 在其状态文件中不知道它,因此每次都尝试创建它。

在这里您有两种选择。首先,您可以简单地从 AWS 账户中删除它并允许 Terraform 上传它,从而允许它由 Terraform 管理并在其状态文件中。

或者,您可以使用 Terraform import命令将预先存在的资源导入您的状态文件:

terraform import aws_key_pair.personal mschuchard-us-east

关于amazon-ec2 - Terraform 无法使用 Amazon EC2 导入 key 对,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40120065/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com