2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

AWSのEC2+RDSの構築

Posted at

最初からの構築

最初の状態から構築はなかったので、今回会社の構築内容をまとめてみました。個人的にGCPの方を経験したかったですが貴重な経験ではあると思います。

前提条件

  • AWSアカウントの取得
  • Mac環境

構成図

一応、本番で利用するサーバーとして構成しようかと思います。サーバーの障害耐性や冗長化、負荷分散、オートスケーリングなどは入れてない、なるべくコストが掛からない構成です(バンバン入れたいけど)。
Web App Reference Architecture.png
図のRDSのSlaveの方は実際入れてないです。RDSの設定でサブネットグルプが必要ですが、そこで複数のアベイラビリティーゾーンが必要なので作るしかないです。実際余裕があればSlaveSlaveとして利用するようです。

DBサーバーはMulti-AZ構成という物理的に離れたデータセンターにホットスタンバイ用のサーバーをもう一つ建てることで、障害対応やバックアップなどの対応が可能

アベイラビリティーゾーンとVPCの構造は実際はVPCの中にアベイラビリティーゾーンが入る形ですかね。

ウェブサーバーのサブネットは「public subnet」はネットからの接続するために「Elastic IP」によってグローバルIPを付与します。

VPC環境の構築

「Start VPC Wizard」を始めると詳細な設定をしなくても良いらしいですが、今回は一つ一つ設定を行いましょう!!

VPCの作成

  1. 左メニューから「VPC」を選択し、「VPCの作成」という青いボタンをクリック
  2. 今回作成のネットワーク全体を表す「CIDR」を「192.168.0.0/16]と設定
  3. 「作成」の青いボタンをクリック
  4. あとで見分けがつくようにタグに適当な名前をつける

[VPC作成画面]
スクリーンショット 2019-10-10 11.17.48.png
[VPCのタグの記入]
スクリーンショット 2019-10-10 11.22.51.png

サブネットの作成

EC2 インスタンス(Webサーバー)用と RDS インスタンス(MySQL)用、RDS Multi-AZ 構成用とで計3つ作成します。

  1. 左メニューから「サブネット」を選択し、「サブネットの作成」という青いボタンをクリック
  2. VPCは先ほど作成した物を指定
  3. アベイラビリティーゾーンは「ap-northeast-1a」に設定
  4. CIDRは「192.168.0.0/24」に設定
  5. あとで見分けがつくようにタグに適当な名前をつける
スクリーンショット 2019-10-10 11.24.53.png スクリーンショット 2019-10-10 11.27.44.png 各サブネットの作成内容は以下になります。
Name VPC アベイラビリティーゾーン IPv4 CIDR
public subnet: web example-vpc ap-northeast-1a 192.168.0.0/24
private subnet: DB example-vpc ap-northeast-1a 192.168.1.0/24
private subnet: DB(Slave) example-vpc ap-northeast-1c 192.168.2.0/24
3つ目のサブネットは、RDS の Multi-AZ 構成で利用するものなので、2つ目のサブネットとは異なるアベイラビリティーゾーンを指定します。本エントリーの構成では RDS を単一 AZ 構成で構築しますので、このサブネットは今回は利用しません。

インターネットゲートウェイ

インターネットゲートウェイはVPC内のサーバがインターネットと接続するための出入口です。

  1. 左メニューから「インターネットゲートウェイ」を選択し、「インターネットゲートウェイの作成」という青いボタンをクリック
  2. あとで見分けがつくように「名前タグ」に適当な名前をつける
  3. 「作成」ボタンをクリック
スクリーンショット 2019-10-10 11.32.29.png スクリーンショット 2019-10-10 11.33.00.png スクリーンショット 2019-10-10 11.33.23.png 次に作成したインターネットゲートウェイをVPCと紐付けます。 1. 「アクション」メニューの「VPCにアタッチ」を選択 2. 「VPCにアタッチ」画面で、先ほど作成したVPCを選択 3. 「アタッチ」ボタンをクリック スクリーンショット 2019-10-10 11.33.47.png スクリーンショット 2019-10-10 11.34.12.png スクリーンショット 2019-10-10 11.34.38.png ### ルートテーブルの確認&作成 各サブネットに対して仮想的に配置されるルーターのルーティングテーブルのようなものです。左メニューからサブネットを選択し、作成したサブネット一覧を見てみましょう。自動作成された Route Table がデフォルトで割り当てられているのがわかります(下の図ではrtb-******c41となっています) スクリーンショット 2019-10-10 11.39.10.png ルートテーブルは、「Public subnet」に関してはインターネット(外界)への出口(Internet Gateway)が必要であり、「Private subnet」に関しては不要となります。したがって、自動生成された ルートテーブルは「Private subnet」用として使います。 #### ルートテーブルの作成 1. 左メニューから「ルートテーブル」を選択し、「ルートテーブルの作成」という青いボタンをクリック 2. VPCに先ほど作成した物を指定 3. 「作成」ボタンをクリック スクリーンショット 2019-10-10 11.43.06.png スクリーンショット 2019-10-10 11.43.40.png 次に今作成したルートテーブルを「Public subnet」に設定します。 1. 一覧から今作成したルートテーブルを選択し、画面下部の「ルート」タブを開いて、「ルートの編集」ボタンをクリック 2. 「送信先」に「0.0.0.0/0」と入力 3. 「ターゲット」に「Internet Gateway」を選択 4. 表示されるインターネットゲートウェイの中で、先ほど作成したインターネットゲートウェイを選択 5. 「ルートの保存」ボタンをクリック スクリーンショット 2019-10-10 11.47.11.png スクリーンショット 2019-10-10 11.47.23.png 最後に今作成したルートテーブルを先ほど作成した「public subnet」に設定します。 1. 左メニューから「サブネット」を選択し、サブネット一覧から「public subnet」を選択 2. 下部の「ルートテーブル」のタブを開いて「ルートテーブルの関連付けの編集」という青いボタンをクリック 3. 「ルートテーブルの関連付けの編集」の「ルートテーブルID」から作成したルートテーブルを選択して一覧に追加されたのを確認 4. 「保存」ボタンをクリック スクリーンショット 2019-10-10 11.48.19.png スクリーンショット 2019-10-10 11.49.06.png スクリーンショット 2019-10-10 11.50.04.png

セキュリティグループの作成

セキュリティグループは用途に合わせて複数作成します。今回は2つ作成します。

  • ウェブサーバー用のセキュリティグループ
  • DB用のセキュリティグループ:ウェブサーバー用のセキュリティグループからの接続(3306)

左メニューから「セキュリティグループ」を選択します。既にセキュリティグループが一個ありますが、それはおいて新しく作成します。
スクリーンショット 2019-10-10 11.54.31.png
入力したら「作成」ボタンをクリックします(説明は日本語だとダメでした。)。

  1. 作成されたセキュリティグループに名前を適当に記入
  2. 下部にある「インバウンドルール」タブを選択し、「編集」ボタンをクリック
  3. 「インバウンドのルールの編集」画面で適当なルールを入れて「ルールを保存」をクリック
スクリーンショット 2019-10-10 11.58.51.png DB用のセキュリティグループは以下のようにソースに**ウェブサーバー用のセキュリティグループID**を記入します。 スクリーンショット 2019-10-10 12.04.14.png ### DBのサブネットグループ:RDSからVPCを利用するための設定 RDS管理コンソールを開きます。 1. 左メニューから「サブネットグループ」を選択 2. 「DBサブネットグループの作成」のオレンジ色のボタンをクリック 3. 「名前」と「説明」に適当に入力 4. 「VPC」に先ほど作成したものを指定 5. 「アベイラビリティーゾーン」と「サブネットID」(private subnet: DB)を選択して「サブネットを追加します」をクリック 6. 先と違う「アベイラビリティーゾーン」を選択し、「サブネットID」(public subnet: DB(Slave))を選択して「サブネットを追加します」をクリック 7. 「作成」ボタンをクリック ![スクリーンショット 2019-10-10 12.39.04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/489182/dd66748b-d40c-f0aa-71f3-fb07b5ef2301.png)
アベイラビリティーゾーン サブネットID CIDRブロック
ap-northeast-1a private subnet: DB 192.168.1.0/24
ap-northeast-1c private subnet: DB(Slave) 192.168.2.0/24

EC2、RDSの構築

以下の設定は省略します。以下のところだけ設定すれば大丈夫だと思います。

  • EC2の「ステップ3:インスタンスの詳細設定」で「public subne」を「ステップ6:セキュリティグループの設定」でウェブサーバー用のものを設定
  • RDSは先ほど作成したサブネットグループが設定
2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?