Терраформировать недействительный идентификатор.Не найдено: Идентификатор точки доступа «vpce-XXXXXXXXX» не существует

#amazon-web-services #terraform #terraform-provider-aws #terraform0.12 #vpc-endpoint

Вопрос:

Поставщик: AWS

Регион: США-восток-1

Терраформирование: v1.0.4

При попытке создать таблицу маршрутов:

 resource "aws_vpc_endpoint_route_table_association" "dynamodb_route_table" {  count = "${length(module.vpc.private_route_table_ids)}"  vpc_endpoint_id = aws_vpc_endpoint.dynamodb_connection.id  route_table_id = "${element(module.vpc.private_route_table_ids, count.index)}"   depends_on = [aws_vpc_endpoint.dynamodb_connection] }  

со следующим маршрутом:

 resource "aws_route" "subnet_to_vpce" {  count = "${length(module.vpc.private_route_table_ids)}"  route_table_id = "${element(module.vpc.private_route_table_ids, count.index)}"  vpc_endpoint_id = aws_vpc_endpoint.dynamodb_connection.id  destination_cidr_block = "${element(module.vpc.private_subnets_cidr_blocks, count.index)}"   depends_on = [aws_vpc_endpoint.dynamodb_connection] }  

которые ссылаются на конечную точку vpc, созданную следующим образом:

 resource "aws_vpc_endpoint" "dynamodb_connection" {  vpc_id = module.vpc.vpc_id  service_name = "com.amazonaws.${var.aws_region}.dynamodb"  policy = lt;lt;POLICY  {  "Statement": [  {  "Action": "*",  "Effect": "Allow",  "Resource": "*",  "Principal": "*"  }  ]  }  POLICY  }  

Я получаю следующую ошибку:

 Error: error creating Route in Route Table (rtb-xxxxxxxxxxxxxxxxx) with destination (10.xx.x.x/24): InvalidVpcEndpointId.NotFound: The vpcEndpoint ID 'vpce-xxxxxxxxxxxxxxxxx' does not exist.  

Однако сама конечная точка vpc была успешно создана. Я вижу это в файле tfstate, и когда я вхожу в консоль AWS и проверяю, я вижу конечную точку vpc с точным идентификатором, указанным в ошибке.

Я повторил попытку, прождав час, но по-прежнему ничего.

Не уверен, делаю ли я что-то не так или это ошибка.

Комментарии:

1. В коде, по-видимому, нет ничего неправильного. Единственная причина, о которой я могу думать, заключается в том, что, возможно, есть какие-то расовые условия. Так что, возможно aws_vpc_endpoint_route_table_association , применяется, когда dynamodb_connection все еще создается. Можете ли вы проверить, сколько времени требуется для создания конечной точки с помощью консоли AWS, и посмотреть, будет ли TF отмечать успех, прежде чем она действительно окажется в доступном состоянии?

2. Можете ли вы также включить код терраформирования для маршрута 10.x.x.x, который добавляется в таблицу, поскольку это, по-видимому, вызывает ошибку.

3. @clockworknet отредактировал сообщение, чтобы добавить маршрут

4. @Marcin Я добавил предложение «зависит от» depends_on = [aws_vpc_endpoint.dynamodb_connection] и повторил, но получил ту же ошибку. Также проверьте в консоли, что конечная точка VPC имеет статус «Доступно».

5. Может быть, ресурсы, созданные в разных регионах? Это provider "aws" блок region и var.aws_region то же самое?