元オンプレエンジニアがAWSを使ってみた(RDS構築編)

マネジメントコンソールにログインすると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パラメーターグループやオプショングループでの設定内容や制約ついて取り上げます。

お楽しみに!

この記事を書いた人

aws-recipe-user