Terraform删除路由表,然后在第二次运行时将其添加(无更改)。虫子还是我错过了什么?

时间:2019-02-08 16:25:40

标签: amazon-web-services terraform

如您所见,下面我将两次应用相同的代码(不做任何更改)。第一次删除表路由。 第二次重新创建它们。

这种行为使我发疯。每次更改网络时,都需要运行terraform两次以显示路由表。

欢迎对此问题发表任何看法。

$ terraform apply

aws_vpc.vpc: Refreshing state... (ID: [REDACTED])
aws_route_table.public_route: Refreshing state... (ID: [REDACTED])
aws_route.peer_private_1: Refreshing state... (ID: [REDACTED])
aws_route.billing_private_1: Refreshing state... (ID: [REDACTED])
aws_route.billing_public_1: Refreshing state... (ID: [REDACTED])
aws_route_table_association.route_table_pub_1: Refreshing state... (ID: [REDACTED])
aws_route.rt_public_1b: Refreshing state... (ID: [REDACTED])
aws_route.local_public_1: Refreshing state... (ID: [REDACTED])
aws_route.rt_public_1a: Refreshing state... (ID: [REDACTED])
aws_route_table.private_route_1: Refreshing state... (ID: [REDACTED])
aws_route_table_association.route_table_priv_1: Refreshing state... (ID: [REDACTED])
aws_route.rt_private_1a: Refreshing state... (ID: [REDACTED])
aws_route.local_private_1: Refreshing state... (ID: [REDACTED])
aws_route.rt_private_1b: Refreshing state... (ID: [REDACTED])

An execution plan has been generated and is shown below.
Resource actions are indicated with the following symbols:
  ~ update in-place

Terraform will perform the following actions:

  ~ module.vpc_network.aws_route_table.private_route_1
      route.#:                                    "4" => "1"
      route.1.cidr_block:                 "" => "[REDACTED]"
      route.1.egress_only_gateway_id:     "" => ""
      route.1.gateway_id:                 "" => "[REDACTED]"
      route.1.instance_id:                "" => ""
      route.1.ipv6_cidr_block:            "" => ""
      route.1.nat_gateway_id:             "" => ""
      route.1.network_interface_id:       "" => ""
      route.1.vpc_peering_connection_id:  "" => ""
      route.2.cidr_block:                "[REDACTED]" => ""
      route.2.egress_only_gateway_id:    "" => ""
      route.2.gateway_id:                "" => ""
      route.2.instance_id:               "" => ""
      route.2.ipv6_cidr_block:           "" => ""
      route.2.nat_gateway_id:            "[REDACTED]" => ""
      route.2.network_interface_id:      "" => ""
      route.2.vpc_peering_connection_id: "" => ""
      route.3.cidr_block:                "[REDACTED]" => ""
      route.3.egress_only_gateway_id:    "" => ""
      route.3.gateway_id:                "" => ""
      route.3.instance_id:               "" => ""
      route.3.ipv6_cidr_block:           "" => ""
      route.3.nat_gateway_id:            "" => ""
      route.3.network_interface_id:      "" => ""
      route.3.vpc_peering_connection_id: "[REDACTED]" => ""
      route.4.cidr_block:                "[REDACTED]" => ""
      route.4.egress_only_gateway_id:    "" => ""
      route.4.gateway_id:                "" => ""
      route.4.instance_id:               "" => ""
      route.4.ipv6_cidr_block:           "" => ""
      route.4.nat_gateway_id:            "" => ""
      route.4.network_interface_id:      "" => ""
      route.4.vpc_peering_connection_id: "[REDACTED]" => ""
      route.5.cidr_block:                "[REDACTED]" => ""
      route.5.egress_only_gateway_id:    "" => ""
      route.5.gateway_id:                "" => ""
      route.5.instance_id:               "" => ""
      route.5.ipv6_cidr_block:           "" => ""
      route.5.nat_gateway_id:            "" => ""
      route.5.network_interface_id:      "" => ""
      route.5.vpc_peering_connection_id: "[REDACTED]" => ""

  ~ module.vpc_network.aws_route_table.public_route
      route.#:                                    "4" => "1"
      route.3.cidr_block:                "[REDACTED]" => ""
      route.3.egress_only_gateway_id:    "" => ""
      route.3.gateway_id:                "" => ""
      route.3.instance_id:               "" => ""
      route.3.ipv6_cidr_block:           "" => ""
      route.3.nat_gateway_id:            "" => ""
      route.3.network_interface_id:      "" => ""
      route.3.vpc_peering_connection_id: "[REDACTED]" => ""
      route.6.cidr_block:                "[REDACTED]" => "[REDACTED]"
      route.6.egress_only_gateway_id:    "" => ""
      route.6.gateway_id:                "[REDACTED]" => "[REDACTED]"
      route.6.instance_id:               "" => ""
      route.6.ipv6_cidr_block:           "" => ""
      route.6.nat_gateway_id:            "" => ""
      route.6.network_interface_id:      "" => ""
      route.6.vpc_peering_connection_id: "" => ""
      route.4.cidr_block:                "[REDACTED]" => ""
      route.4.egress_only_gateway_id:    "" => ""
      route.4.gateway_id:                "" => ""
      route.4.instance_id:               "" => ""
      route.4.ipv6_cidr_block:           "" => ""
      route.4.nat_gateway_id:            "" => ""
      route.4.network_interface_id:      "" => ""
      route.4.vpc_peering_connection_id: "[REDACTED]" => ""
      route.5.cidr_block:                "[REDACTED]" => ""
      route.5.egress_only_gateway_id:    "" => ""
      route.5.gateway_id:                "" => ""
      route.5.instance_id:               "" => ""
      route.5.ipv6_cidr_block:           "" => ""
      route.5.nat_gateway_id:            "" => ""
      route.5.network_interface_id:      "" => ""
      route.5.vpc_peering_connection_id: "[REDACTED]" => ""


Plan: 0 to add, 2 to change, 0 to destroy.

Do you want to perform these actions?
  Terraform will perform the actions described above.
  Only 'yes' will be accepted to approve.

  Enter a value: yes

module.vpc_network.aws_route_table.private_route_1: Modifying... (ID: [REDACTED])
  route.#:                                    "4" => "1"
  route.1.cidr_block:                 "" => "[REDACTED]"
  route.1.egress_only_gateway_id:     "" => ""
  route.1.gateway_id:                 "" => "[REDACTED]"
  route.1.instance_id:                "" => ""
  route.1.ipv6_cidr_block:            "" => ""
  route.1.nat_gateway_id:             "" => ""
  route.1.network_interface_id:       "" => ""
  route.1.vpc_peering_connection_id:  "" => ""
  route.2.cidr_block:                "[REDACTED]" => ""
  route.2.egress_only_gateway_id:    "" => ""
  route.2.gateway_id:                "" => ""
  route.2.instance_id:               "" => ""
  route.2.ipv6_cidr_block:           "" => ""
  route.2.nat_gateway_id:            "[REDACTED]" => ""
  route.2.network_interface_id:      "" => ""
  route.2.vpc_peering_connection_id: "" => ""
  route.3.cidr_block:                "[REDACTED]" => ""
  route.3.egress_only_gateway_id:    "" => ""
  route.3.gateway_id:                "" => ""
  route.3.instance_id:               "" => ""
  route.3.ipv6_cidr_block:           "" => ""
  route.3.nat_gateway_id:            "" => ""
  route.3.network_interface_id:      "" => ""
  route.3.vpc_peering_connection_id: "[REDACTED]" => ""
  route.4.cidr_block:                "[REDACTED]" => ""
  route.4.egress_only_gateway_id:    "" => ""
  route.4.gateway_id:                "" => ""
  route.4.instance_id:               "" => ""
  route.4.ipv6_cidr_block:           "" => ""
  route.4.nat_gateway_id:            "" => ""
  route.4.network_interface_id:      "" => ""
  route.4.vpc_peering_connection_id: "[REDACTED]" => ""
  route.5.cidr_block:                "[REDACTED]" => ""
  route.5.egress_only_gateway_id:    "" => ""
  route.5.gateway_id:                "" => ""
  route.5.instance_id:               "" => ""
  route.5.ipv6_cidr_block:           "" => ""
  route.5.nat_gateway_id:            "" => ""
  route.5.network_interface_id:      "" => ""
  route.5.vpc_peering_connection_id: "[REDACTED]" => ""
module.vpc_network.aws_route_table.private_route_2: Modifying... (ID: [REDACTED])
  route.#:                                    "4" => "1"
  route.1.cidr_block:                 "" => "[REDACTED]"
  route.1.egress_only_gateway_id:     "" => ""
  route.1.gateway_id:                 "" => "[REDACTED]"
  route.1.instance_id:                "" => ""
  route.1.ipv6_cidr_block:            "" => ""
  route.1.nat_gateway_id:             "" => ""
  route.1.network_interface_id:       "" => ""
  route.1.vpc_peering_connection_id:  "" => ""
  route.2.cidr_block:                "[REDACTED]" => ""
  route.2.egress_only_gateway_id:    "" => ""
  route.2.gateway_id:                "" => ""
  route.2.instance_id:               "" => ""
  route.2.ipv6_cidr_block:           "" => ""
  route.2.nat_gateway_id:            "[REDACTED]" => ""
  route.2.network_interface_id:      "" => ""
  route.2.vpc_peering_connection_id: "" => ""
  route.3.cidr_block:                "[REDACTED]" => ""
  route.3.egress_only_gateway_id:    "" => ""
  route.3.gateway_id:                "" => ""
  route.3.instance_id:               "" => ""
  route.3.ipv6_cidr_block:           "" => ""
  route.3.nat_gateway_id:            "" => ""
  route.3.network_interface_id:      "" => ""
  route.3.vpc_peering_connection_id: "[REDACTED]" => ""
  route.4.cidr_block:                "[REDACTED]" => ""
  route.4.egress_only_gateway_id:    "" => ""
  route.4.gateway_id:                "" => ""
  route.4.instance_id:               "" => ""
  route.4.ipv6_cidr_block:           "" => ""
  route.4.nat_gateway_id:            "" => ""
  route.4.network_interface_id:      "" => ""
  route.4.vpc_peering_connection_id: "[REDACTED]" => ""
  route.5.cidr_block:                "[REDACTED]" => ""
  route.5.egress_only_gateway_id:    "" => ""
  route.5.gateway_id:                "" => ""
  route.5.instance_id:               "" => ""
  route.5.ipv6_cidr_block:           "" => ""
  route.5.nat_gateway_id:            "" => ""
  route.5.network_interface_id:      "" => ""
  route.5.vpc_peering_connection_id: "[REDACTED]" => ""
module.vpc_network.aws_route_table.public_route: Modifying... (ID: [REDACTED])
  route.#:                                    "4" => "1"
  route.3.cidr_block:                "[REDACTED]" => ""
  route.3.egress_only_gateway_id:    "" => ""
  route.3.gateway_id:                "" => ""
  route.3.instance_id:               "" => ""
  route.3.ipv6_cidr_block:           "" => ""
  route.3.nat_gateway_id:            "" => ""
  route.3.network_interface_id:      "" => ""
  route.3.vpc_peering_connection_id: "[REDACTED]" => ""
  route.6.cidr_block:                "[REDACTED]" => "[REDACTED]"
  route.6.egress_only_gateway_id:    "" => ""
  route.6.gateway_id:                "[REDACTED]" => "[REDACTED]"
  route.6.instance_id:               "" => ""
  route.6.ipv6_cidr_block:           "" => ""
  route.6.nat_gateway_id:            "" => ""
  route.6.network_interface_id:      "" => ""
  route.6.vpc_peering_connection_id: "" => ""
  route.4.cidr_block:                "[REDACTED]" => ""
  route.4.egress_only_gateway_id:    "" => ""
  route.4.gateway_id:                "" => ""
  route.4.instance_id:               "" => ""
  route.4.ipv6_cidr_block:           "" => ""
  route.4.nat_gateway_id:            "" => ""
  route.4.network_interface_id:      "" => ""
  route.4.vpc_peering_connection_id: "[REDACTED]" => ""
  route.5.cidr_block:                "[REDACTED]" => ""
  route.5.egress_only_gateway_id:    "" => ""
  route.5.gateway_id:                "" => ""
  route.5.instance_id:               "" => ""
  route.5.ipv6_cidr_block:           "" => ""
  route.5.nat_gateway_id:            "" => ""
  route.5.network_interface_id:      "" => ""
  route.5.vpc_peering_connection_id: "[REDACTED]" => ""
module.vpc_network.aws_route_table.public_route: Modifications complete after 1s (ID: [REDACTED])
module.vpc_network.aws_route_table.private_route_1: Modifications complete after 1s (ID: [REDACTED])
module.vpc_network.aws_route_table.private_route_2: Modifications complete after 1s (ID: [REDACTED])

Apply complete! Resources: 0 added, 5 changed, 0 destroyed.
$ terraform apply

aws_route_table.public_route: Refreshing state... (ID: [REDACTED])
aws_route.peer_private_1: Refreshing state... (ID: [REDACTED])
aws_vpc_peering_connection_accepter.peer: Refreshing state... (ID: [REDACTED])
aws_route.peer_public_1: Refreshing state... (ID: [REDACTED])
aws_route.billing_private_1: Refreshing state... (ID: [REDACTED])
aws_route.billing_public_1: Refreshing state... (ID: [REDACTED])
aws_route_table_association.route_table_pub_1: Refreshing state... (ID: [REDACTED])
aws_route.rt_public_1a: Refreshing state... (ID: [REDACTED])
aws_route.rt_public_1b: Refreshing state... (ID: [REDACTED])
aws_route.local_public_1: Refreshing state... (ID: [REDACTED])
aws_route_table.private_route_1: Refreshing state... (ID: [REDACTED])
aws_route_table_association.route_table_priv_1: Refreshing state... (ID: [REDACTED])
aws_route.local_private_1: Refreshing state... (ID: [REDACTED])
aws_route.rt_private_1a: Refreshing state... (ID: [REDACTED])
aws_route.rt_private_1b: Refreshing state... (ID: [REDACTED])

An execution plan has been generated and is shown below.
Resource actions are indicated with the following symbols:
  + create
  ~ update in-place

Terraform will perform the following actions:

  ~ module.vpc_network.aws_route_table.private_route_1
      route.1.cidr_block:                 "" => "[REDACTED]"
      route.1.egress_only_gateway_id:     "" => ""
      route.1.gateway_id:                 "" => "[REDACTED]"
      route.1.instance_id:                "" => ""
      route.1.ipv6_cidr_block:            "" => ""
      route.1.nat_gateway_id:             "" => ""
      route.1.network_interface_id:       "" => ""
      route.1.vpc_peering_connection_id:  "" => ""
      route.2.cidr_block:                "[REDACTED]" => ""
      route.2.egress_only_gateway_id:    "" => ""
      route.2.gateway_id:                "" => ""
      route.2.instance_id:               "" => ""
      route.2.ipv6_cidr_block:           "" => ""
      route.2.nat_gateway_id:            "[REDACTED]" => ""
      route.2.network_interface_id:      "" => ""
      route.2.vpc_peering_connection_id: "" => ""

  + module.vpc_peering.aws_route.local_private_1
      id:                                         <computed>
      destination_cidr_block:                     "[REDACTED]"
      destination_prefix_list_id:                 <computed>
      egress_only_gateway_id:                     <computed>
      gateway_id:                                 <computed>
      instance_id:                                <computed>
      instance_owner_id:                          <computed>
      nat_gateway_id:                             <computed>
      network_interface_id:                       <computed>
      origin:                                     <computed>
      route_table_id:                             "[REDACTED]"
      state:                                      <computed>
      vpc_peering_connection_id:                  "[REDACTED]"

  + module.vpc_peering.aws_route.local_public_1
      id:                                         <computed>
      destination_cidr_block:                     "[REDACTED]"
      destination_prefix_list_id:                 <computed>
      egress_only_gateway_id:                     <computed>
      gateway_id:                                 <computed>
      instance_id:                                <computed>
      instance_owner_id:                          <computed>
      nat_gateway_id:                             <computed>
      network_interface_id:                       <computed>
      origin:                                     <computed>
      route_table_id:                             "[REDACTED]"
      state:                                      <computed>
      vpc_peering_connection_id:                  "[REDACTED]"

  + module.vpc_peering_billing.aws_route.rt_private_1a
      id:                                         <computed>
      destination_cidr_block:                     "[REDACTED]"
      destination_prefix_list_id:                 <computed>
      egress_only_gateway_id:                     <computed>
      gateway_id:                                 <computed>
      instance_id:                                <computed>
      instance_owner_id:                          <computed>
      nat_gateway_id:                             <computed>
      network_interface_id:                       <computed>
      origin:                                     <computed>
      route_table_id:                             "[REDACTED]"
      state:                                      <computed>
      vpc_peering_connection_id:                  "[REDACTED]"

  + module.vpc_peering_billing.aws_route.rt_private_1b
      id:                                         <computed>
      destination_cidr_block:                     "[REDACTED]"
      destination_prefix_list_id:                 <computed>
      egress_only_gateway_id:                     <computed>
      gateway_id:                                 <computed>
      instance_id:                                <computed>
      instance_owner_id:                          <computed>
      nat_gateway_id:                             <computed>
      network_interface_id:                       <computed>
      origin:                                     <computed>
      route_table_id:                             "[REDACTED]"
      state:                                      <computed>
      vpc_peering_connection_id:                  "[REDACTED]"

  + module.vpc_peering_billing.aws_route.rt_public_1a
      id:                                         <computed>
      destination_cidr_block:                     "[REDACTED]"
      destination_prefix_list_id:                 <computed>
      egress_only_gateway_id:                     <computed>
      gateway_id:                                 <computed>
      instance_id:                                <computed>
      instance_owner_id:                          <computed>
      nat_gateway_id:                             <computed>
      network_interface_id:                       <computed>
      origin:                                     <computed>
      route_table_id:                             "[REDACTED]"
      state:                                      <computed>
      vpc_peering_connection_id:                  "[REDACTED]"

  + module.vpc_peering_billing.aws_route.rt_public_1b
      id:                                         <computed>
      destination_cidr_block:                     "[REDACTED]"
      destination_prefix_list_id:                 <computed>
      egress_only_gateway_id:                     <computed>
      gateway_id:                                 <computed>
      instance_id:                                <computed>
      instance_owner_id:                          <computed>
      nat_gateway_id:                             <computed>
      network_interface_id:                       <computed>
      origin:                                     <computed>
      route_table_id:                             "[REDACTED]"
      state:                                      <computed>
      vpc_peering_connection_id:                  "[REDACTED]"


Plan: 4 to add, 1 to change, 0 to destroy.

Do you want to perform these actions?
  Terraform will perform the actions described above.
  Only 'yes' will be accepted to approve.

  Enter a value:
module.vpc_peering_billing.aws_route.rt_public_1a: Creating...
  destination_cidr_block:     "" => "[REDACTED]"
  destination_prefix_list_id: "" => "<computed>"
  egress_only_gateway_id:     "" => "<computed>"
  gateway_id:                 "" => "<computed>"
  instance_id:                "" => "<computed>"
  instance_owner_id:          "" => "<computed>"
  nat_gateway_id:             "" => "<computed>"
  network_interface_id:       "" => "<computed>"
  origin:                     "" => "<computed>"
  route_table_id:             "" => "[REDACTED]"
  state:                      "" => "<computed>"
  vpc_peering_connection_id:  "" => "[REDACTED]"
module.vpc_peering_billing.aws_route.rt_public_1b: Creating...
  destination_cidr_block:     "" => "[REDACTED]"
  destination_prefix_list_id: "" => "<computed>"
  egress_only_gateway_id:     "" => "<computed>"
  gateway_id:                 "" => "<computed>"
  instance_id:                "" => "<computed>"
  instance_owner_id:          "" => "<computed>"
  nat_gateway_id:             "" => "<computed>"
  network_interface_id:       "" => "<computed>"
  origin:                     "" => "<computed>"
  route_table_id:             "" => "[REDACTED]"
  state:                      "" => "<computed>"
  vpc_peering_connection_id:  "" => "[REDACTED]"
module.vpc_network.aws_route_table.private_route_1: Modifying... (ID: [REDACTED])
  route.1.cidr_block:                 "" => "[REDACTED]"
  route.1.egress_only_gateway_id:     "" => ""
  route.1.gateway_id:                 "" => "[REDACTED]"
  route.1.instance_id:                "" => ""
  route.1.ipv6_cidr_block:            "" => ""
  route.1.nat_gateway_id:             "" => ""
  route.1.network_interface_id:       "" => ""
  route.1.vpc_peering_connection_id:  "" => ""
  route.2.cidr_block:                "[REDACTED]" => ""
  route.2.egress_only_gateway_id:    "" => ""
  route.2.gateway_id:                "" => ""
  route.2.instance_id:               "" => ""
  route.2.ipv6_cidr_block:           "" => ""
  route.2.nat_gateway_id:            "[REDACTED]" => ""
  route.2.network_interface_id:      "" => ""
  route.2.vpc_peering_connection_id: "" => ""
module.vpc_peering.aws_route.local_public_1: Creating...
  destination_cidr_block:     "" => "[REDACTED]"
  destination_prefix_list_id: "" => "<computed>"
  egress_only_gateway_id:     "" => "<computed>"
  gateway_id:                 "" => "<computed>"
  instance_id:                "" => "<computed>"
  instance_owner_id:          "" => "<computed>"
  nat_gateway_id:             "" => "<computed>"
  network_interface_id:       "" => "<computed>"
  origin:                     "" => "<computed>"
  route_table_id:             "" => "[REDACTED]"
  state:                      "" => "<computed>"
  vpc_peering_connection_id:  "" => "[REDACTED]"
module.vpc_peering_billing.aws_route.rt_public_1b: Creation complete after 0s (ID: [REDACTED])
module.vpc_peering.aws_route.local_public_1: Creation complete after 0s (ID: [REDACTED])
module.vpc_peering_billing.aws_route.rt_public_1a: Creation complete after 0s (ID: [REDACTED])
module.vpc_network.aws_route_table.private_route_1: Modifications complete after 0s (ID: [REDACTED])
module.vpc_peering_billing.aws_route.rt_private_1b: Creating...
  destination_cidr_block:     "" => "[REDACTED]"
  destination_prefix_list_id: "" => "<computed>"
  egress_only_gateway_id:     "" => "<computed>"
  gateway_id:                 "" => "<computed>"
  instance_id:                "" => "<computed>"
  instance_owner_id:          "" => "<computed>"
  nat_gateway_id:             "" => "<computed>"
  network_interface_id:       "" => "<computed>"
  origin:                     "" => "<computed>"
  route_table_id:             "" => "[REDACTED]"
  state:                      "" => "<computed>"
  vpc_peering_connection_id:  "" => "[REDACTED]"
module.vpc_peering_billing.aws_route.rt_private_1a: Creating...
  destination_cidr_block:     "" => "[REDACTED]"
  destination_prefix_list_id: "" => "<computed>"
  egress_only_gateway_id:     "" => "<computed>"
  gateway_id:                 "" => "<computed>"
  instance_id:                "" => "<computed>"
  instance_owner_id:          "" => "<computed>"
  nat_gateway_id:             "" => "<computed>"
  network_interface_id:       "" => "<computed>"
  origin:                     "" => "<computed>"
  route_table_id:             "" => "[REDACTED]"
  state:                      "" => "<computed>"
  vpc_peering_connection_id:  "" => "[REDACTED]"
module.vpc_peering.aws_route.local_private_1: Creating...
  destination_cidr_block:     "" => "[REDACTED]"
  destination_prefix_list_id: "" => "<computed>"
  egress_only_gateway_id:     "" => "<computed>"
  gateway_id:                 "" => "<computed>"
  instance_id:                "" => "<computed>"
  instance_owner_id:          "" => "<computed>"
  nat_gateway_id:             "" => "<computed>"
  network_interface_id:       "" => "<computed>"
  origin:                     "" => "<computed>"
  route_table_id:             "" => "[REDACTED]"
  state:                      "" => "<computed>"
  vpc_peering_connection_id:  "" => "[REDACTED]"
module.vpc_peering.aws_route.local_private_1: Creation complete after 0s (ID: [REDACTED])
module.vpc_peering_billing.aws_route.rt_private_1b: Creation complete after 0s (ID: [REDACTED])
module.vpc_peering_billing.aws_route.rt_private_1a: Creation complete after 0s (ID: [REDACTED])

Apply complete! Resources: 4 added, 1 changed, 0 destroyed.

1 个答案:

答案 0 :(得分:0)

遇到同样的问题:在创建带有路由的路由表后,尝试添加vpc_peering,需要运行两次以使其正确。已解决@James Woolfenden

中的提示

只需将路由部分从aws_route_table的创建中移出,那么以后所有aws_route的创建(例如vpc_peering)都不会与在aws_route_table外部创建的路由冲突

原始代码:

# Create crt with nat
resource "aws_route_table" "tf_portal_private_crt" {
  count = length(data.aws_availability_zones.available.names)

  vpc_id = aws_vpc.tf_portal_vpc.id

  route {
    //associated subnet can reach everywhere
    cidr_block = "0.0.0.0/0"
    //CRT uses this nat to reach internet
    nat_gateway_id = aws_nat_gateway.tf_portal_nat.id
  }

  tags = {
    Name = "${var.portal_private_crt_name}_${count.index + 1}"
  }
}

新代码:

# Create crt with nat
resource "aws_route_table" "tf_portal_private_crt" {
  count = length(data.aws_availability_zones.available.names)

  vpc_id = aws_vpc.tf_portal_vpc.id

  tags = {
    Name = "${var.portal_private_crt_name}_${count.index + 1}"
  }
}


resource "aws_route" "tf_portal_private" {

  count                  = length(data.aws_availability_zones.available.names)
  route_table_id         = element(aws_route_table.tf_portal_private_crt.*.id, count.index)
  destination_cidr_block = "0.0.0.0/0"
  nat_gateway_id         = aws_nat_gateway.tf_portal_nat.id


}