Toshio Blog

Create Vpc Private Subnet And Ec 2

January 09, 2019

理解を深めるための備忘録です。 こちらの講座をもとに作業しました。詳しい解説はそちらを閲覧してください。(有料です)

https://www.udemy.com/aws-14days/

前回の続きです。

プライベートサブネットをつくる

方針

  1. プライベートサブネットをつくる

  2. プライベートサブネット内にEC2をつくる

  3. プライベートサブネットからVPCの外に出るためパブリックサブネットにNAT Gatewayをつくる

作業

プライベートサブネットをつくる

「サブネットの作成」からプライベートサブネットを作成する

入力画面

VPCは前回作成したものを選択して、アベイラビリティゾーン1aを選択。保存後、続いてアベイラビリティゾーン1cに作成する。

入力画面

作成されたもの確認

次に、上で自動でルートテーブルが作られたが、ルートテーブルを新規に作成してプライベートサブネットに利用させる

作成されたルートテーブル確認。比較としてpublic用のルーティング設定とprivate用のルーティング設定を下記に。

パブリック用ルーティング

プライベート用ルーティング

プライベートサブネットに今作ったルートテーブルを適用させる

サブネット画面のmy-private-subnet-1aを選択して、「ルートテーブルの関連付けの編集」を押下、

ルートテーブルIDに、上で作成したプライベート用ルートテーブルを選択、保存

設定されたことを確認

my-private-subnet-1cも同様にプライベート用ルートテーブルを設定させる。

プライベートサブネット内にEC2をつくる

Amazon Linux 2 AMI (HVM), SSD Volume Type を選択

お好きなインスタンスタイプを選択

VPCは前回作成したVPC ネットワークはprivateサブネットの1a パプリックIP自動割当は、このサーバーはグローバルにさらす必要がないので、無効化を選択。他はそのままで次に。

タグはDB-1aと入力

セキュリティーグループは新規に作成。 前回作成したセキュリティーグループ「web-sg」が設定されているインスタンスのみ(今回はsshとmysqlの)通信を許可する、という振る舞いをしたいので、ソースの入力欄でweb-sgを選択。

他は特に変更せず作成。作成されているか確認

web-1aのサーバーを踏み台にしてdb-1aのサーバーにsshログインできるか確認

db-1aにログインするためにはweb-1aに秘密鍵をコピー(アップロード)する必要がある

現時点では、db-1a内からインターネットの外にいくことができないこと確認

$ ping yahoo.co.jp
~~
^C
--- yahoo.co.jp ping statistics ---
4 packets transmitted, 0 received, 100% packet loss, time 3054ms
プライベートサブネットからVPCの外に出るためパブリックサブネットにNAT Gatewayをつくる

パブリックサブネット1aのサブネットIDをコピーしておく

NAT Gatewayの作成

入力画面

サブネットにさきほどコピーしておいたサブネットIDを入力(貼り付け)

NAT Gatewayが外に出ていくためのプロキシーサーバーとして振る舞ってくれる。グローバルIPが必要とのことなので、「新しいEIPの作成」ボタンを押下。

作成後、「ルートテーブルの編集」ボタン押下。

5.png

プライベートサブネットでNAT Gatewayを利用していくので、private-subnetを選択、ルート(Routes)タブから「Edit routes」ボタン押下。

入力画面

VPC内の通信はそのまま許可します、他はNATゲートウェイを通ります、という設定をする

パブリックサブネットとプライベートサブネットの比較 パブリックサブネットはインターネットゲートウェイを利用していて、プライベートサブネットはNATゲートウェイという設定になっている

外に接続できることを確認。

一応NATゲートウェイのスクショもとっておく

プライベートサブネット内で外へ出ていく作業も終えたらNATゲートウェイを削除してしまう。(コスト削減のため)

NATゲートウェイ削除したら、プライベートサブネットに適用しているルートテーブルのルーティング設定も修正する。

プライベートサブネットのルートテーブルを選択し、「Edit Routes」ボタンを押下

NATゲートウェイの振り分けレコードを削除して保存

NATゲートウェイ作成時に、Elastic IPも作成しましたので削除しました。

以上になります。


Written by Ta Toshio who lives and works in Saitama, Japan .You should follow him on Twitter