Sun Cluster 3.0 ご使用にあたって

Sun Cluster HA for Oracle の Sun Cluster 2.2 から Sun Cluster 3.0 へのアップグレード

Sun Cluster フレームワークを scinstall アップグレード手順を使用してアップグレードする場合は、次の手順に従ってください。

条件と制限

Sun Cluster HA for Oracle を Sun Cluster 2.2 から Sun Cluster 3.0 にソフトウェアアップグレードする場合には、次の条件と制限が適用されます。

Sun Cluster HA for Oracle の構成ファイルを保存する

次の手順で、Sun Cluster 2.2 で設定した構成ファイルを保存します。

  1. 各ノードで、アップグレード開始手順 (scinstall -F begin) が完了するまで、scinstall フレームワークアップグレード手順に従います。

  2. 各ノードで、次のコマンドをスーパーユーザーで実行します。このコマンドにより、/var/opt/oracle ディレクトリのすべてのファイルを保存します。

    この情報が失われないようにするために、/var/opt/oracle ディレクトリにある構造を外部装置にバックアップします。


    # cp -r /var/opt/oracle /var/cluster/logs/install/preserve/2.2/SUNWscor
    
  3. フレームワークアップグレードの終了部分 (scinstall -u finish) を完了します。


    注 -

    scinstall -u finish コマンドで -s oracle オプションを使用しないでください。このオプションは Sun Cluster HA for Oracle の自動アップグレードを試みますが、自動アップグレードは失敗します。自動アップグレードがサポートされるのは NFS だけです。


フレームワークのアップグレードが終了したら、Sun Cluster 3.0 の環境を設定します。「Sun Cluster 3.0 環境の設定」を参照してください。

Sun Cluster 3.0 環境の設定

次の手順で Sun Cluster 3.0 環境を設定します。

  1. 任意のノードで次のコマンドを実行し、次のことを確認します。

    • フレームワークのアップグレードで、Sun Cluster 2.2 の論理ホストに対応する Sun Cluster 3.0 のリソースグループが正しく設定されている。

    • リソースグループ内にホスト名のネットワークリソースがあり、オンラインになっている。


    # scstat -g
    
  2. 任意のノードで次のコマンドを実行し、Oracle データベース (必要に応じて Oracle バイナリも) を含む、Sun Cluster 2.2 の VERITAS ディスクグループまたは Solstice DiskSuite のディスクセットが、正しく Sun Cluster 3.0 のディスクデバイスグループにマッピングされているかどうかを確認します。


    # scstat -D
    
  3. 各ノードで次のコマンドを実行し、各 Oracle インスタンスに必要なファイルシステムがマウントされているかどうかを確認します。


    # mount
    
  4. 各ノードで次のコマンドを実行し、保存しておいた Oracle 構成ファイルを /var/opt ディレクトリに復元します。

    すでに /var/opt/oracle ディレクトリにファイルを復元しており、内容を変更していない場合は、 この手順を省略できます。


    # cp -r /var/cluster/logs/install/preserve/2.2/SUNWscor/oracle /var/opt
    # chown -R oracle:dba /var/opt/oracle
    

Sun Cluster 3.0 での Sun Cluster HA for Oracle の構成

次の手順で、Sun Cluster 3.0 HA for Oracle を構成します。


注 -

手順 1 は 1 回だけ実行してください。


  1. 任意のノードで次のコマンドを実行、Oracle サーバーとリスナーリソースタイプを登録します。


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

    手順 2 から 手順 5 までを、/var/opt/oracle/oratab ファイルにある各 Sun Cluster 2.2 HA for Oracle のインスタンスで実行します。

  2. ORACLE_HOME 変数の値を oratab ファイルで確認します。

    たとえば、oratab ファイルに次の情報があるとします。


    ora32:/oracle/816_32:N

    この情報は、ORACLE_SID ora32 インスタンスの ORACLE_HOME 変数の値が /oracle/816_32 であることを意味しています。

  3. ccd.database ファイルから各 Oracle インスタンスのパラメータ値を取り出します。

    これらのパラメータは scrgadm で Sun Cluster 3.0 のパラメータにマッピングされます。Sun Cluster HA for Oracle を Sun Cluster 3.0 で構成するときにはこのパラメータを使用します。


    # grep ^HAORACLE: /var/cluster/logs/install/preserve/2.2/SUNWcluster/conf/ccd.database
    

    ccd.database ファイルにある各 Oracle インスタンスは、次の書式を使用します。


    HAORACLE:on:ora32:boots-1:60:10:120:300:scott/tiger:/oracle/816_32/dbs/initora32.ora:ORA_LIST
    .

    これらのパラメータは、次の Sun Cluster 3.0 の書式にマッピングされます。


    HAORACLE:STATE:ORACLE_SID:LOGICAL_HOSTNAME_IP_Resource:THOROUGH_PROBE_INTERVAL:
    CONNECT_CYCLE:PROBE_TIMEOUT:RETRY_INTERVAL:CONNECT_STRING:PARAMETER_FILE:LISTENER_NAME

    リソースグループ名 RG_NAME は、${LOGICAL_HOSTNAME_IP_Resource}-lh となります。-lh は、自動的に Sun Cluster 3.0 のリソースグループ名に追加されます。

  4. $PARAMETER_FILE 変数に background_dump_dest 値を設定し、ALERT_LOG_FILE 変数に次の値を設定します。


    $background_dump_dest/alert_$ORACLE_SID.log

    たとえば、ORACLE_SID=ora32 で、$PARAMETER_FILE ファイルの background_dump_dest を次の値と仮定します。


    /oracle/816_32/admin/ora32/bdump

    この例では、ALERT_LOG_FILE は次の値に更新されます。


    /oracle/816_32/admin/ora32/bdump/alert_ora32.log
    

  5. 任意のノードで次のコマンドを実行し、Oracle リソースを作成してオンラインにします。


    # scrgadm -a -t SUNW.oracle_server -g $RG_NAME -j $ORACLE_SID-serv ¥ 
    -x Oracle_sid=$ORACLE_SID -x Oracle_home=$ORACLE_HOME ¥ 
    -y Thorough_probe_interval=$THOROUGH_PROBE_INTERVAL ¥ 
    -x Connect_cycle=$CONNECT_CYCLE -x Probe_timeout=$PROBE_TIMEOUT ¥ 
    -y Retry_interval=$RETRY_INTERVAL -x Connect_string=$CONNECT_STRING ¥ 
    -x Parameter_file=$PARAMETER_FILE -x Alert_log_file=$ALERT_LOG_FILE
    # scrgadm -a -j $ORACLE_SID-list -t SUNW.oracle_listener -g $RG_name ¥ 
    -x Oracle_home=$ORACLE_HOME -x Listener_name=$LISTENER_NAME
    # scswitch -e -j $ORACLE_SID-serv
    # scswitch -e -j $ORACLE_SID-list
    # scswitch -e -M -j $ORACLE_SID-serv
    # scswitch -e -M -j $ORACLE_SID-list
    

    たとえば、手順 2手順 3手順 4 で説明した Oracle インスタンスを使用すると、実行するコマンドは次のようになります。


    # scrgadm -a -t SUNW.oracle_server -g boots-1-lh -j ora32-serv ¥ 
    -x Oracle_sid=ora32 -x Oracle_home=/oracle/816_32 ¥ 
    -y Thorough_probe_interval=60 ¥ 
    -x Connect_cycle=10 -x Probe_timeout=120 ¥ 
    -y Retry_interval=300 -x Connect_string=scott/tiger ¥ 
    -x Parameter_file=/oracle/816_32/dbs/initora32.ora ¥ 
    -x Alert_log_file=/oracle/816_32/admin/ora32/bdump/alert_ora32.log
    # scrgadm -a -j ora32-list -t SUNW.oracle_listener -g boots-1-lh ¥
    -x Oracle_home=/oracle/816_32 -x Listener_name=ORA_LIST
    # scswitch -e -j ora32-serv
    # scswitch -e -j ora32-list
    # scswitch -e -M -j ora32-serv
    # scswitch -e -M -j ora32-list
    

アップグレードの確認

次の手順で、アップグレードが正しく完了したことを確認します。

  1. Oracle リソースがオンラインであることを確認するには次のコマンドを使用します。


    # scstat -g
    
    .

  2. リソースグループの切り替えが次のコマンドで実行できることを確認します。


    # scswitch -z -g resource-group -h node