mzumi's blog

Terraform を使ってプライベートサブネットを構築する

September 01, 2016

前回までで、インターネットから直接アクセスされるサブネットを作成したが、
インターネットから直接アクセスされる必要のないプライベートサブネットを作成
したいと思う。

まず、サブネットの作成となるが、これはパブリックサブネットとほぼ一緒で、
以下のようにする。

次に、プライベートサブネットは、NAT 経由でインターネットに接続するため、
NAT サーバーを構築する。
これは、AWS でマネージドのサービスとして NAT サーバーが提供されているので、
こちらを使用する。
terraform では、aws_nat_gateway のリソースが提供されているので
それを使用する。

NAT サーバーが利用可能になるまで、2分くらいかかった。。

で構築したら、プライベートサブネットのデフォルトゲートウェイを NAT に
向ける。

一応、これで設定が完了したので、正しく設定されているか EC2 を立てて
検証する。

このインスタンスに対し、ssh でログインしようとしても、
グローバルIPが振られていないので、ログインできない。
そこで、パブリックサブネットで立てたインスタンス経由でログインできるように
以下の設定を行った。

この設定をし、ssh example2 とすると無事ログインできた。
インターネットに出ていけるかどうかを yum update
検証したところ、成功したので、上手くいっているようだ。