skillup

技術ブログ

サーバー・ネットワーク

VPCでEC2+RDSを構築

投稿日:

以前の記事で、VPCを使ってEC2の環境を作りましたが、一般的にwebアプリはwebサーバーとDBがセットになることがほとんどだと思いますので、AWSでこの環境を構築してみようと思います。

イメージ図

*EC2のサブネットは外に通じていますが、DBは通じていないため、直でアクセスができません。アクセスするときはEC2をSSHで踏み台にして、そこからアクセスする必要があります。

RDSの設定に関するポイント

サブネットグループ

DBのサブネットは個別のサブネットではなく、複数のアベイラビリティーゾーンを含むサブネットグループという複数のサブネットを定義することになります。

*アベイラビリティーゾーン・・リージョンのさらに細分化された地域のことです。リージョンが国ならアベイラビリティーゾーンはその国の中の地域のようなものになるかと思います。

そのためにDBのサブネットはアベイラビリティーゾーンを散らせておきましょう。

RDSの設置画面から「サブネットグループ」→「DBサブネットグループ」→「サブネットグループ」の選択から複数のサブネットを選択すればOKです。

セキュリティグループ

RDSはEC2のみから接続が可能なようにしますので、下記のようにセキュリティグループを設定すればOKです。

その他のポイント

DBのホスト名ですが、相当するのは「エンドポイント」になります。

確認は当然EC2からDBに繋げるか(PHPの簡単なスクリプトなどでの検証が有効)を試せばOK。

上記のように設定しておけばEC2サーバーを踏み台しにしてRDSにつなげますが、直で繋ぎたい場合は、下記3点に気をつけて設定しましょう。

  • RDS作成時にパブリックアクセシビリティを「はい」にしておく
  • RDSのセキュリティグループで「MySQL/Aurora」「マイIP」を選択し、自分のIPを許可しておく
  • RDSのサブネットでルートテーブルの紐付けが必要

-サーバー・ネットワーク
-,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

linuxでのherokuのインストール&パスの通し方

linuxでのherokuのインストールやパスの通し方について 原則としてruby入ってないとダメっぽいです。(しかもruby1.8系だと2016年6月現在エラーが出ますので最新バージョンをインストー …

no image

PHPのコマンドライン+隠しファイルも含めたcpコマンド

超小ネタを2つほど phpにrオプションを入れるとPHPコードを実行できます。

cp コマンドですが、隠しファイルも含めてコピーしたい …

no image

vimの基本的な使い方 設定ファイル、基本コマンド他

もう4年ぐらいの付き合いになる憎らしくもかわいいエディタvi(vim)について。 雑誌に特集があったのでこれを機にまとめてみました。シリーズものになるかも・・・ Contents1 Vi(vim)とは …

no image

vagrantでの静的ファイルのキャッシュがクリアされない

タイトルのまんまですが、vagrantでapacheを使ってまして、静的ファイルのキャッシュがクリアされないと言う問題が発生しました。 vagrantは結構長い間使ってましたが、今まで素のhtmlを書 …

no image

GitLabのWebhook

前回の記事でGitLabのCI/CDを特集しましたが、実は今回やりたかったのはそこまで大掛かりなCIではなく、プッシュ時にオートマージ、オートデプロイなどでしたので、もっと簡単な仕組みでできます。 例 …

アーカイブ