密钥可用并已检索,我使用输出资源对其进行了测试,它可以工作,但在此代码中不起作用,因为该实例是在 us-east-2 中创建的,作为我用于 terraform 代码的提供程序。 错误是:
Error: creating EC2 Instance: InvalidKeyPair.NotFound: The key pair 'test_key' does not exist
│ status code: 400, request id: 2d7f03c2-dce4-42fb-9d35-c88a8a218d36
│
│ with aws_instance.instance,
│ on EC2_instances.tf line 7, in resource "aws_instance" "instance":
│ 7: resource "aws_instance" "instance" {
```
provider "aws" {
alias = "key"
region = "us-east-1"
}
resource "aws_instance" "instance" {
ami = var.ami
instance_type = var.instance_type
key_name = data.aws_key_pair.report_key.key_name
}
data "aws_key_pair" "report_key" {
provider = aws.key
key_name = "test_key"
}
```
按键是特定于地区的。所以你不能在
us-east-1
中使用 us-east-2
中的密钥。您必须创建密钥并将其复制到不同的区域。