Oracle® Solaris Cluster データサービス (Oracle Database 用)

印刷ビューの終了

更新: 2016 年 1 月
 
 

クラスター用 Oracle Grid Infrastructure ありで HA for Oracle Database を登録および構成する方法 (CLI)

この手順では、Oracle Solaris Cluster の保守コマンドを使用して、クラスタ Oracle ASM インスタンスを含む HA for Oracle Database を登録および構成する手順について説明します。

オプションでサードパーティーのボリュームマネージャーを使用して、クラスタ Oracle ASM ディスクグループに候補ディスクを指定できます。このタイプの構成では、この手順によって、Oracle Solaris Cluster SUNW.ScalDeviceGroup リソースをプロキシ設定する Oracle Grid Infrastructure リソースを手動で作成します。この手順では、Oracle Grid Infrastructure リソースの名前は sun.resource です。sun.resource がオンラインになるまで、対応する Oracle ASM ディスクグループがマウントされないように、sun.resource を構成します。sun.resource リソースは、対応する SUNW.ScalDeviceGroup リソースがオンラインの場合のみ、オンラインになります。また、SUNW.ScalDeviceGroup リソースは、実際のボリュームマネージャーのディスクセットまたはディスクグループがオンラインの場合だけ、オンラインになります。

Oracle ASM ディスクグループがこの依存関係チェーンのメリットを得られるようにするには、sun.resource を定義したあと、ハードスタート依存関係に sun.resource が含まれるように、適切な Oracle ASM ディスクグループリソースを変更します。Oracle ASM ディスクグループリソースのハードスタート依存関係の変更は、VALIDATE メソッドを使用して、SUNW.scalable_asm_diskgroup_proxy リソースによってのみ実行できます。したがって、SUNW.scalable_asm_diskgroup_proxy および SUNW.ScalDeviceGroup リソース間のオフライン再起動依存関係を設定する必要があります。

始める前に

  • すべての論理ホスト名の IP アドレスのサブネットとネットマスクのエントリが /etc/netmasks ファイルにあることを確認してください。必要に応じて、/etc/netmasks ファイルを編集して、不足しているエントリがある場合は追加します。

  • ボリューム管理に Solaris Volume Manager for Sun Cluster を使用している場合は、使用するクラスタ Oracle ASM インスタンスの複数所有者ディスクセットを構成します。Oracle Solaris Cluster Data Service for Oracle Real Application Clusters ガイド のOracle RAC データベース用の Solaris Volume Manager for Sun Cluster に複数所有者ディスクセットを作成する方法の手順に従ってください。

  • Oracle Grid Infrastructure ソフトウェアがインストールされていることを確認します。

  • Oracle Grid Infrastructure SCAN リスナーを使用する場合は、使用する論理ホスト名の IP アドレスが、その SCAN リスナーの IP アドレスと同じサブネット上に存在することを確認してください。別のサブネット上にある場合、パブリックネットワークで障害が発生した場合に、Oracle Database リソースはフェイルオーバーしません。

  • Oracle ASM インスタンスとデータベースインスタンスの Oracle Clusterware リソースが構成されていることを確認します。

  • Oracle_Home に使用するファイルシステムが設定されていることを確認します。手順についてはOracle Solaris Cluster ノードとディスクの準備を参照してください。

  1. クラスタメンバーで、スーパーユーザーになるか、solaris.cluster.modify および solaris.cluster.admin RBAC 承認を提供する役割になります。
  2. Oracle ASM ディスクグループの候補ディスクとして、サポートされるボリュームマネージャーまたはハードウェア RAID デバイスを使用している場合は、Oracle Grid Infrastructure を構成します。

    Oracle ASM 候補ディスクは、次のいずれかから指定できます。

    • Solaris Volume Manager ディスクセット

    • ハードウェア RAID ストレージデバイス (/dev/did/rdsk/dNsX など)

    1. Oracle Grid Infrastructure の sun.storage_proxy.type リソースタイプを作成します。
      # /Grid_home/bin/crsctl add type sun.storage_proxy.type -basetype local_resource
    2. Oracle Grid Infrastructure の、タイプ sun.storage_proxy.typesun.resource リソースを作成します。

      注 -  必ずすべての属性値を単一引用符 (') で囲んでください。そうしないと、SUNW.scalable_asm_diskgroup_proxy リソースの VALIDATE メソッドは検証に失敗します。
      # /Grid_home/bin/crsctl add res sun.scal-svmdg-rs \
            -type sun.storage_proxy.type \
            -attr "ACTION_SCRIPT='/opt/SUNWscor/dsconfig/bin/scproxy_crs_action' \
            ACL='owner:root:rwx,pgrp:oinstall:rwx,other::r--' SCRIPT_TIMEOUT='20' RESTART_ATTEMPTS='60'"
      sun.scal-svmdg-rs

      SUNW.ScalDeviceGroup リソース名。

      -type sun.storage_proxy.type

      sun.storage_proxy.type リソースタイプを指定します。

      ACTION_SCRIPT

      /opt/SUNWscor/dsconfig/bin/scproxy_crs_action アクションスクリプトを指定します。

      ACL

      所有者を root と、グループを Oracle ASM ディスクグループの ACL グループエントリと同一に設定します。次のコマンドは、ACL グループエントリを表示します。

      # /Grid_home/bin/crsctl stat res ora.DATA1.dg -p | grep ACL=
      ACL=owner:oragrid:rwx,pgrp:oinstall:rwx,other::r--

      この出力例は、oinstall がそのグループエントリであることを示しています。

      SCRIPT_TIMEOUT

      20 に設定します。

      RESTART_ATTEMPTS

      60 に設定します。

    3. sun.resource が正しく定義されていることを確認します。

      次に出力例を示します。

      # /Grid_home/bin/crsctl stat res sun.scal-svmdg-rs -p
            NAME=sun.scal-svmdg-rs
            TYPE=sun.storage_proxy.type
            ACL=owner:root:rwx,pgrp:oinstall:rwx,other::r--
            ACTIONS=
            ACTION_FAILURE_TEMPLATE=
            ACTION_SCRIPT=/opt/SUNWscor/dsconfig/bin/scproxy_crs_action
            ACTION_TIMEOUT=60
            AGENT_FILENAME=%CRS_HOME%/bin/scriptagent
            ALERT_TEMPLATE=
            ALIAS_NAME=
            AUTO_START=restore
            CHECK_INTERVAL=60
            CHECK_TIMEOUT=0
            CLEAN_TIMEOUT=60
            DEBUG=1
            DEFAULT_TEMPLATE=
            DEGREE=1
            DELETE_TIMEOUT=60
            DESCRIPTION=
            ENABLED=1
            INSTANCE_FAILOVER=1
            INTERMEDIATE_TIMEOUT=-
            LOAD=1
            LOGGING_LEVEL=1
            MODIFY_TIMEOUT=60
            NOT_RESTARTING_TEMPLATE=
            OFFLINE_CHECK_INTERVAL=0
            PROFILE_CHANGE_TEMPLATE=
            RESTART_ATTEMPTS=60
            SCRIPT_TIMEOUT=20
            SERVER_CATEGORY=
            START_CONCURRENCY=0
            START_DEPENDENCIES=
            START_TIMEOUT=0
            STATE_CHANGE_TEMPLATE=
            STOP_CONCURRENCEY=0
            STOP_DEPENDENCIES=
            STOP_TIMEOUT=0
            UPTIME_THRESHOLD=1h
            USER_WORKLOAD=no
      #
    4. 現在のリソース依存関係を表示します。
      # /Grid_home/bin/crsctl stat res ora.DATA1.dg -p | grep START_DEPENDENCIES
      START_DEPENDENCIES=pullup:always(ora.asm) hard(ora.asm,sun.svmdg-rs)
  3. Oracle Clusterware フレームワークのリソースタイプを登録します。

    注 -  さらに、clsetup ユーティリティーを使用して、この手順のStep 3 からStep 14 までを実行することもできます。
    # clresourcetype register SUNW.crs_framework
  4. タイプ SUNW.crs_framework のリソースを rac-fmwk-rg リソースグループに追加します。
    # clresource create -g rac-fmwk-rg \
    -t SUNW.crs_framework \
    -p Resource_dependencies_offline_restart=rac-fmwk-rs \
    -d crs-fmwk-rs
  5. データベースサービスの Oracle ASM リソースタイプを登録します。
    1. スケーラブルな ASM インスタンスプロキシリソースタイプを登録します。
      # clresourcetype register SUNW.scalable_asm_instance_proxy
    2. 適切な ASM ディスクグループリソースタイプを登録します。
      # clresourcetype register SUNW.scalable_asm_diskgroup_proxy
  6. リソースグループ asm-inst-rg および asm-dg-rg を作成します。
    # clresourcegroup create -S asm-inst-rg asm-dg-rg
  7. asm-inst-rg による rac-fmwk-rg に対する強い肯定的なアフィニティーを設定します。
    # clresourcegroup set -p Rg_affinities=++rac-fmwk-rg asm-inst-rg
  8. asm-dg-rg による asm-inst-rg に対する強い肯定的なアフィニティーを設定します。
    # clresourcegroup set -p Rg_affinities=++asm-inst-rg asm-dg-rg
  9. タイプ SUNW.scalable_asm_instance_proxy のリソースを asm-inst-rg リソースグループに追加します。
    # clresource create -g asm-inst-rg \
    -t SUNW.scalable_asm_instance_proxy \
    -p Oracle_home=Oracle_home \
    -p CRS_HOME=Grid_home \
    -p "oracle_sid{node1}"=instance \
    -p "oracle_sid{node2}"=instance \
    -p Resource_dependencies_offline_restart=crs-fmwk-rs \
    -d asm-inst-rs
    –g asm-inst-rg

    リソースを配置するリソースグループの名前を指定します。

    –t SUNW.asm_instance_proxy

    追加するリソースのタイプを指定します。

    –p Oracle_home=Oracle_home

    Oracle Database ホームディレクトリへのパスを設定します。

    –p CRS_HOME=Grid_home

    クラスター用 Oracle Grid Infrastructure のホームディレクトリへのパスを設定します。

    –p "Oracle_sid{node}"=instance

    Oracle Database システム識別子を設定します。

    –d asm-inst-rs

    作成するリソースの名前を指定します。

  10. ASM ディスクグループリソースを asm-dg-rg リソースグループに追加します。

    SUNW.scalable_asm_diskgroup_proxy リソースタイプを使用します。

    # clresource create -g asm-dg-rg \
    -t SUNW.scalable_asm_diskgroup_proxy \
    -p Asm_diskgroups=dg[,dg…] \
    -p Resource_dependencies_offline_restart=asm-inst-rs,scal-svmdg-rs \
    -d asm-dg-rs
  11. クラスタノードで管理状態にある asm-inst-rg リソースグループをオンラインにします。
    # clresourcegroup online -eM asm-inst-rg
  12. クラスタノードで管理状態にある asm-dg-rg リソースグループをオンラインにします。
    # clresourcegroup online -eM asm-dg-rg
  13. status コマンドを発行することによって、Oracle ASM インストールを検証します。
    # clresource status +
  14. Oracle データベース用のフェイルオーバーリソースグループ ora-db-rg を作成します。
    # clresourcegroup create ora-db-rg
  15. HA for Oracle Database データサービスのリソースタイプを登録します。

    SUNW.oracle_serverSUNW.oracle_listener の 2 つのリソースタイプを登録します。


    注 -  クラスタ用 Oracle Grid Infrastructure の単一クライアントアクセス名 (SCAN) リスナーを使用している場合は、SUNW.oracle_listener リソースタイプの登録を省略してください。これは、Oracle Database remote_listener が代わりに使用します。
    # clresourcetype register SUNW.oracle_server
    # clresourcetype register SUNW.oracle_listener
  16. 論理ホスト名リソースを Oracle Database のフェイルオーバーリソースグループに追加します。

    注 -  Oracle Grid Infrastructure SCAN リスナーを使用する場合は、IP アドレスがその SCAN リスナーの IP アドレスと同じサブネット上に存在する論理ホスト名を指定します。
    # clreslogicalhostname create -g ora-db-rg [-h logical-hostname] logical-hostname-rs
    logical-hostname

    論理ホスト名を指定します。この論理ホスト名は、ネームサービスデータベースに存在する必要があります。logical-hostnamelogical-hostname-rs が同一の場合、logical-hostname はオプションです。

    logical-hostname-rs

    作成する論理ホスト名リソースに割り当てる名前を指定します。

  17. クラスタノードで管理状態にあるフェイルオーバーリソースグループをオンラインにします。
    # clresourcegroup online -eM ora-db-rg
  18. フェイルオーバーリソースグループで、Oracle Database アプリケーションサーバーリソースを作成します。

    注 -  オプションとして、HA for Oracle Database のデータサービスに属している追加の拡張プロパティーを設定して、それらのデフォルト値をオーバーライドできます。拡張プロパティーのリストについては、HA for Oracle Database 拡張プロパティーの設定を参照してください。
    # clresource create -g ora-db-rg \
    -t SUNW.oracle_server \
    -p Db_unique_name=db-unique-name \
    -p Resource_dependencies_offline_restart=asm-dg-rs \
    -p Oracle_home=Oracle_home \
    -p Oracle_sid=instance \
    -d ora-db-rs
    –g ora-db-rg

    リソースを配置するリソースグループの名前を指定します。

    –t SUNW.oracle_server

    追加するリソースのタイプを指定します。

    –p Oracle_home=Oracle_home

    Oracle Database ホームディレクトリへのパスを設定します。

    –p Oracle_sid=instance

    Oracle Database システム識別子を設定します。

    –p Db_unique_name=db-unique-name

    Oracle Database の一意の名前を設定します。

    –d ora-db-rs

    作成するリソースの名前を指定します。

  19. Oracle Database サーバーリソースをオンラインにします。
    # clresource enable ora-db-rs

次のステップ

HA for Oracle Database を登録および構成したあとは、HA for Oracle Database のインストールの確認に進みます。