プログラミング

TerraformでVPC作ってサブネットを分ける。

AWSで何かを始めるときに必ずと言っていいほど出てくる「VPC」と「サブネット」

Terraformで構築する時の手順をまとめます。

 

(前提)VPCとサブネットの関係

大前提として、VPCという大きなプライベートネットワークの中に、サブネットと言われるもっと細かなセグメントで区切られた空間を作ります。

例えば、以下のようなイメージ。

 

VPC172.16.10.0/24
サブネットA172.16.10.0/25
サブネットB172.16.10.128/25

 

多くの場合は、インターネットと繋がりユーザーとの通信が可能な「パブリックサブネット」とインターネットと繋がっていない「プライベートサブネット」に分かれます。

 

また、サブネットにはAZ(アベイラビリティゾーン)を指定します。

AZが異なる環境下では、仮にAWSに障害が起きたとしても物理的に違う場所のデータセンターを使っているので、障害から免れることができます。

 

VPCとサブネットを作る

長くなってすみません。本題に入ります。

 

以下、一般的にVPCとサブネットを構築する時に必要なリソース群です。

今回はap-northeast-1aだけで行なっていますが、大体の場合は冗長化でap-northeast-1cも作った方が良いと思います。

その場合は、指定するCIDRを違うものにしてあとはコピペするだけ。

 

インターネットゲートウェイを作る

パブリックなサブネットはインターネットの通信を許可したいです。

VPCはそのままではAWSの隔離されたプライベートな空間に存在するので、インターネットに出て行けません。

 

なので、インターネットに出ていけるようゲートウェイを作ります。

 

 

これでこのゲートウェイを通ればインターネットに出ていけるようになりました。

 

ルートテーブル を作る

最後にサブネット単位でルートテーブルを作ります。

今回例として行うルートは、以下の通りです。

 

  • パブリックなサブネットがインターネットに出ていけるようにする

 

 

テーブルを作成し、そのテーブルを適用したいサブネットに対して関連付けるという順番です。

 

Terraformを学びたい方へ

Terraformをきちんと学びたい方はUdemyのLearn DevOps: Infrastructure Automation With Terraform がとてもおすすめです。コスパ最高です。

よければ参考にしてみてください。

 

よく読まれている記事

1

  現在5年目のエンジニアで26歳です。 今回は20代の現役エンジニアとして、自分も含め転職について考えている方に向けて20代エンジニア転職に完全特化したおすすめのサービスを3つ紹介していき ...

2

これからエンジニアになりたい、プログラミングを使えるようになりたいという方に向けて 山のようにあるプログラミングスクールの中から、特におすすめなスクールをタイプ別に逆引きで3つ紹介します。 &nbsp ...

3

みなさんはを使っていますでしょうか。   本記事を見ていただいているということは、   プログラミングの勉強でを使うことに興味がある、 もしくはこれから動画を購入したいけどどれを買 ...

-プログラミング
-, , ,

© 2020 クラインの備忘壺