Sun Cluster Data Service for SAP Web Application Server ガイド (Solaris OS 版)

ProcedureSAP Web Application Server と SAP J2EE Engine をインストールして構成するには

手順
  1. クラスタの 1 つのノードに SAP Web Application Server ソフトウェアをインストールします。

    SAP インストールマニュアルを参照してください。

  2. SAP J2EE engine を使用している場合、同じノードに SAP J2EE engine ソフトウェアをインストールします。

    SAP インストールマニュアルを参照してください。

  3. SAP enqueue server と SAP replica server のプロファイルを作成します。

    SAP マニュアル『 SAP Web Application Server in Switchover Environments, UNIX Platforms』を参照してください。


    注 –

    SAP enqueue server のプロファイルと SAP replica server のプロファイルの SAPSYSTEM パラメータは、同じ値でなければなりません。


  4. SAP 起動プロファイルから SAP enqueue server の起動指定を削除します。

    Sun Cluster 環境では、SAP enqueue server リソースが SAP enqueue server アプリケーションを起動します。したがって、SAP 起動プロファイルに SAP enqueue server の起動指定が含まれている場合は、これを削除してください。削除されていない場合、SAP enqueue server が何度も起動されます。

  5. SAP web application server コンポーネントでプロセス監視機能 (PMF) を使用する場合、SAP Web Application Server を実行するすべてのノードで、saposcol プログラムをクラスタ環境の外で起動する必要があります。

    SUNW.sapwebas リソースタイプは、Sun Cluster 構成の SAP web application server コンポーネントを表します。このリソースタイプの拡張プロパティー Webas_Use_Pmf は、PMF を SAP web application server コンポーネントで使用するかどうかを判断します。

    PMF を使用する場合、SAP web application server コンポーネントのリソースを停止するときに、saposcol プログラムも停止しないようにするため saposcol プログラムをクラスタ環境の外で実行する必要があります。

    saposcol プログラムは、SAP Web Application Server を実行しているすべてのノードから利用できる必要があります。したがって、プログラムは、各ノードの広域ファイルシステムまたはローカルファイルシステム内になければなりません。

    1. saposcol プログラムが広域ファイルシステムにある場合に、このプログラムをローカルファイルシステムにも置きたい場合は、各ノードで次の処理を実行して、このプログラムをローカルファイルシステムにコピーします。

      • インストールノードで saposcol プログラムが個別に起動されている場合は、saposcol プログラムを停止します

      • SAP システムが実行されている場合は、SAP システムを停止します。

      • ファイルシステムがマウントされていない場合は、インストールノードにマウントします。

      • saposcol 実行可能ファイルをインストールノードから対象ノードのローカルディレクトリにコピーします。


        # cp /usr/sap/SAPSID/SYS/exe/saposcol destination-directory
        

        SAPSID は SAP システム ID です。

    2. PMF を使用するように構成されている SAP web application server コンポーネントの SAP 起動スクリプトから、saposcol プログラムの起動指定を削除します 。この処理については、その他の SAP の起動スクリプトと停止スクリプトへの修正に関する説明とともに手順 9で説明しています。

    3. saposcol プログラムを起動します。

      • このプログラムが広域ファイルシステムにある場合、このプログラムは広域的な場所から起動します。

      • このプログラムがローカルファイルシステムにある場合、このプログラムは各ノードのローカルディレクトリから起動します。

  6. SAP message server と SAP web application server コンポーネントの論理ホスト名を返すスクリプトを作成します。

    SAP message server と SAP web application server コンポーネントの両方の各インスタンスの論理ホスト名を返す loghost という名前のスクリプトを作成します。このスクリプトは、ディレクトリ $HOME にあります。ここで、$HOME は SAP ユーザーのホームディレクトリです。次のコマンドに、loghost スクリプトの例を示します。


    if [ "$1" = "DVEBMGS00" ]; then
        echo loghost-1;
    fi
    if [ "$1" = "SCS01" ]; then
        echo loghost-2;
    fi
    if [ "$1" = "D02" ]; then
        echo loghost-3;
    fi

    注 –

    SAP web application server コンポーネントをスケーラブルリソースとして構成している場合、後述の「スケーラブル SAP Web Application Server コンポーネントのインストールを変更するには」節で、このスクリプトを変更します。


  7. SAP J2EE engine を使用している場合、loghost スクリプトを変更して、SAP J2EE engine の論理ホスト名を返すようにします。

    手順 6で作成した loghost スクリプトを変更して、SAP J2EE engine の各インスタンスの論理ホスト名を返すようにします。このスクリプトは、$HOME ディレクトリにあり、$HOME は、SAP ユーザーのホームディレクトリを指します。次のコマンドに、loghost スクリプトの変更例を示します。


    if [ "$1" = "JC00" ]; then
        echo loghost-4;
    fi
    if [ "$1" = "SCS02" ]; then
        echo loghost-5;
    fi
    if [ "$1" = "J02" ]; then
        echo loghost-6;
    fi
  8. 実行できるようにスクリプトのファイルアクセス権を設定します。


    # chmod 755 $HOME/loghost
    
  9. SAP 起動スクリプトと停止スクリプトを次のように変更します。

    1. 必ず一意のインスタンス名を使用してください。

      SAP の起動スクリプトと停止スクリプトで、INSTANCE= で始まる行の末尾に sort -u コマンドを追加します。このコマンドは、検出したすべてのインスタンス名をソートし、一意の名前だけを保持します。

      変更前の行は次のようになります。ここで、arg は 1 または 2 などの引数番号です。


      INSTANCE=`echo $arg | awk '/SCS[0-9][0-9]/{print $1}
      /ASCS[0-9][0-9]/{print $1} /DVEBMGS[0-9][0-9]/{print $1} 
      /JC[0-9][0-9]/{print $1} /D[0-9][0-9]/{print $1} 
      /J[0-9][0-9]/{print $1} /G[0-9][0-9]/{print $1}'`

      次に、最後に sort -u コマンドへ実行結果を渡すパイプを追加した行を示します。ここで、arg は 1 または 2 などの引数番号です。


      INSTANCE=`echo $arg | awk '/SCS[0-9][0-9]/{print $1}
      /ASCS[0-9][0-9]/{print $1} /DVEBMGS[0-9][0-9]/{print $1} 
      /JC[0-9][0-9]/{print $1} /D[0-9][0-9]/{print $1} 
      /J[0-9][0-9]/{print $1} /G[0-9][0-9]/{print $1}' | sort -u`
    2. 論理ホスト名を返すスクリプトを呼び出すために、SAP 起動スクリプトと停止スクリプトを更新します。

      HOSTNAME を設定するセクションに、手順 6で作成した $HOME/loghost スクリプトの名前を挿入します。この処理は、HOSTNAME='hostname' という行を、次の例の行で置き換えることで達成されます。


      < remove
      > add
      
      # Set HOSTNAME
      case `uname` in
         OS/390* | z/OS* | AIX* | BOS*)
           HOSTNAME=`hostname -s`
           ;;
         *)
      <    HOSTNAME=`hostname`
      >    if [ $# -eq 2 ]; then
      >         HOSTNAME=`$HOME/loghost $2`
      >    else
      >         HOSTNAME=`hostname`
      >    fi
           ;;
      esac
    3. ユーザーのプロファイルを有効にして SAP 固有の環境ファイルも有効にするために、SAP 起動スクリプトと停止スクリプトの 2 行目に次の行を追加します。

      . $HOME/.profile

    4. SAP 起動スクリプトから SAP central services コンポーネントの DB チェック指定を削除します。SAP central services コンポーネントとは、SAP enqueue server、SAP replica server および SAP message server のことです。

    5. SAP web application server で PMF を使用している場合は、この SAP web application server が使用する SAP 起動スクリプトから saposcol プログラムの起動指定を削除します。手順 5も参照してください。

  10. 物理ホスト名ではなく論理ホスト名を使用するために、ファイルの名前と内容を変更します。

    標準の SAP Web Application Server インストールでは、SAP システムをインストールするノードの物理ホスト名が使用されます。SAP Web Application Server を変更して、論理ホスト名を使用し、SAP Web Application Server が Sun Cluster 環境で動作できるようにします。


    注 –

    SAP web application server コンポーネントをスケーラブルリソースとして構成している場合、後述の「スケーラブル SAP Web Application Server コンポーネントのインストールを変更するには」節で、このスクリプトをさらに変更します。


    1. SAP ユーザーのホームディレクトリにある「.」ファイルの名前に、物理ホスト名が含まれていないことを確認します。

      次の例では、「.」ファイルから物理ホスト名を削除しています。


      for i in .*physical-hostname.*
        > do
        > mv $i `echo $i | sed "s/_physical-hostname//"`
        > done
    2. データベース「.」 ファイルの名前と内容が、物理ホスト名ではなく、データベースが使用する論理ホスト名を指していることを確認します。

    3. プロファイルファイルの名前と内容を変更して、物理ホスト名ではなく、個々のコンポーネントに対応する論理ホスト名を使用するようにします。

      これらのファイルは、/usr/sap/ SAPSID/SYS/profile にあり、SAPSID は SAP システム ID です。

    4. SAP プロファイルディレクトリにある各 SAPSID_INSTANCE_NAMESYSTEM_NUMBER_logical-hostname ファイルに、次の logical-host-name エントリを追加します。SAPSID は SAP システムの ID、INSTANCE_NAME は SAP インスタンス名、SYSTEM_NUMBER は SAP システム番号です。

      SAPLOCALHOST=logical-hostname

      SAPLOCALHOSTFULL=logical-hostname.domain

    5. ファイル /usr/sap/SAPSID/ INSTANCE_NAME/igs/conf/igs.xml 内で、物理ホスト名を論理ホスト名で置き換えます。 SAPSID は SAP システムの ID、INSTANCE_NAME は SAP インスタンス名です。

  11. SAP インスタンスプロファイルのパラメータ enq/serverhost を変更します。

    インストール後、SAP インスタンスプロファイルのパラメータ enq/serverhost に物理ホスト名を設定します。このパラメータを変更して、SAP enqueue server が動作する論理ホスト名を含むようにします。

  12. SAP J2EE engine を使用している場合、SAP J2EE engine 設定を変更して、論理ホスト名を参照するようにします。

    1. 構成スクリプトの場所を決定します。

      • ABAP エンジンコンポーネントが SAP J2EE engine コンポーネントなしでインストールされている場合、あるいは、SAP J2EE engine コンポーネントがスタンドアロンコンポーネントとしてインストールされている場合、これらのスクリプトはディレクトリ /usr/sap/SAPSID /JCINSTANCE_NUMBER /j2ee/configtool にあります。

      • ABAP エンジンコンポーネントが SAP J2EE engine コンポーネントとともにインストールされている場合、これらのスクリプトはディレクトリ /usr/sap/ SAPSID/DVEBMGSINSTANCE_NUMBER /j2ee/configtool にあります。

    2. configtool.sh スクリプトを実行します。このスクリプトは、手順 aで決定したディレクトリにあります。このスクリプトを使用して、物理ホスト名をすべて、対応する論理ホスト名に変更します。この処理には、インスタンスホストと JDBC URL を設定して、データベースの論理ホストを指すようにすることも含まれます。

    3. データベースの論理ホストを使用して、データベースをオンラインにします。

    4. SAP 構成ツールを使用して、この手順の残りの手順の設定を変更します。

      SAP 構成ツールを起動するには、手順 aで決定したディレクトリにあるスクリプト、offlinecfgeditor.sh を使用できます。

    5. LockingManager セクションで、enqu.host を変更して、SAP enqueue server の論理ホスト名を指すようにします。このエントリは、すべての設定 (つまり、一般とインスタンス固有) で変更します。

    6. LockingManager の部分で、enq.profile.filename をすべて変更して、論理ホスト名を使うようにします。このエントリは、すべての設定 (つまり、一般とインスタンス固有) で変更します。

      たとえば、SAPSID_JC INSTANCE_NUMBER_physicalhostSAPSID _JCINSTANCE_NUMBER _logicalhost に変更します。新しいファイル名は、ファイル /sapmnt/SAPSID/profile のファイル名と同じであるべきです。

    7. ClusterManager セクションで、instance.ms.host を変更して、SAP message server の論理ホスト名を指すようにします。このエントリは、すべての設定 (つまり、一般とインスタンス固有) で変更します。

    8. instance.properties.IDxxxxxx を変更して、論理ホストを指すようにします。

      instance.properties.IDxxxxxx ごとに、 物理ホスト名をすべて、対応する論理ホスト名に変更します。

    9. enqu.port パラメータと URL dbpool パラメータの URL の設定が正しいことを確認します。