Sun Cluster 3.1 データサービスのインストールと構成

Sun Cluster HA for Oracle の登録と構成

この節では、Sun Cluster HA for Oracle を構成する手順について説明します。

Sun Cluster HA for Oracle 拡張プロパティ

表 2–2 の拡張プロパティを使用して、リソースを作成します。リソースを作成するときは、コマンド行 scrgadm -x parameter=value を使用して、拡張プロパティを構成します。すでにリソースを作成してある場合は、第 15 章「データサービスリソースの管理」の手順を使用して拡張プロパティを構成してください。拡張プロパティの中には動的に変更できるものもありますが、それ以外の拡張プロパティは、リソースを作成するか無効にするときにしか更新できません。「調整可能」の欄には、そのプロパティをいつ変更できるかが示されています。 Sun Cluster のすべてのプロパティの詳細については、『Sun Cluster 3.1 データサービスのインストールと構成 』の「付録 A」を参照してください。

表 2–2 Sun Cluster HA for Oracle リスナーの拡張プロパティ

名前/データタイプ 

説明

LISTENER_ NAME (文字列)

Oracle リスナーの名前。 

 

デフォルト: LISTENER

範囲: なし

調整:無効になっている時

 

ORACLE_ HOME (文字列)

Oracle ホームディレクトリへのパス。 

 

デフォルト:なし

範囲: 最小 = 1

調整:無効になっている時

User_env (文字列))

環境変数が含まれているファイル。リスナーの起動と停止の前に設定されます。Oracle デフォルトと異なる値を持つ環境変数は、このファイル内に定義する必要があります (たとえば /var/opt/oracle または $ORACLE_HOME/network/admin の下に listener.ora ファイルが存在しない場合、TNS_ADMIN 環境変数を定義する必要があります)。また、各環境変数の定義は、VARIABLE_NAME=VARIABLE_VALUE という書式で行う必要があります。これらの環境変数は、それぞれ環境ファイル内で 1 行に 1 つずつ指定しなければなりません。

 

デフォルト:““

範囲: なし

調整: 任意の時点

表 2–3 に、Oracle サーバーに設定できる拡張プロパティを示します。Oracle サーバーに対して設定する必要のある拡張プロパティは、ORACLE_HOMEORACLE_SIDAlert_log_fileConnect_string プロパティです。

表 2–3 Sun Cluster HA for Oracle サーバーの拡張プロパティ

名前/データタイプ 

説明 

Alert_log_ file (文字列)

Oracle 警告ログファイル。 

 

デフォルト:なし

範囲: 最小 = 1

調整: 任意の時点

Auto_End_Bkp (ブール値)

Oracle RDBMS のホットバックアップが中断された場合に、次の回復操作を実行する機能。 

  • ホットバックアップモードに残されたファイルが原因でデータベースが開かないことを認識します。この確認プロセスは、Sun Cluster HA for Oracle の起動時に発生します。

  • ホットバックアップモードに残されたすべてのファイルを識別し、解放します。

  • データベースを開き使用できるようにする。

この機能は、ON または OFF に切り替えることができます。

 

デフォルト:False

範囲: なし

調整:任意の時点

Connect_ cycle (整数)

データベースから切り離されるまでの障害モニターの接続検証サイクル数。 

 

デフォルト: 5

範囲: 099,999

調整: 任意の時点

Connect_ string (文字列)

障害モニターがデータベースに接続するのに使用する Oracle ユーザーとパスワード。 

 

デフォルト:なし

範囲: 最小 = 1

調整: 任意の時点

ORACLE_ HOME (文字列)

Oracle ホームディレクトリへのパス。 

 

デフォルト:なし

範囲: 最小 = 1

調整:無効になっている時

ORACLE_ SID (文字列)

Oracle システム識別子。 

 

デフォルト:なし

範囲: 最小 = 1

調整:無効になっている時

Parameter_ file (文字列)

Oracle パラメータファイル。指定しない場合は、Oracle プロパティのデフォルトが使用されます。 

 

デフォルト:““

範囲: 最小 = 0

調整: 任意の時点

Probe_ timeout (整数)

Oracle サーバーインスタンスの検証に障害モニターが使用するタイムアウト時間 (秒)。 

 

デフォルト:60

範囲: 0 99,999

調整: 任意の時点

Restart_type (文字列)

このリソースで障害が検出された場合、 RESOURCE_RESTART の値は、このリソースの再起動のみを保証します。RESOURCE_GROUP_RESTART の値は、再起動するリソースグループ内のすべてのリソースを保証します。

デフォルト: RESOURCE_GROUP_RESTART

範囲: なし

調整: 任意の時点

User_env (文字列))

環境変数が含まれているファイル。サーバーの起動と停止の前に設定されます。 

Oracle デフォルトと異なる値を持つ環境変数は、このファイル内に定義する必要があります (たとえば /var/opt/oracle または $ORACLE_HOME/network/admin の下に listener.ora ファイルが存在しない場合、TNS_ADMIN 環境変数を定義する必要があります)。また、各環境変数の定義は、VARIABLE_NAME=VARIABLE_VALUE という書式で行う必要があります。これらの環境変数は、それぞれ環境ファイル内で 1 行に 1 つずつ指定しなければなりません。

 

デフォルト:““

範囲: なし

調整: 任意の時点

Wait_for_ online (ブール値)

データベースがオンラインになるまで START メソッドで待機します。

 

デフォルト:True

範囲: なし

調整: 任意の時点

 

Sun Cluster HA for Oracle の登録と構成

次の手順を使用して、Sun Cluster HA for Oracle をフェイルオーバーデータサービスとして構成します。この手順では、Sun Cluster の初期インストール時にデータサービスパッケージがインストール 済みであることを前提とします。Sun Cluster の初期インストール時に Sun Cluster HA for Oracle パッケージをインストールしていない場合は、Sun Cluster HA for Oracle パッケージのインストール に進み、データサービスパッケージをインストールしてください。それ以外の場合は、この手順を使用して Sun Cluster HA for Oracle を構成します。

この手順を実行するには、次の情報を確認しておく必要があります。

  1. クラスタメンバー上でスーパーユーザーになります。

  2. scrgadm コマンドを実行して、データサービスのリソースタイプを登録します。

    Sun Cluster HA for Oracle の場合、次のように、2 つのリソースタイプ SUNW.oracle_server および SUNW.oracle_listener を登録します。


    # scrgadm -a -t SUNW.oracle_server
    # scrgadm -a -t SUNW.oracle_listener
    
    -a

    データサービスのリソースタイプを追加します。

    -t SUNW.oracle_type

    当該データサービス用にあらかじめ定義されているリソースタイプを指定します。

  3. ネットワークとアプリケーションのリソースを格納するためのフェイルオーバーリソースグループを作成します。

    次のように -h オプションを使用すると、データサービスを実行できるノードのセットを選択できます。


    # scrgadm -a -g resource-group [-h nodelist]
    -g resource-group

    リソースグループの名前を指定します。どのような名前でもかまいませんが、クラスタ内のリソースグループごとに一意である必要があります。

    -h nodelist

    潜在的マスターを識別する物理ノード名または ID をコンマで区切って指定します (任意)。フェイルオーバー時、ノードはこのリスト内の順番に従って主ノードが決定されます。


    注 –

    -h オプションを使用してノードリストの順序を指定します。クラスタ内のすべてのノードが潜在的マスターの場合、-h オプションを使用する必要はありません。


  4. 使用するすべてのネットワークリソースがネームサービスデータベースに追加されていることを確認します。

    Sun Cluster のインストール時に、この確認を行います。


    注 –

    ネームサービスの検索における問題を回避するために、すべてのネットワークリソースがサーバーとクライアントの /etc/inet/hosts ファイルに存在することを確認します。


  5. ネットワークリソースをフェイルオーバーリソースグループに追加します。


    # scrgadm -a -L -g resource-group -l logical-hostname [-n netiflist] 
    -l logical-hostname

    ネットワークリソースを指定します。ネットワークリソースは、クライアントが Sun Cluster HA for Oracle のアクセスに使用する論理ホスト名または共有アドレス (IP アドレス) です。

    -n netiflist

    各ノード上の IP Networking Multipathing グループをコンマで区切って指定します (省略可能)。netiflist 内の各要素の書式は、 netif@node でなければなりません。netif は、sc_ipmp0 などの IP Networking Multipathing グループ名として指定できます。ノードは、sc_ipmp0@1sc_ipmp@phys-schost-1 などのノード名またはノード ID で識別できます。


    注 –

    現在 Sun Cluster では、netif にアダプタ名を使用できません。


  6. SUNW.HAStoragePlus リソースタイプをクラスタに登録します。


    # scrgadm -a -t SUNW.HAStoragePlus

  7. タイプ SUNW.HAStoragePlus のリソース oracle-hastp-rs を作成します。


    # scrgadm -a -j oracle-hastp-rs -g oracle-rg -t SUNW.HAStoragePlus \
     
    [データベースが raw デバイスにある場合は、広域デバイスパスを指定する]
    -x GlobalDevicePaths=ora-set1,/dev/global/dsk/dl \
     
    [データベースがクラスタファイルサービス上にある場合は、広域ファイルシステムとローカルファイルシステムのマウントポイントを指定する ]
    -x FilesystemMountPoints=/global/ora-inst,/global/ora-data/logs,/
    local/ora-data \
     
    [AffinityOn を true に設定する]
    -x AffinityOn=TRUE
    


    注 –

    フェイルオーバーを行うためには、AffinityOn が TRUE に設定され、ローカルファイルシステムが広域ディスクグループ上に存在する必要があります。


  8. scswitch コマンドを実行して、次の作業を完了し、リソースグループ oracle-rg をクラスタノード上でオンラインにします。


    注意 – 注意 –

    切り替えは、リソースグループレベルのときに行うよう注意してください。デバイスグループレベルで切り替えを行うと、リソースグループを混乱させ、フェイルオーバーが発生します。


    • リソースグループを MANAGED 状態にします。

    • リソースグループをオンラインにします。

    このノードは、デバイスグループ ora-set1 および raw デバイス /dev/global/dsk/d1 のプライマリになります。ファイルシステムに関連するデバイスグループ (/global/ora-inst/global/ora-data/logs など) もこのノード上でプライマリになります。


    # scswitch -Z -g oracle-rg
    
  9. Oracle アプリケーションリソースをフェイルオーバーリソースグループに作成します。

    • Oracle サーバーリソースの場合 :


      # scrgadm -a -j resource -g resource-group \
      -t SUNW.oracle_server \ 
      -x Connect_string=user/passwd \
      -x ORACLE_SID=instance \
      -x ORACLE_HOME=Oracle-home \
      -x Alert_log_file=path-to-log
      -y resource_dependencies=<storageplus-resource>
      
    • Oracle リスナーリソースの場合 :


      # scrgadm -a -j resource -g resource-group \
      -t SUNW.oracle_listener \ 
      -x LISTENER_NAME=listener \
      -x ORACLE_HOME=Oracle-home
      -y resource_dependencies=<storageplus-resource>
      
    -j resource

    追加するリソースの名前を指定します。

    -g resource-group

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

    -t SUNW.oracle_server/listener

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

    -x Alert_log_file=path-to-log

    サーバーメッセージログ用のパスを $ORACLE_HOME の下に指定します。

    -x Connect_string=user/passwd

    障害モニターがデータベースに接続するために使用するユーザー名とパスワードを指定します。ここでの設定は、Oracle データベースのアクセス権の設定で設定したアクセス権を満たす必要があります。Solaris の承認を使用する場合、ユーザー名とパスワードの代わりにスラッシュ (/) を入力します。

    -x ORACLE_SID=instance

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

    -x LISTENER_NAME=listener

    Oracle リスナーインスタンスの名前を設定します。この名前は、listener.ora 内の対応するエントリに一致する必要があります。

    -x ORACLE_HOME=Oracle-home

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


    注 –

    Oracle サーバーリソース内で障害が発生して再起動が発生した場合、リソースグループ全体が再起動します。リソースグループ内の他のリソース (Apache や DNS など) は自分自身に障害がなくても再起動します。他のリソースが Oracle サーバーリソースと一緒に再起動するのを避けるためには、他のリソースを別のリソースグループに格納します。

    Oracle データサービスに属する拡張プロパティを設定して、そのデフォルト値を上書きできます。どのような拡張プロパティがあるかについては、Sun Cluster HA for Oracle 拡張プロパティ を参照してください。


  10. scswitch コマンドを実行して、次の作業を完了します。

    • リソースと障害の監視を有効にします。


    # scswitch -Z -g resource-group
    
    -Z

    リソースとモニターを有効にし、リソースグループを MANAGED 状態にして、リソースグループをオンラインにします。

    -g resource-group

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

例 – Sun Cluster HA for Oracle の登録

次の例では、Sun Cluster HA for Oracle を 2 ノードクラスタに登録する方法を示します。


クラスタ情報
ノード名: phys-schost-1, phys-schost-2
論理ホスト名: schost-1
リソースグループ: resource-group-1 (フェイルオーバーリソースグループ)
リソース: oracle-server-1, oracle-listener-1
Oracle インスタンス: ora-lsnr (リスナー), ora-srvr (サーバー)
 
(Oracle リソースタイプを登録する)
# scrgadm -a -t SUNW.oracle_server
# scrgadm -a -t SUNW.oracle_listener
 
(すべてのリソースを含むようにフェイルオーバーリソースグループを追加する)
# scrgadm -a -g resource-group-1 -h phys-schost-1,phys-schost-2
 
(論理ホスト名リソースをリソースグループに追加する)
# scrgadm -a -L -g resource-group-1 -l schost-1 
 
(リソースグループに Oracle アプリケーションリソースを追加する)
# scrgadm -a -j oracle-server-1 -g resource-group-1 \
-t SUNW.oracle_server -x ORACLE_HOME=/global/oracle \
-x Alert_log_file=/global/oracle/message-log \
-x ORACLE_SID=ora-srvr -x Connect_string=scott/tiger
 
# scrgadm -a -j oracle-listener-1 -g resource-group-1 \
-t SUNW.oracle_listener -x ORACLE_HOME=/global/oracle \
-x LISTENER_NAME=ora-lsnr
 
(リソースグループをオンラインにする)
# scswitch -Z -g resource-group-1

次に進む手順

Sun Cluster HA for Oracle を登録し構成したら、Sun Cluster HA for Oracle のインストールの確認 に進みます。