RACとどう違う?Oracle 19c SEHAの特徴と動作条件

    サイオスのオイカワと申します。

    本稿では、SE2 RACの代替機能としてOracle社より提供されている、SEHA(Stanadard Edition High Availability)というシングルHA構成が可能な機能について、どんな特徴があるのか、利用における制限や注意事項は何か、そしてRACとの違いは、等についてご説明したいと思います。

    SE2 RACのユーザー様が、Oracle Databaseの可用性を検討する際の検討材料になれば幸いです。

    SE2 RACとは

    まず、RACについて説明します。これは、Oracle Databaseにて提供されているクラスタリング機能である、Real Application Clustersの頭文字をとった略語です。

    2台以上のサーバーが連携(クラスター化)して、1台のサーバーであるかのように動作させるOracle Databaseが提供する機能です。クラスタ化されたサーバーの1つに故障が起きた場合でも、残りのサーバーで処理を続行しますので、データベースとしての利用が継続できるため、障害に強い仕組みを構築することができます。


    Oracle RACの仕組み
    出典:https://www.atmarkit.co.jp/ait/articles/0904/13/news115.html

    Oracle databaseには、Enterprise Edition(以下EE)とStandard Edition(以下SE)という、大きく分けて2つのエディションが存在します。もともとEEの有償オプションであったRACが、Standard Editionにも無償提供され、後継であるSE2というエディションでも提供が継続されたことから、SE2 RAC(エスイーツーラック)と呼ばれ利用が拡大しました。

    非常に人気だったSE2 RACですが、19cというバージョンが登場し、このSE2 RACが利用できなくなることがOracle社から発表されました。12c等の人気のバージョンを利用していたユーザーは、バージョンアップを機に、代替策の検討が必要となりました。そこで登場したのがSEHAです。

    Oracle SEHAとは

    Oracle Databaseの可用性機能として製品サポートもされるため、SE2 RACの代替として注目されています。

    一般的にHAとは高可用性を意味し、ハードウェアやミドルウェア・ソフトウェアを冗長化して、システム障害に備えるソリューションのことです。万が一の時は、待機している正常なノードへシステムを自動的に切り替えることで、サービスへの影響を最小限にするものです。

    このSEHAには機能的な特徴が3つありますので、以下にご紹介します。

    フェイルオーバー

    SEHAは、アクティブノードとパッシブノードにDatabaseを冗長化し、普段はアクティブノードでサービスを提供し、故障を検知するとパッシブノードへ自動で切替えます。この時、共有記憶域に保持されているデータへのアクセスも切り替えられます。

    このプロセスをフェイルオーバー(Fail Over)といい、SEHAを特徴づける、最も重要な機能となっています。

    正常性の監視

    クラスタの正常性状態の監視は、主に以下3つのハートビートにて行っています。

      1. ネットワーク:アクティブノードとパッシブノードとのネットワークを監視します。
      2. ディスク:クラスタノードから接続された共有ディスクへのアクセスに問題がないかを監視します。
      3. ローカル:それぞれのノード自身で問題がないかを監視します。

    リソースの監視

    SEHAは、クラスタ内のネットワーク、共有ディスクへのアクセスなどの物理的リソースや、データベースやリスナーなどアプリケーションのサービスを、クラスタのリソースとして管理する機能を持っています。

    RACとの違い

    RACとSEHAを比較した際の大きな違いは、以下のとおりです。

    相違点

    • RACではアクティブ・アクティブでの構成をとりますが、SEHAはアクティブ・パッシブとなり同じ台数でも処理能力が異なります
    • SEHAは19c以降など、利用できるバージョンに違いがあります。

    共通点

    • データ領域を共有する、共有ディスク構成をとります。
    • SE2ライセンスの標準機能として提供され、追加の費用は不要です。

    動作要件・注意事項

    SE2 RACの有力な代替ソリューションとなりえるSEHAですが、いくつか利用条件がありますので、以下にご紹介していきます。

    対応OS

    Linux、Windows、Solaris

    対応環境

    オンプレミスおよび仮想環境
    ※クラウドはOCIに今後対応予定

    S/W・H/W要件

    Oracle DatabaseおよびOracle Grid Infrastructure 19.7以降のバージョンが必要。
    ※メモリ等のH/Wリソースがシングルデータベースに比べて追加で必要になる点に注意。

    構成

    Oracle ASMおよびACFS上にファイルを配置するため共有ディスクが必須。
    ※既存のOracle Databaseが存在する環境からOracle SEHA構成に直接アップグレードはできず、新規インストールが必要

    ライセンス

    ・Oracle Database SE2のライセンスがあれば追加の費用は必要
    ・スタンバイ環境のライセンスはフェイルオーバー日数が年間10日間まであれば無償

    ※Enterprise Editionでは使用不可

    ※2021年8月現在当社調べ

    ご自身の要件に合致するかをよくご確認頂き、問題なさそうであれば、Oracle社又は信頼できるシステムインテグレーター様にご相談してみてください。

    商用HAクラスタ製品との比較

    オンプレミスの物理サーバーの環境や仮想環境では、多くの活躍の機会がありそうですが、パブリッククラウド環境や、共有ディスクを使わない構成を望む場合、SEHAは現状利用できません。

    そこで、様々な環境や構成にも対応が可能な、サードパーティ製のHAクラスタソフト「LifeKeeper」という選択肢をご紹介します。SEHAとの簡単な比較を掲載いたします。

    SEHA

    LifeKeeper

    対応OS

    〇 Linux、Windows、Solaris

    〇 Linux、Windows

    対応環境

    △ オンプレ及び仮想環境

    〇 オンプレ/仮想環境/クラウド

    対応構成

    △ 共有ディスク構成のみ

    〇 共有ディスク構成、データレプリケーション構成に対応

    アプリケーションリソース追加

    △ お客様ご自身で対応可能

    〇 メーカー製のスクリプト集で対応可能

    費用

    ◎ 追加費用不要

    ✖ 別途LifeKeeperの費用必要

    SEHAの要件に合わなかった場合はぜひ詳細にご検討頂きたく、下記のホワイトペーパーをご覧頂き、検討の選択肢に加えて頂ければ幸いです。

    ダウンロードできる資料:
    「Oracle SEHAの特徴と主要HA製品との比較」
     ・Oracle SEHAとは
     ・Oracle SEHAの制限事項
     ・Oracle SEHAの構成例
     ・主要なHAクラスタソフトとの比較
    「Oracle SEHA / LifeKeeper比較資料」詳細な機能比較レポート

    Oracle関連記事:

    Azure上でOracle RACを構築できるのか

    LifeKeeperが対応するOracle CDB/PDB構成とは?

    SNSでもご購読できます。