この手順では、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 ASM インスタンスとデータベースインスタンスの Oracle Clusterware リソースが構成されていることを確認します。
Oracle_Home に使用するファイルシステムが設定されていることを確認します。手順についてはOracle Solaris Cluster ノードとディスクの準備を参照してください。
Oracle ASM 候補ディスクは、次のいずれかから指定できます。
Solaris Volume Manager ディスクセット
NFS
# /Grid_home/bin/crsctl add type sun.storage_proxy.type -basetype local_resource
# /Grid_home/bin/crsctl add res sun.scal-asmdg1-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'"
SUNW.ScalDeviceGroup リソース名。
sun.storage_proxy.type リソースタイプを指定します。
/opt/SUNWscor/dsconfig/bin/scproxy_crs_action アクションスクリプトを指定します。
所有者を 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 がそのグループエントリであることを示しています。
20 に設定します。
60 に設定します。
次に出力例を示します。
# /Grid_home/bin/crsctl stat res sun.scal-asmdg1-rs -p NAME=sun.scal-asmdg1-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 #
# /Grid_home/bin/crsctl stat res ora.DATA1.dg -p | grep START_DEPENDENCIES START_DEPENDENCIES=hard(ora.asm) pullup(ora.asm) # clresource show -p Resource_dependencies_offline_restart asm-data1-rs === Resources === Resource: asm-data1-rs Resource_dependencies_offline_restart: asm-inst-rs -- Standard and extension properties --
コマンドにはプラス (+) 記号が含まれることに注意してください。
# clresource set -p Resource_dependencies_offline_restart+=scal-asmdg1-rs asm-data1-rs
(Oracle ASM デバイスグループ専用) 指定した Oracle ASM ストレージリソースのオフライン再起動依存関係を設定します。
変更するリソースの名前を指定します。
# clresource create -g asm-dg-rg \ -t SUNW.scalable_asm_diskgroup_proxy \ -p asm_diskgroups=data1 \ -p Resource_dependencies_offline_restart=asm-inst-rs, scal-asmdg1-rs \ -d asm-data1-rs
リソースを配置する Oracle ASM デバイスグループの名前を指定します。
追加するリソースのタイプを指定します。
Oracle ASM ディスクグループの名前を設定します。
作成するリソースが無効になるように指定します。
# /Grid_home/bin/crsctl stat res ora.DATA1.dg -p | grep START_DEPENDENCIES START_DEPENDENCIES=hard(ora.asm,sun.scal-asmdg1-rs) pullup(ora.asm) # clresource show -p Resource_dependencies_offline_restart asm-data1-rs === Resources === Resource: asm-data1-rs Resource_dependencies_offline_restart: asm-inst-rs scal-asmdg1-rs -- Standard and extension properties --
# clresourcetype register SUNW.crs_framework
# clresource create -g rac-fmwk-rg \ -t SUNW.crs_framework \ -p Resource_dependencies_offline_restart=rac-fmwk-rs \ -d crs-fmwk-rs
# clresourcegroup create ora-db-rg
# clresourcetype register SUNW.qfs
# clresourcegroup create qfs-rg
# clresource create -g qfs-rg -t SUNW.qfs -p QFSFileSystem=qfs-mp qfs-rs
リソースグループの名前を指定します。
追加するリソースのタイプを指定します。
Sun QFS ファイルシステムのマウントポイントを指定します。
作成する Sun QFS ファイルシステムリソースの名前を指定します。
# clresourcegroup online -eM qfs-rg
# clresourcetype register SUNW.HAStoragePlus
# clresource create -g ora-db-rg -t SUNW.HAStoragePlus \ -p filesystemmountpoints=mount-point-list -d hastp-rs
# clresourcegroup online -eM ora-db-rg
# clresourcetype register SUNW.scalable_asm_instance_proxy
# clresourcetype register SUNW.scalable_asm_diskgroup_proxy
# clresourcegroup create -S asm-inst-rg asm-dg-rg
# clresourcegroup set -p Rg_affinities=++rac-fmwk-rg asm-inst-rg
# clresourcegroup set -p Rg_affinities=++asm-inst-rg asm-dg-rg
# clresource create -g rac-fmwk-rg \ -t SUNW.crs_framework \ -p Resource_dependencies_offline_restart=rac-fmwk-rs \ -d crs-fmwk-rs
asm-inst-rg リソースグループにリソースのタイプ (SUNW.HAStoragePlus および SUNW.scalable_asm_instance) を追加し、2 つのリソース間に適切な依存関係を設定します。
# clresource create -g asm-inst-rg -t SUNW.HAStoragePlus \ -p FilesystemMountPoints=cluster-file-system \ hastp-rs # 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=hastp-rs \ -p Resource_dependencies_offline_restart=crs-fmwk-rs \ asm-inst-rs
リソースを配置するリソースグループの名前を指定します。
クラスタファイルシステムの名前を指定します。
作成する SUNW.HAStoragePlus リソースの名前を指定します。
Oracle Database ホームディレクトリへのパスを設定します。
クラスター用 Oracle Grid Infrastructure のホームディレクトリへのパスを設定します。
Oracle Database システム識別子を設定します。
# 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
追加するリソースのタイプを指定します。
作成するリソースの名前を指定します。
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,asm-stor-rs \ -d asm-dg-rs
# clresourcegroup online -eM asm-inst-rg
# clresourcegroup online -eM asm-dg-rg
# clresource status +
SUNW.oracle_server と SUNW.oracle_listener の 2 つのリソースタイプを登録します。
# clresourcetype register SUNW.oracle_server # clresourcetype register SUNW.oracle_listener
# clreslogicalhostname create -g ora-db-rg [-h logical-hostname] logical-hostname-rs
論理ホスト名を指定します。この論理ホスト名は、ネームサービスデータベースに存在する必要があります。logical-hostname と logical-hostname-rs が同一の場合、logical-hostname はオプションです。
作成する論理ホスト名リソースに割り当てる名前を指定します。
# clresourcegroup online -eM ora-db-rg
# clresource create -g ora-db-rg \ -t SUNW.oracle_server \ -p Db_unique_home=db-unique-home \ -p Resource_dependencies_offline_restart=asm-dg-rs \ -p Oracle_sid=instance \ -d ora-db-rs
リソースを配置するリソースグループの名前を指定します。
追加するリソースのタイプを指定します。
Oracle Database システム識別子を設定します。
Oracle Database の一意の名前を設定します。
作成するリソースの名前を指定します。
# clresource enable ora-db-rs
次のステップ
HA for Oracle Database を登録および構成したあとは、HA for Oracle Database のインストールの確認に進みます。