はじめに
10月初旬にMyCoachをリリースいたしました。
MyCoachはタスク管理アプリ(iOS、Android)とコーチ検索サイトで構成されております。
アプリの使い方につきましてはこちらの記事をご確認ください。
今回はAWSのネットワーク構築(VPC)をコーチ検索サイトの本番環境構築で行った流れに沿って紹介します。
関連記事
MyCoachの本番環境をAWS上に構築する 〜EC2編〜
Amazon EC2を使ってみる
MyCoachのネットワーク構成
MyCoachは2種類のネットワーク(サブネット)で構成されています。
一つ目は公開ネットワークでWebサーバが配置されています。
二つ目は非公開ネットワークでDBサーバが配置されています。
DBサーバには外部からアクセスすることができないため、設定を行う際にはWebサーバを経由してSSHログインします。
Webサーバは一台ですが、SSL証明書の更新を簡単にするためにフロントにALBを立たせています。
VPCとは
VPCはVirtual Private Cloudの略で、仮想的なプライベートネットワークを構築できます。
例えば、Webサーバはパブリックなネットワーク上に配置するけど、DBサーバは外部からアクセスできないようにプライベートなネットワーク上に配置するといった利用ができます。
設定する項目
設定する項目は下記の通りです。
- VPC
- インターネットゲートウェイ
- サブネット
- ルートテーブル
それぞれの項目について個別に説明します。
VPCの設定
VPCはこれから設定するネットワークの大元のような存在です。
まず、AWSコンソールのトップ画面の入力欄に「vpc」と入力し検索します。
すると、VPCダッシュボードに遷移しますので左のメニューのVPCをクリックします。
VPCの一覧画面を開くとすでにVPCが一つ定義されていますが、新しいVPCを作成します。
「VPCの作成」ボタンをクリックし、下記の画像のとおり設定し作成ボタンをクリックします。
インターネットゲートウェイの設定
VPC上のEC2インスタンスをインターネットに接続するためにはインターネットゲートウェイの設定が必要です。
左のメニューのインターネットゲートウェイをクリックします。
インターネットゲートウェイの作成ボタンをクリックし、下記の画像の通り設定して作成ボタンをクリックします。
次に作成したインターネットゲートウェイをVPCにアタッチします。
mycoach-igwを選択し「VPCにアタッチ」をクリックします。
下記の画像の通り、アタッチするVPCを選択してアタッチボタンをクリックします。
サブネットの設定
公開するサブネットと非公開なサブネットを設定します。
公開ネットワークの設定
左のメニューからサブネットをクリックします。
下記の画像のとおり設定し作成ボタンをクリックします。
同様にpublic-cのネットワークを設定します。
mycoach-public-c 10.1.12.0/24 ap-northeast-1c
非公開ネットワークの設定
公開するサブネットと同様に非公開なprivate-a、private-cのネットワークを設定します。
mycoach-private-a 10.1.51.0/24 ap-northeast-1a
mycoach-private-c 10.1.52.0/24 ap-northeast-1c
IPアドレスの自動割り当て
公開するネットワーク上に配置されるインスタンスには自動的にグローバルIPアドレスを割り当てるように設定します。
mycoach-public-aのみを選択した状態で「サブネットのアクション」→「自動割り当てIP設定の変更」をクリックします。
「IPの自動割り当て」にチェックを入れて保存ボタンをクリックします。
mycoach-public-cも同様に設定します。
ルートテーブルの設定
まず、公開するネットーワークのルートテーブルを設定します。
左のメニューのルートテーブルをクリックします。
下記の画像の通り設定し、作成ボタンをクリックします。
ルートテーブルを作成したら、下記の画像の通りサブネットの関連付けとルート設定を行います。
(0.0.0.0/0のターゲットは作成したインターネットゲートウェイを選択します)
次に非公開なネットワークを公開するネットワークと同様の手順で作成します。
ただし、インターネットに接続しないため0.0.0.0/0の設定は不要です。
さいごに
今回はVPCの設定を紹介しました。
次回はEC2の設定を紹介する予定です。