Ошибка авторизации правил выхода группы безопасности: Недействительная группа.Не найдено

#amazon-web-services #terraform

Вопрос:

Я пытаюсь запустить следующий сценарий терраформирования:-

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

provider "random" {}

resource "random_pet" "name" {}

resource "aws_instance" "web" {
  ami                     = "ami-a0cfeed8"
  instance_type           = "t2.micro"
  user_data               = file("init-script.sh")
  subnet_id               = "subnet-0422e48590002d10d"
  vpc_security_group_ids  = [aws_security_group.web-sg.id]

  tags = {
    Name = random_pet.name.id
  }
}

resource "aws_security_group" "web-sg" {
  name = "${random_pet.name.id}-sg"
  ingress {
    from_port   = 80
    to_port     = 80
    protocol    = "tcp"
    cidr_blocks = ["0.0.0.0/0"]
  }
  egress {
    from_port   = 0
    to_port     = 0
    protocol    = "-1"
    cidr_blocks = ["0.0.0.0/0"]
  }
}

output "domain-name" {
  value = aws_instance.web.public_dns
}

output "application-url" {
  value = "${aws_instance.web.public_dns}/index.php"
}

 

Однако это приводит к следующим ошибкам:-

Error: Error authorizing security group egress rules: InvalidGroup.NotFound: The security group 'sg-0c181b93d98173b0f' does not exist status code: 400, request id: 6cd8681b-ee70-4ec0-8509-6239c56169a1

SG создается с правильным именем, но он утверждает, что его не существует.

Я не уверен, как это решить.

Ответ №1:

Как правило, я работал над этим сразу после публикации. Я забыл добавить vpc_id свойство в aws_security_group , что означало, что это был классический SG EC2, у которого не может быть правил выхода.