RDSの操作
データベースの操作は、EC2と同じように「データベースを準備する操作」と「データベースを使用する操作」に分かれている。
データベースを準備する操作
データベースを作成したり、各種設定したりする操作。これらは、マネジメントコンソールで行う。RDSはマネージドサービスなので、セキュリティバッチの適用やアップデートは自動的に行われる。
データベースを使用する操作
データを入力・削除・変更する操作。これはデータベースクライアント(管理ツール)や、ソフトウェア(アプリケーション)から行う。
RDSの場合、ソフトウェアはEC2上に置かれることが多く、連携させて使う。
ex)WordPress(ブログ用のシステム)であれば、EC2に本体のアプリケーションを入れ、データベースをRDSに構築する。
RDSサービスの機能
RDSはデータベースサービスなので、さまざまな設定項目がある。
データベースエンジンに関する項目
データベースについては、どのDBMSを使うのかを考えておく。AWSで対応しているバージョンとそうでないバージョンがある。多くのデータベースはソフトウェアと連携して使うので、併用するソフトウェアと対応するDBMSのバージョンも調べる必要がある。
項目 | 意味 |
---|---|
データベースエンジン | DBMSの種類・・MySQL,PostgreSQL,MariaDB,Amazon Aurora |
ユースケース | 本番環境や開発環境かを選ぶ。本番環境ならば、マルチAZがデフォルトで有効になるなど、環境にふさわしい設定が表示される。 |
ライセンスモデル | GPLなど、ライセンスモデルが複数ある場合は選ぶ |
データベースエンジンのバージョン | バージョンが複数ある場合は選ぶ |
データベースインスタンスに関する項目
オンプレミス環境でいえば、物理的なサーバーに当たる部分。
料金との相談になるため、必要なスペックと予算から絞り込む。
マルチAZやスケーリングはデータベースの規模や重要度によって選択する。
項目 | 意味 |
---|---|
インスタンスのクラス | データベースインスタンスクラスのスペック。EC2のように複数のインスタンスクラスが用意されている。 |
マルチAZ配置 | AZをまたいで冗長化するかどうか。 |
ストレージタイプ | ストレージの種類 |
ストレージの割り当て | ストレージの容量 |
自動スケーリング | ストレージが足りなくなった時に自動で増やすかどうか。 |
スケーリング閾値 | 自動スケーリングの閾値 |
データベースインスタンス識別子 | データベースインスタンスのAWSにおける管理上の名前。データベースの名前ではないので注意 |
マスターユーザーの名前 | データベースインスタンスの管理者ユーザー名。任意 |
マスターユーザーのパスワード | データベースインスタンス管理者のパスワード。任意 |
|
ネットワークに関する項目
RDSのインスタンスは、必ずVPC上のおく必要がある。EC2と連携させる予定がある時は、予めEC2で使用しているサブネットグループやAZを調べておく。セキュリティグループも作っておく。
項目 | 意味 |
---|---|
VPC | RDSを配置するVPC。VPCを作成するには、VPCダッシュボードを使用する。デフォルトVPCも選択できる。 |
サブネットグループ | RDSを配置するサブネットグループ。EC2インスタンスと連携させる場合は、同じ場所にするのが一般的。(事前に調査) |
パブリックアクセシビリティ | データベースインスタンスにパブリックIPアドレスを割り当てるかどうかを表す。同じVPC内のサービス以外からアクセスする場合は、IPアドレスを割り当てる。AWS外からデータベースにアクセスしたい場合も必要。 |
アベイラビリティゾーン | RDSを配置するAZ。EC2インスタンスと連携させる場合は、同じ場所におくのが一般的。 |
セキュリティグループ | インスタンス単位で動くファイアウォール。使用するポートを開けておかないと通信できないので注意。 |
データベースの環境に関する項目
データベースごとに環境を設定できる。保守に関わる項目が多いため、運用を見越した選択が重要。
項目 | 意味 |
---|---|
データベースの名前 | データベースの名前 |
ポート | 使用するポート。ex)1433(SQLServer),3306(MySQL),5432(PostgreSQL),5439(Redshift),1521(Oracle Database) |
データベースパラメータ | 環境設定のオプション。多くの場合はデフォルトのまま。 |
オプショングループ | 追加機能の設定。多くの場合はデフォルトのまま。 |
暗号化 | 暗号化するかどうかを表す。インスタンスの種類によっては使用できない。 |
バックアップ | 自動的に作られるバックアップの保存期間 |
モニタリング | データベースインスタンスをモニタリングする方法。「拡張モニタリング」を有効にするとより詳細の情報が得られるが料金がかかる。 |
ログのエキスポート | Amazon CloudWatch Logsを使ってログを出力 |
メンテナンス | 自動的にアップロードする方法と時間帯 |
削除保護 | 削除しないように保護するかどうか |
RDSを使用する流れ
- AWSにログイン
リージョンを選択し、マネジメントコンソールを開く
RDSダッシュボードを開く - DBインスタンスを作る
DBを作る
エンジンを選択する
ユースケースを選択
DB詳細(マシンスペック)を指定
詳細設定(DBの設定)を指定 - RDSに接続する
EC2からRDSに接続する
DBクライアント(管理ツール)から接続 - データを入力する
既存のデータをインポート
新規データの入力・削除・変更
RDSは多くの場合、EC2上に置いたソフトウェアと連携して使う。
そのため、EC2と同じネットワークに設定したり、EC2と連携したりする作業が必要になる。