1

私の会社では AWS をクラウド プロバイダーとして使用し、Terraform を使用してインフラストラクチャをコードとして実行しています。AWS でトラフィックがルーティングされる方法を変更する必要があります。現在、1 つの NAT ゲートウェイがあります。そのため、このライブ シンがダウンした場合、プライベート サブネット上にあるインスタンスからの外部接続が失われます。

追加の NAT GW を 2 つ作成しました。各 AZ に 1 つ。Terraform を使用してこれらすべてを実行しましたが、ルーティングに関してはつまずきのブロックに遭遇しました。

このタイプのセットアップを作成しました。各 AZ にプライベート サブネットとパブリック サブネットの両方のルーティング テーブルがあります。

NAT GW のアーキテクチャとルーティング

Direct Connect があり、BGP を使用してデータセンター ネットワークを AWS にアドバタイズします。プライベート サブネット ルート テーブルでルート伝達を有効にして、オンプレミス ネットワークがこれらのルート テーブルに入力されるようにする方法がわかりません。

resource "aws_route_table" "private-subnet-a-routes" {
    vpc_id = "${aws_vpc.foo.id}"
    propogating_vgws "${aws_vgw.foo.id}" 

私はそれを試しましたが、以下のエラーが発生します

  • リソース「aws_route_table.private-subnet-a-routes」構成: 変数 aws_vgw.foo.id で参照される不明なリソース「aws_vgw.foo」

VPC のメイン VGW からルート テーブルに伝播されるようにルートを設定する方法を知っている人はいますか?

前もって感謝します

クリス

4

1 に答える 1

0

それがあなたの質問に答えているかどうかはわかりませんが、いくつかのアイデアが得られるかもしれません:

resource "aws_route" "nat" {
    count = "${var.num_availability_zones}"
    route_table_id = "${element(aws_route_table.private.*.id, count.index)}"
    destination_cidr_block = "0.0.0.0/0"
    nat_gateway_id = "${element(aws_nat_gateway.nat.*.id, count.index)}"

    depends_on = ["aws_internet_gateway.main", "aws_route_table.private"]
}

https://www.terraform.io/docs/providers/aws/d/route.html

于 2018-11-01T19:43:33.187 に答える