業務エンジニアの攻撃は最大の防御ブログ

業務エンジニアのブログ。業務システム大好き。フレームワーク開発も好き。

CloudFormationでカスタムルートテーブルをメインルートテーブルに設定する事はできない

はじめに

”できない”という事実をWeb上のドキュメントから見つけ出すのは、できる事を見つけ出すよりも苦労するのでブログに記録しておく。

結論

自分で作成したカスタムルートテーブルをメインルートテーブルにする事は、クラウドフォーメーションでは出来ない(2022年10月、AWSサポートに確認)

AWS CLIでメインルートテーブルに設定する場合

describe-route-tables — AWS CLI 1.26.0 Command Reference

でassociationを特定してから

replace-route-table-association — AWS CLI 1.26.0 Command Reference

でメインルートテーブルに設定する

AWS マネジメントコンソールでメインルートテーブルに設定する場合

当該のルートテーブルを選択して「アクション > メインルートテーブルを設定」を押す

マネジメントコンソールで

フィールドに「設定」と入力して「OK」ボタンを押す

自分の想像

そもそもメインルートテーブルは、ルートテーブルと明示的に関連づけられていないサブネットに対して関連付けられるルートテーブルになる。

なので、全てのサブネットを明示的にルートテーブルを関連付けておけば事足りる

「ここだけはCLIで」みたいな事はなるべくしたくないので、CloudFormationで環境構築する場合は明示的にルートテーブルとサブネットと関連づけるのが良い気がする。

今になって、CloudFormationに機能がないという事は、メインルートテーブルの設定はさほど重視されていないのだと思う(非推奨というわけではないらしいが)。

参考

nekootoko3.hatenablog.com

docs.aws.amazon.com