オンプレミスの定番構成をクラウドへ
Oracle Databaseを利用する上で欠かせないのが、可用性の確保です。今でこそOracle Exadata Database MachineやOracle Database ApplianceなどのEngineered Systems(※1)でお墨付き構成をすぐ入手できますが、ゼロから設計・実装まで行うには高度なスキルを必要とします。
※1:Oracleのソフトウェアとハードウェアが一体となったアプライアンス型の製品
とは言えOracle Databaseは歴史ある製品なので、オンプレミスの場合はSIerやベンダーが持つノウハウ、経験で大抵の場合は事足ります。Real Application Clusters(以下、RAC)、Data Guard、サードパーティ製クラスタウェアを利用したアクティブ・スタンバイ構成、ストレージミラーなど実装方法も様々なので選択肢には困りません。
構成 | 概要 |
RAC | アクティブ-アクティブ型のクラスタ構成。ノード追加によるスケールアウトが可能 |
RAC One Node | RACの技術を応用したアクティブ-スタンバイ型のクラスタ構成 |
Data Guard | REDOログの転送によってデータベース間の同期を取る構成 |
Active Data Guard | Data Guardの同期を維持したまま、スタンバイ側を読み取り専用でオープン可能 |
アクティブ・スタンバイ | 障害発生時にスタンバイ側へフェイルオーバーする構成 |
ストレージミラー | ストレージやデバイスのレベルでデータを同期する構成 |
ところが、クラウドになると話が変わります。可用性をデータベースの機能で確保するのか、それともクラウド側が持つ技術で確保するのか、責任の所在がぶれてしまうからです。例えばInfrastructure as a Service(IaaS)を利用する場合、インフラ層は一定の可用性が確保されていますが、その上で動いているデータベースまでは考慮してくれません。対策としてRACを組みたくても、ほとんどのクラウドではサポートされていません。
Oracle Database Cloud ServiceはRACとData Guardをサポートしており、さらに構築が非常に簡単です。オンプレミスとの高い互換性を持つというコンセプトのとおり、定番の高可用性構成をクラウドでそのまま利用できるのです。
ワンクリックでRACを構築
Oracle Database Cloud ServiceでRACをどれだけ簡単に作れるのか、実際に試してみましょう。以下がRACの構築画面です。
操作は非常にシンプルで、赤枠の部分にチェックを入れるだけです。あとは数十分待つだけでRACの環境が自動的に立ち上がります。通常、RACの構築はクラスタウェアとデータベースをそれぞれインストールする必要があり、動作検証まで含めると数日がかりの作業になります。それをたったワンクリックで実現できるのは、クラウドならではのメリットと言えるでしょう。
RACの環境ができあがると、以下のように各ノードの情報が表示されます。
現在は2ノード構成のみ作成可能になっており、トライアル版では2 OCPU(※2)以上、契約済の環境では 4 OCPU以上のリソースが必要です。エディションはEnterprise Edition - Extreme Performanceを選択する必要があり、Standard EditionのRAC(SE-RAC)は構築できないのでご注意ください。
※2:Oracle Compute Unitの略で、インスタンスに割り当てられるCPUリソースのこと
前述のとおりRACをサポートするクラウドはほとんどないので、このRACは様々な用途に活用できます。従量制にして時間単位の課金を選択できるので、まず開発・テスト環境として利用してみるのが良いでしょう。オンプレミスの場合、本番環境がRACだと開発・テスト環境にもRACが必要になりますが、実際はライセンスやインフラのコストが折り合わず、シングル構成になることがよくあります。構成に差異があると、本番環境のワークロードを再現できなかったり、事前にパッチの適用手順・影響度を確認できなかったりと様々なリスクがあります。クラウドにRAC環境を持つことでコストの削減とリスクの低減を同時に実現できます。