マネジメントコンソールにログインするとAWSで利用できるサービス一覧が表示されます。
RDSはデータベースのカテゴリにありますので今回はこれを選択します。
データベースカテゴリには他に、NoSQLデータベースサービスであるDynamoDBや、ペタバイト規模のデータウェアハウスサービスのRedshiftもあり、AWSの提供するサービスだけで、多様なDB要件に対応することができます。
ナレコムAWSレシピ DynamoDB紹介記事一覧
ナレコムAWSレシピ DynamoDB紹介記事一覧
ナレコムAWSレシピ Redshift紹介記事一覧
RDSダッシュボード
ダッシュボード画面が表示されるので、「DBインスタンスの起動」をクリックします。
エンジンの選択
利用したいRDBMSとエディションを選択します。前回記事でもお伝えしたように、商用、OSSのメジャーなRDBMSが選べます。
今回は「Oracle EE」(Oracle Enterprise Edition)を選択します。
本番稼働/開発環境の選択
今回は検証用に使いたいだけなので、「開発/テスト」を選択します。
DB詳細の指定
この画面では以下のようなDB構築のために以下のような項目を設定できます。
DBエンジンのバージョン…Oracleなら11g、12c、さらにマイナーバージョンのどれを使いたいか。
マルチAZ配置…高可用性構成を利用するか。
ストレージタイプ、割り当て…利用するディスクのタイプ(汎用SSD、高IOPS SSD、HDD)とサイズ。
DBマスタユーザの名前・パスワード…管理用のユーザの名前とパスワードを指定します。Oracle on RDSの場合、sysユーザはログインも利用もできませんので、注意が必要です。
設定を入力したら、「次のステップ」を選択します。
[詳細設定]の設定
この画面でも引き続き以下のような項目を設定できます。
パラメーターグループ…RDBMSの各種パラメーターはRDSではDBパラメーターグループと呼ばれる単位でまとめられています。Oracleであれば初期化パラメーターの設定は、このグループとして管理されます。
詳細は次回記事で取り上げます。
オプショングループ…RDBMSの各種オプションはRDSではオプショングループと呼ばれる単位でまとめられています。Oracleであれば、OEM、TDEの利用有無などを指定できます。こちらも詳細は次回記事で取り上げます。
なお、ここではデフォルトのパラメーターグループ、オプショングループを指定しましたが、別のグループに付け替えるためには、DBの再起動が必要になります。
DBの詳細設定の画面ではほぼクリックだけで、様々な要件に対応することができます。
viを使ったスクリプトの編集は必要ありません!
設定を入力して、「DBインスタンスの作成」を選択すると、DBインスタンスの作成、起動が始まります。
「DBインスタンスの表示」を選択するとインスタンス一覧画面に遷移します。
RDSインスタンス起動の確認
今回の構成の場合は作成、起動に約10分かかりました。
以下の画面のように、ステータスが「利用可能」となれば起動完了です。
RDSはマネージドサービスの制約で、OSファイルには直接アクセスできません。アラートログもマネジメントコンソールから確認する方式です。
DBインスタンスを選択し、「ログ」を選択すると、ログ一覧が表示されます。
ここからアラートログやトレースファイル、auditログなどが参照できます。
フィルタに「alert」と入力してアラートログを見てみましょう。
以下のように、アラートログの内容をブラウザ上でも確認できます。tail -fやgrepが使えないのは少し物足りませんが、ログ一覧の画面からログのダウンロードも可能で、使い慣れたエディタでログの分析もすることも可能です。
参考に、データベースの起動時の初期化パラメーターの情報(デフォルト値以外)やデータベースオープンのメッセージを載せておきます。
「Completed: alter database open」でデータベースがオープンされて利用可能となったことがわかります。
アラートログを見る限りは、オンプレと違いはなさそうです。
1---------------------------------------2System parameters with non-default values:3 processes = 844 spfile = "/rdsdbbin/oracle/dbs/spfileORCL.ora"5 filesystemio_options = "setall"6 memory_target = 596M7 memory_max_target = 596M8 control_files = "/rdsdbdata/db/ORCL_A/controlfile/control-01.ctl"910 log_archive_dest_1 = "location="/rdsdbdata/db/ORCL_A/arch/redolog", valid_for=(ALL_LOGFILES,ALL_ROLES)"11 log_archive_format = "-%s-%t-%r.arc"12 archive_lag_target = 30013 db_create_file_dest = "/rdsdbdata/db"14 db_recovery_file_dest_size= 1G15 standby_file_management = "AUTO"16 undo_tablespace = "UNDO_T1"17 heat_map = "OFF"18 db_block_checking = "MEDIUM"19 recyclebin = "OFF"20 local_listener = "(ADDRESS = (PROTOCOL=TCP)(HOST=localhost)(PORT=1521))"21 job_queue_processes = 5022 audit_file_dest = "/rdsdbdata/admin/ORCL/adump"23 db_name = "ORCL"24 db_unique_name = "ORCL_A"25 open_cursors = 30026 max_string_size = "STANDARD"27 dg_broker_config_file1 = "/rdsdbdata/config/dr1ORCL.dat"28 dg_broker_config_file2 = "/rdsdbdata/config/dr2ORCL.dat"29 diagnostic_dest = "/rdsdbdata/log"30 enable_pluggable_database= FALSE3132 ~中略~3334Database Characterset is AL32UTF835No Resource Manager plan active36replication_dependency_tracking turned off (no async multimaster replication found)37Starting background process AQPC38Tue Jan 24 04:04:28 201739AQPC started with pid=30, OS id=11749 40Starting background process CJQ041Completed: alter database open42Tue Jan 24 04:04:30 201743---------------------------------------まとめ
RDBMS自体や、DBエンジンに関わる設定があるため、EC2より設定項目も多く、時間もかかりましたが、設定10分、起動10分という短時間でRDBMSを構築できました。
この作業でサーバ構築、DBの初期設定は完了しており、オンプレに比べれば格段に手間も時間も少なくて済みました。
しかしながら、例えばsysユーザが利用できないなど、オンプレに比べた制約もあります。
引き続き、次回も元オンプレエンジニアシリーズ RDS編として、RDSのDBパラメーターグループやオプショングループでの設定内容や制約ついて取り上げます。
お楽しみに!