【AWS】RDS(Aurora)作成(2018年UI版)
前回の投稿から期間が空いてしまい申し訳ございません。
前回は「【AWS】VPC作成(2018年UI版)」という記事を書きました。
今回はその続きというわけではないですが、defaultのVPC以外の default以外のVPCを利用してRDS(Aurora)を立ち上げます。
次回は、作成したVPCを対象に、Elastic Beanstalkで実際にサーバーを構築して行きたいと思います。
前回こんなことを言ってましたが、忘れてください。順番変えます。RDSを優先的にやりたいんです。
作成するRDS
インスタンスのクラス | エンジン |
---|---|
db.t2.small | Aurora MySQL 5.7.12 |
まずはじめに
予めセキュリティグループを作成しておきましょう。
RDSを立ち上げる際にセキュリティグループを作成するの面倒ですし。
今回は割愛しますが、社内のIP、特定のEC2インスタンスからのトラフィックを許可する設定にしています。
サブネットグループ
RDS立ち上げ中でも作成できますが、面倒なのでこちらも先にサブネットグループを作成します。
トップページ > RDS > サブネットグループの順に進み、DBサブネットグループの作成をクリックします。
- サブネットグループ名(適当な名前)
- 軽い説明
- 利用するVPC(前回作成したVPC)を選択
- 「このVPCに関連するすべてのサブネットを追加します」をクリック
- 不要なサブネットを削除(必要なサブネットのみ追加しても構いません)
上記の内容を入力しましたら作成ボタンをクリックし、サブネットグループを作成します。
RDS(Aurora)立ち上げ
さてさて。
サブネットグループの作成が完了したので、RDSを立ち上げましょう。
「Amazon Aurora」、「MySQL 5.7 との互換性」をチェックし、次の項目へ進みます。
スペックを選択し、**マルチAZ配置**の項目を任意で選択します。 今回はマルチAZ配置を「いいえ」と選択しました。 次に、DBインスタンスの名前等を記入します。なんでも良いです。 パスワードをランダム生成する際、僕は[こちら](http://www.graviness.com/temp/pw_creator/)のサイトを利用しています。- VPC
- 先ほど作成したサブネットグループ
- パブリックアクセスの可否
- アベイラビリティゾーン
- VPCセキュリティグループ
上記の内容を入力します。
続きましてクラスターの設定をします。 以下の項目を入力しましょう。- クラスター名
- DB名
- ポート
- パラメーターグループ(今回はデフォルト)
- クラスターのパラメータグループ(こちらもデフォルト)
以下、暗号化/パフォーマンスインサイト/モニタリング/バックアップなどの項目はお任せします。
用途に応じて入力しましょう。
長い道のりを経て。。。
全ての項目の入力が済み、漏れがないか確認しましたら、「データベースの作成」をクリックしましょう。
5分ほどでDBが利用できるようになります。
【おまけ】RDSへ疎通確認を行う3つの方法
DBサーバーを立ち上げたのは良いが、疎通確認はどのようにやるべきか。
僕は大体以下のパターンのいずれか(複数)の手法で疎通確認してます。
通信元のインスタンスはRDSに対してインバウンド許可されていることが前提です。
- EC2にmysql-clientを
yum install
してサーバー上からアクセス - ローカルからEC2へSSHトンネリングしながらMysqlログイン(MysqlWorkbench等)
- EC2から
nc
コマンドを利用する
時と場合にもよりますが、最近はEC2上でncコマンドを利用することが多いです。
pingコマンドのように手っ取り早く疎通確認ができるので楽ですね。
こんな感じ。
$nc -zv <DB-instance-endpoint> <port>
「pingで良いじゃん」と思うかもしれませんが、RDSはping系のコマンドが利用できないです。AWSのトラブルシューティングにも以下のように記載がありました。
Amazon RDS では ping も含めて Internet Control Message Protocol (ICMP) トラフィックを受け入れません。
また、社内IPアドレスをインバウンド許可しているならば、ローカルからでもncコマンドで疎通確認ができます。しかし本来の目的は「ローカルからの疎通確認」ではなく「サービスで利用する環境の構築」なのであまりお勧めできません。きちんとサーバー上で実行しましょう。
以上、RDSの立ち上げでした。
次回こそElasticBeanstalkを利用してサーバーを立ち上げたいと思います。
(もうすでにサーバー立ち上がってるけど記事の準備がぁぁぁぁ...)