ねこじゃすり
猫を魅了する魔法の装備品!
Anker PowerCor
旅行には必須の大容量モバイルバッテリー!
【最新機種】GoPro hero11 Black
最新機種でVlogの思い出を撮影しよう!
ペヤング ソースやきそば 120g×18個
とりあえず保存食として買っておけば間違いなし!
レッドブル エナジードリンク 250ml×24本
翼を授けよう!
MOFT X 【新型 ミニマム版】 iPhone対応 スマホスタンド
Amazon一番人気のスマホスタンド!カード類も収納出来てかさ張らないのでオススメです!
サンディスク microSD 128GB
スマホからSwitchまで使える大容量MicroSDカード!
スポンサーリンク
目次
VPCとは
What’s?
皆さんはVPCという言葉をご存知でしょうか?
サーバーサイドエンジニアやインフラエンジニアの方には馴染みがあると思いますが、やフロントサイドエンジニアやアプリエンジニアの方はピンとこないかもしれませんね。
VPCとはVirtual Private Cloudの略で、AWSアカウント専用の仮想ネットワークの事を指します。
似た言葉にVPNというものもありますが、あちらはVirtual Private Networkの略で少し意味が違います。
AWSが主流になりつつある
AWSはご存知の通り、クラウド環境にインフラを構築していくことが可能です。
Webシステムを開発する場合、近年ではAWSにインフラを構築するケースがデファクトスタンダードになってきています。
また、基本的にはAWSではEC2インスタンスを構築してWebシステムを稼働する形になると思います。
このEC2などのモジュールはAWS上のVPC内に構築されていくのですが、VPCの作成をしていないと、アカウントに最初から用意されているデフォルトVPC内に追加していくことになります。
しかし、カスタマイズ性や細かいセキュリティを考えると、専用のVPC環境を作っておいたほうが良いです。
今回はVPC周りの作成作業をまとめてみましたので、作成手順をご紹介致します。
手順
スポンサーリンク
VPCの作成
まずは土台となるVPCの作成を行います。
AWSのマネジメントコンソールにログインし、サービスメニューからネットワーク&コンテンツ配信>VPCを選択します。
次に、左部メニューのVPCを選択し、VPCの作成ボタンをクリックします。
すると、VPCの作成ダイアログが表示されますので、名前タグ/IPv4 CIDRブロックを入力し、その他は初期値のままではい、作成するボタンをクリックします。
これでVPCの作成は出来ました。
サブネットの作成
次にサブネットを作成します。
サブネットとは、VPCに割り振ったIPをさらに細かく分割したものを指します。
各サブネットに紐付けたEC2を複数台構成しELBを挟むことで冗長構成などを実現することが可能になります。
今回はごく一般的な冗長構成を実現するための、publicとprivateのサブネットをそれぞれ2つずつ作成をしてみます。
用途としては、publicサブネットはAPIやWebサイトなどの外部に公開するモジュールを乗せ、privateサブネットはDatabaseなどの外部に公開しないモジュールを乗せて使い分けを行います。
左部メニューのサブネットを選択し、VPCの作成ボタンをクリックします。
すると、サブネットの作成ダイアログが表示されるので、任意の名前タグ/先ほど作成したVPC/任意のアベイラビリティゾーン/サブネットに割り符るIPv4 CIDR ブロックを入力の上、はい、作成するボタンをクリックします。
同じように、冗長構成用の2つ目のサブネットを作ってください。
その際に、アベイラビリティゾーンはかぶらないように変えて作成しましょう。
public/private合わせて4つ作成したら、サブネットの作成は完了です。
インターネットゲートウェイの作成
次にインターネットゲートウェイを作成します。
こちらを作成して設定しないと、publicサブネット内のモジュールに外部ネットワークからの接続が出来ません。
また、privateサブネットには設定しないように気をつけましょう。
あくまで、privateサブネットはVPC内部からのみのアクセスに留めたいからです。
左部メニューのインターネットゲートウェイを選択し、VPCの作成ボタンをクリックします。
すると、インターネットゲートウェイ作成画面に遷移するので、任意の名前タグを入力し作成ボタンをクリックします。
以下のような画面が表示されればインターネットゲートウェイの作成は完了なので閉じるボタンをクリックします。
VPCにアタッチ
作成されたインターネットゲートウェイは状態がdetachedになっていると思います。
ですので、先ほど作成したVPCにアタッチをしましょう。
作成したインターネットゲートウェイにチェックを入れ、アクションメニューからVPCにアタッチを選択します。
すると、VPCにアタッチ画面が表示されるので、作成したVPCを選択し、アタッチボタンをクリックします。
これでインターネットゲートウェイがVPCにアタッチされました。
ルートテーブルの作成
次にルートテーブルを作成します。
こちらもpublicとprivateの2つを作る必要があります。
左部メニューのルートテーブルを選択し、ルートテーブルの作成ボタンをクリックします。
次に、ルートテーブルの作成ダイアログが表示されるので、任意の名前タグ/先ほど作成したVPCを選択し、はい、作成するボタンをクリックします。
これでルートテーブルの作成は完了です。
ルートテーブルとサブネットを関連付け
次に、ルートテーブルとサブネットを関連付けします。
作成したルートテーブルにチェックを入れ、サブネットの関連付けタブを選択し、編集ボタンをクリックします。
すると、作成済みのサブネットを選択することが可能なので、publicルートテーブルならpublicサブネット、privateルートテーブルならprivateサブネットをそれぞれ選択し、保存ボタンをクリックします。
これでルートテーブルとサブネットの関連付けは完了です。
ルートテーブルとインターネットゲートウェイの関連付け
次に、同様にルートテーブルとインターネットゲートウェイを紐付けます。
こちらは、publicのみインターネットに公開したいのでpublicのルートテーブルのみ行う作業となります。
作成したpublicルートテーブルにチェックを入れ、ルートタブを選択し、編集ボタンをクリックします。
次に、別のルートを追加ボタンを押すと、入力行が追加されるので、送信先に0.0.0.0/0
を入力し、ターゲットは作成したインターネットゲートウェイを選択し、保存ボタンをクリックします。
これでルートテーブルとインターネットゲートウェイの関連付けは完了です。
終わりに
以上の作業で、AWSのVPC周りの下準備は完了しました。
次回はpublicサブネットとprivateサブネットにそれぞれEC2を構築し、踏み台サーバー経由で接続するところまでまとめようと思っています。
興味があれば、是非そちらも見て頂ければなと思います。