2016-12-14 4 views
0

AWSでは、Terraformを使用して私は特定のインスタンスをプライベートサブネットで実行しました。プライベートインスタンスに特定のパッケージをインストールする必要があります。だから私は、インターネットゲートウェイに接続されているルートテーブルとの一時的な関連付けを行います。特定のサブネットとNATに接続されているルートテーブルとの関連付けを行いたいときにパッケージをインストールした後、ルートテーブルの関連付けが既に存在することを伝えるエラーが表示されます。しかし、もし私がawsコンソールに行ったら、私はそれを手動で行うことができます。テラフォームを使ってどうすればいいですか?terraformを使用して、あるルートテーブルから別のルートテーブルにサブネットアソシエーションを変更するにはどうすればよいですか?

ありがとうございました。

+0

NATゲートウェイを使用していますか、または自分自身をロールしましたか? – mcheshier

+0

自分のNATインスタンスをロールバックしました。 –

+0

あなたのterraformファイルの一部を共有できますか?すべてのカスタムTerraformコードを使用していますか、またはコミュニティモジュールを使用していますか? – mcheshier

答えて

0

あなたのTerraformファイルを見ることは少し難しいです。しかし、あなたの説明から、VPCのデフォルトの動作は、NATインスタンスに接続されているルートテーブルを使用することにあるようです。あなたは、ルートテーブルを作成して、このようにテラフォームとVPCのデフォルト行うことができます:あなたは一時的にあなたのインターネットゲートウェイにサブネットを関連付けたいとき

resource "aws_main_route_table_association" "a" { 
    vpc_id   = "${aws_vpc.foo.id}" 
    route_table_id = "${aws_route_table.bar.id}" 
} 

は、それから、次を追加するだけです:

resource "aws_route_table_association" "a" { 
    subnet_id  = "${aws_subnet.your_subnet.id}" 
    route_table_id = "${aws_route_table.your_IG_route_table.id}" 
} 

完了したら、ルートテーブルの関連付けを削除します。

関連する問題