AWS Elastic Beanstalk 再開 – 環境構築 – RDS

Elastic Beanstalk で環境を構築すると、以前は自動でRDSが構成されていたのだが、手動で構成が必要になったようだ。

データベースのライフサイクルがアプリケーションに依存しなくなるので、面倒ではあるが、その方が望ましい。

http://docs.aws.amazon.com/ja_jp/elasticbeanstalk/latest/dg/AWSHowTo.RDS.html

以下手順をメモ。

1.RDS インスタンスをデフォルトの VPC 内で起動

RDSマネジメントコンソールを開きDBインスタンスの起動

eb_rds01

ウィザードを進める

eb_rds02

eb_rds03

以下の設定値を書きとめる

  • DBインスタンス識別子
  • マスターユーザーの名称
  • マスターパスワード

eb_rds04

以下を設定

  • VPCDefault VPC

  • Subnet Groupdefault

  • Publicly AccessibleNo

  • Availability ZoneNo Preference

  • VPC Security GroupsCreate new Security Group

以下を書きとめる

  • データベースの名前
  • データベースのポート

eb_rds05

必要に応じて以下の設定

2.RDS インスタンスのセキュリティグループの進入ルールを変更

  • RDSコンソールを開き、インスタンスを選択、インスタンスを選択しビューを展開し、Detailsタブを開く
  • セキュリティーグループのリンクを選択

eb_rds06

EC2のセキュリティーグループの画面が開くので、インバウンドタブを選択し、ルールを追加し、保存する。

  • Type – DBエンジン
  • Souce – Custom IP を選択し、セキュリティーグループ自体のIDを入力する

同じグループ内の他のリソースからのトラフィックをデータベースポートで受信するためのセキュリティグループリソースを提供

eb_rds07

3.環境にセキュリティグループを追加

  • Elastic Beanstalk コンソールを開き、ダッシュボードから設定を選び、インスタンスを選択
  • EC2 セキュリティグループ の末尾に、カンマを入力し、続けて「rds-launch-wizard」を入力
  • 適用、保存

eb_rds08

4.環境プロパティを設定

Elastic Beanstalk コンソールを開き、ダッシュボードから設定を選び、ソフトウェア設定を選択

eb_rds09

以下のプロパティを追加する(上記手順で書きとめた値を利用する)

  • RDS_DB_NAME – Amazon RDS コンソールに表示される [DB Name]。

  • RDS_USERNAME – 環境にデータベースを追加するときに入力する [Master Username]。

  • RDS_PASSWORD – 環境にデータベースを追加するときに入力する [Master PASSWORD]。

  • RDS_HOSTNAME – Amazon RDS コンソールに表示される DB インスタンスの [Endpoint]。

  • RDS_PORT – Amazon RDS コンソールに表示される [Port]。

eb_rds10

5.Django の設定

Python での新しい Amazon RDS DB インスタンスの使用

import os

if 'RDS_HOSTNAME' in os.environ:
    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.mysql',
            'NAME': os.environ['RDS_DB_NAME'],
            'USER': os.environ['RDS_USERNAME'],
            'PASSWORD': os.environ['RDS_PASSWORD'],
            'HOST': os.environ['RDS_HOSTNAME'],
            'PORT': os.environ['RDS_PORT'],
        }
    }

ここまで設定できたら、コードのコミット、eb deploy を実行する

6.確認

6.1 Django アドミンサイト起動

eb_rds12

OK!

6.2 SQL ワークベンチから、データベースの内容(テーブルが作成されたか)を確認

eb_rds13

OK!

これで、開発の準備は整ったよ。

 

以前の作業

Follow me!

コメントを残す

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