Informix の SAP をインストールおよび構成するには、次の節を参照してください。Informix の SAP をインストールおよび構成するには、「Informix の SAP」を参照してください。
Informix の SAP と Sun Cluster HA for SAP をインストールおよび構成するために行う必要がある主な作業は、表 10-10 に示すとおりです。
表 10-10 Sun Cluster HA for SAP のインストール概要 (Informix の SAP)
作業 |
記載場所 |
---|---|
SAP と Informix 用のクラスタ環境の準備
- Solaris をインストールする - ボリュームマネージャをインストールおよび構成する - ディスクセットまたはディスクグループを作成する groups - ボリュームとファイルシステムを作成する - Sun Cluster とデータサービスをインストールする - パブリックネットワーク監視 (PNM) を設定する - 論理ホストとマウントポイントを設定する - 共有 CCD を構成する (VxVM、2 ノードのみ) - HA-NFS を設定する (必要に応じて) - カーネルパラメータを調整する - Informix へのリンクを作成する - 管理ファイルシステムを作成および変更する - Sun Cluster HA for NFS を構成する - スワップ空間とページング空間を構成する - ユーザーアカウントとグループアカウントを作成する | |
SAP と Informix のインストール - SAP と Informix をインストールする - 必要に応じて、他の構成要素 (アプリケーションサーバーなど) をインストールする - SAP GUI をインストールする - SAP と Informix をシャットダウンする | |
クラスタ環境内での SAP と Informix の動作を可能にする
- Informix 構成ファイルを変更する - SAP 中央インスタンス環境を設定する - SAP データベースユーザー環境を変更する - /etc/services を更新し、/usr/sap/tmp を作成する - インストールした SAP をテストする | |
Sun Cluster HA for Informix の構成: - SAP と Informix をシャットダウンする - HA-Informix を登録および起動する - Informix を HA-Informix の制御下に置く - HA-Informix を起動する - データベースのスイッチオーバーをテストする | |
Sun Cluster HA for SAP の構成: - Sun Cluster HA for SAP を登録する - hadsconfig(1M) で Sun Cluster HA for SAP を構成する - Sun Cluster HA for SAP を起動する - SAP のスイッチオーバーをテストする - アプリケーションサーバーの起動スクリプトと停止スクリプトをカスタマイズする - SAP に対するデータサービスの依存関係を設定する |
「Sun Cluster HA for SAP の構成 (Informix の SAP)」 and 「Informix データサービスの依存関係を設定するには」 |
インストールを開始する前に、次のワークシートを完成してください。
表 10-11 Sun Cluster HA for SAP のインストールワークシート (Informix の SAP)
クラスタ名 |
|
論理ホスト数 |
|
CI 論理ホストの潜在的マスターである全物理ホストの名前と IP アドレス |
|
CI 論理ホストの名前と IP アドレス |
|
SAP システム ID (<SAPSID>) |
|
SAP システム番号 |
|
DB 論理ホストの潜在的マスターである全物理ホストの名前と IP アドレス |
|
DB 論理ホストの名前と IP アドレス (非対称構成の場合は CI 論理ホストと同じ) |
|
NFS 論理ホストの名前 (すべてのアプリケーションサーバーがクラスタの外部に存在する場合は中央インスタンスの論理ホスト名。アプリケーションサーバーがクラスタの内部に存在する場合は外部の NFS クラスタから NFS サービスを提供する論理ホスト名)。「Sun Cluster HA for NFS に関する注意事項」を参照。 |
|
CI 論理ホストのすべての潜在的マスターに対する SAP ライセンス |
|
表 10-10 に示された順番どおりに手順を実行します。
SAP および Informix のインストール手順を開始する前に、次の準備作業を行なっておいてください。
全ノード上での Solaris オペレーティング環境およびその必須パッチをインストールする
第 3 章「Sun Cluster ソフトウェアのインストールと構成」を参照してください。
全ノード上でのボリュームマネージャのソフトウェアおよびその必須パッチをインストールする
第 3 章「Sun Cluster ソフトウェアのインストールと構成」を参照してください。
SAP および Informix をインストールするノード上で、Solstice DiskSuite ディスクセットまたは VxVM ディスクグループを作成する。
SAP 中央インスタンスおよびデータベースインスタンス用にそれぞれ異なるディスクグループを作成することを推奨
SAP および Informix をインストールするノード上で、Sun Cluster ガイドラインに従ってボリュームを作成する
コントローラにまたがるボリュームをミラー化する
VxVM の場合は、ミラーの再同期の高速化のためのダーティリージョンログを使用する
論理ホストのフェイルオーバーの高速化のためにロギングファイルシステムを使用する
下の表をワークシートとして利用して、SAP の中央インスタンスに使用する各ファイルシステムに対応するボリューム名を収集してください。実際の構成によって異なる推奨ファイルシステムサイズについては、SAP のインストールガイドを参照してください。これらのファイルシステムは、データベースに依存しないファイルシステムです。中央インスタンスのファイルシステムはデータベースに依存しません。また、データベースインスタンスのファイルシステムもデータベースに依存しません。データベースインスタンスには raw パーティションを使用してください。
表 10-12 ワークシート: SAP インスタンス用のファイルシステムとボリューム名 (Informix の SAP)
ファイルシステム名 / マウントポイント |
ボリューム名 |
---|---|
/usr/sap/trans |
|
/sapmnt/<SAPSID> |
|
/usr/sap/<SAPSID> |
|
/informix/<SAPSID> |
|
全ノード上でSun Cluster、Sun Cluster HA for SAP、Sun Cluster HA for Informix とそれらの必須パッチのインストール。
第 3 章で説明している手順を使用しますが、そのインストール中、scinstall(1M) を使用して論理ホストの設定を行わないでください。(手順 10 において、scconf(1M) で論理ホストを設定します)。
全ノード上での PNM の構成
手順の詳細は、このマニュアルの 第 3 章「Sun Cluster ソフトウェアのインストールと構成」、および『Sun Cluster 2.2 のシステム管理』のネットワーク管理に関する章を参照してください。
クラスタの起動
1 つのノード上で、次のコマンドを実行します。
# scadmin startcluster physicalhost clustername |
他のすべてのノード上で、次のコマンドを連続して実行します。
# scadmin startnode |
(VxVM のみ) 全ディスクグループがデポートされていることの確認
(Solstice DiskSuite のみ) すべてのディスクセットの所有権の解除
SAP をインストールする上で scconf(1M) による論理ホストの作成。
論理ホスト数は、実際の構成によって異なります。SAP と Informix 用に 2 つのディスクグループを設定する必要があります。両方のディスクグループを 1 つの論理ホストに作成することも可能です。また、構成内に 2 つの論理ホストが存在する場合は、各ディスクグループを別の論理ホストに作成することも可能です。詳細は、第 3 章「Sun Cluster ソフトウェアのインストールと構成」を参照してください。
SAP とデータベースの論理ホストを別々に作成する場合、最初に SAP の論理ホストを作成し、次にデータベースの論理ホストを作成する必要があります。論理ホストを作成する順番はクラスタ再構成中に論理ホストが起動される順番の逆です。この場合、データベースの論理ホストは最初に起動されるので、作成するのは後です。
次の情報が必要です。
論理ホスト名
論理ホストの潜在的マスターである物理ホスト名
論理ホストの潜在的マスター用の主パブリックネットワークコントローラ名
ディスクグループ名
論理ホストを作成するときは、scconf(1M) に -m オプションを使用して、自動フェイルバック機能を無効にしてください。
(VxVM を使用した、2 ノードの構成のみ) 共有 CCD の構成
付録 C 「VERITAS Volume Manager の構成」 を参照してください。
中央インスタンスおよびデータベースインスタンスボリューム用のマウントポイントの作成と、各論理ホストの全潜在的マスター上の vfstab.logicalhost ファイルへのその情報の入力。
vfstab.logicalhost ファイルは、/etc/opt/SUNWcluster/conf/hanfs にあります。
下の表は、中央インタンスとデータベースインスタンスに関連付けられたディスクグループ (VxVM の場合) またはディスクセット (Solstice DiskSuite) 用として推奨するファイルシステムとマウントポイントをまとめています。論理ホストが1つの構成であっても、中央インスタンスとデータベースインスタンスのファイルシステムをそれぞれ異なるディスクグループまたはディスクセットに作成することによって、将来的に構成上の柔軟性が増すことがあります。
表 10-13 SAP 中央インスタンスとデータベースインスタンスのディスクグループ/ディスクセットとマウントポイント (Informix を使用する SAP の場合)
ディスクグループ/ディスクセット |
マウントポイント |
---|---|
中央インスタンス |
/usr/sap/<SAPSID> |
中央インスタンス |
/usr/sap/trans |
中央インスタンス |
/sapmnt/<SAPSID> |
データベースインスタンス |
/informix/<SAPSID> |
すべてのノード上で、Informix 用のディレクトリを作成します。
# mkdir /informix # mkdir -p /var/opt/informix # cd /var/opt/ # chown informix:informix informix |
SAP と Informix をインストールするノード上で、Informix データディレクトリを作成し、ソフトリンクを設定します。
詳細は、SAP のインストールマニュアルを参照してください。たとえば、次のようになります。
# mkdir /informix/<SAPSID>/sapdata # mkdir /informix/<SAPSID>/sapdata/physdev<n> ... # ln -s /dev/vx/rdsk/dbdg/vol01 /informix/<SAPSID>/sapdata/physdev1/data1 # ln -s /dev/vx/rdsk/dbdg/vol02 /informix/<SAPSID>/sapdata/physdev1/data2 # ln -s /dev/vx/rdsk/dbdg/vol03 /informix/<SAPSID>/sapdata/physdev1/data3 # ln -s /dev/vx/rdsk/dbdg/vol04 /informix/<SAPSID>/sapdata/physdev1/data4 # ln -s /dev/vx/rdsk/dbdg/vol05 /informix/<SAPSID>/sapdata/physdev2/data5 # ln -s /dev/vx/rdsk/dbdg/vol06 /informix/<SAPSID>/sapdata/physdev2/data6 # ln -s /dev/vx/rdsk/dbdg/vol07 /informix/<SAPSID>/sapdata/physdev2/data7 # ln -s /dev/vx/rdsk/dbdg/vol08 /informix/<SAPSID>/sapdata/physdev2/data8 # ln -s /dev/vx/rdsk/dbdg/vol09 /informix/<SAPSID>/sapdata/physdev3/data9 # ln -s /dev/vx/rdsk/dbdg/vol10 /informix/<SAPSID>/sapdata/physdev3/data10 # ln -s /dev/vx/rdsk/dbdg/vol11 /informix/<SAPSID>/sapdata/physdev3/data11 # ln -s /dev/vx/rdsk/dbdg/vol12 /informix/<SAPSID>/sapdata/physdev3/data12 |
すべてのノード上で、/var/opt/informix から共有ディスク上の適切なディレクトリにリンクを作成します。
たとえば、次のようになります。
# ln -s /informix/<SAPSID>/sapdata /var/opt/informix/sapdata # ln -s /informix/<SAPSID>/sapreorg /var/opt/informix/sapreorg |
すべてのノード上で、scconf(1M) で論理ホスト管理ファイルシステムを作成します。
詳細な手順については、付録 B 「Solstice DiskSuite の構成」 と付録 C 「VERITAS Volume Manager の構成」 を参照してください。
SAP アプリケーションサーバーがクラスタ外部で構成される場合、Sun Cluster HA for NFS を構成し、各論理ホストのすべての潜在的マスター上にある dfstab.logicalhost ファイルに適切な共有ファイルシステムを入力します。
このようなファイルは /etc/opt/SUNWcluster/conf/hanfs に存在します。詳細は、「アプリケーションサーバーとテスト/開発システムに対する構成オプション」を参照してください。
次のファイルシステムは、クラスタ外部にある SAP アプリケーションサーバーと共有します。これは一般的なガイドラインです。詳細は、SAP マニュアルを参照してください。
表 10-14 外部アプリケーションサーバーと共有するファイルシステム (Informix の SAP)
外部アプリケーションサーバーと共有するファイルシステム |
/usr/sap/trans |
/sapmnt/<SAPSID>/exe |
/sapmnt/<SAPSID>/profile |
/sapmnt/<SAPSID>/global |
論理ホストの機能性とマウントポイントをテストします。つまり、すべての潜在的マスター間で論理ホストを切り替えます。
これによって、すべてのマウントポイントが正しく作成されていることを確認できます。
論理ホストのすべての潜在的マスター上で、/etc/system ファイル内のカーネルパラメータを調整します。
SAP のマニュアル『R/3 Installation on UNIX: OS Dependencies』で示されているガイドラインに従ってください。
中央インスタンスとデータベースインスタンスがお互いに (あるいは、他のインスタンスとともに) 共存する構成では、必ず、カーネルパラメータを状況に応じて調整してください。
論理ホストのすべての潜在的マスター上で、常時スワップ空間を作成します。
スワップ空間の大きさのガイドラインについては、SAP のマニュアル『Installation Requirements Checklist』を参照してください。
すべてのノード上で、ページング空間の大きさを調べます。
SAP 付属の memlimits ユーティリティを使用すると、アドレス空間を調べることができます。このユーティリティについての詳細は、SAP のマニュアル『R/3 Installation on UNIX: OS Dependencies』で示されているガイドラインを参照してください。一般的な規則として、スワップ空間は少なくとも 1 つのノードが持つメモリーの 3 倍は必要です。詳細は、SAP のインストールマニュアルを参照してください。
クラスタを停止し、すべてのノードを再起動します。
すべてのノード上で、システム資源を確認します。
詳細は、SAP のインストールマニュアルを参照してください。
# ulimit -a... time(seconds) unlimited file(blocks) unlimited data(kbytes) 2097148 stack(kbytes) 8192 coredump(blocks) unlimited nofiles(descriptors) 64 memory(kbytes) unlimited |
論理ホストのすべての潜在的マスター上で、SAP と Informix のグループ、ユーザー、パスワード、およびホームディレクトリを作成します。
ユーザーのホームディレクトリを作成します。
# mkdir /export/home/<sapsid>adm # mkdir /export/home/sapr3 # mkdir /export/home/informix |
以下のユーザーとグループを追加します。 詳細は、SAP のマニュアル『R/3 Installation on UNIX: OS Dependencies』で示されているガイドラインを参照してください。ユーザー ID およびグループ ID はすべてのノードで同一である必要があります。
# groupadd -g 10000 sapsys # groupadd -g 10002 informix # groupadd -g 10004 super_archive # groupadd -g 10006 super_ # groupadd -g 10008 bargroup (for SAP4.5B only) # useradd -g sapsys -G super_archive,super_,root,informix,bargroup -s ¥ /usr/bin/csh -d /export/home/<sapsid>adm -u 2001 <sapsid>adm # useradd -g sapsys -G super_archive,super_,root,informix -s /usr/bin/csh -d ¥ /export/home/sapr3 -u 2002 sapr3 # useradd -g informix -G super_archive,super_,root,sapsys -s /usr/bin/csh -d ¥ /export/home/informix -u 2004 informix |
ユーザーのパスワードを作成します。
# passwd sapr3 # passwd informix # passwd <sapsid>adm |
これで、SAP と Informix 用のクラスタ環境の準備は完了しました。次は、「Informix の SAP をインストールするには」に進んでください。
「SAP とデータベース (Informix の SAP) 用にクラスタ環境を準備するには」に示したすべての準備作業を完了していることを確認します。
すべてのノードがクラスタ内で動作していることを確認します。
インストールする SAP とデータベースが存在するノードに全論理ホストをスイッチオーバーします。
# scadmin switch clustername phys-hahost1 CIlogicalhost DBlogicalhost ... |
SAP インストールディレクトリを作成し、SAP、データベース、他の構成要素 (アプリケーションサーバーなど)、および SAP フロントエンド GUI をインストールします。
インストール時には、SAP マニュアルを使用してください。詳細は、SAP のマニュアル『R/3 Installation on UNIX: OS Dependencies』で示されているガイドラインを参照してください。
これで、SAP と Informix 用のインストールは完了しました。次は、「Informix クラスタ環境内で SAP が動作できるようにするには」に進んでください。
SAP 中央インスタンスとデータベースをシャットダウンします。
# su - <sapsid>adm $ stopsap |
root になり、Informix ファイルを共有ディスクからすべてのノードにコピーします。
SAP と Informix をインストールしたノード上で、/.rhosts ファイルを作成または編集して、すべてのノードからアクセスできるように設定します。
共有ディスク上にある Informix ディレクトリに移動します。
# cd /informix/<SAPSID> |
tar(1M) を使用して、Informix ディレクトリを保管し、SAP と Informix をインストールしたノード (たとえば、phys-hahost1) 上にあるローカルの Informix ディレクトリにコピーします。
ディレクトリ内にあるサブディレクトリとファイルは SAP のバージョンによって異なります。データディレクトリ (sapdata と sapreorg) 以外のすべてのサブディレクトリとファイルをコピーしてください。たとえば、次のようにします。
# tar cf - aaodir bin console.phys-hahost1.<SAPSID>.log dbssodir ¥ forms gls incl help installconn installserver ism IVODBC.LIC lib locale ¥ messages release snmp | ( cd /var/opt/informix ; tar xf -) |
中央インスタンスとデータベースインスタンスのすべての潜在的マスターに Informix ファイルを配布します。
最初にデータベースがインストールされていたノードから、中央インスタンスとデータベースインスタンスのすべての潜在的マスター上にあるローカルディレクトリ /var/opt/informix に、Informix ファイルをコピーまたは転送します。
$ su # tar cfB - /var/opt/informix | rsh phys-hahost1 tar xfB - |
すべてのノード上で、Informix 構成ファイルを変更します。
ユーザー informix としてログインして、以降の作業を実行します。
次の手順を開始する前に、すべてのファイルのバックアップコピーを作成してください。
Informix で使用できるように、sqlhosts.tli ファイルの名前を sqlhosts に変更します。
# mv /var/opt/informix/etc/sqlhosts.tli /var/opt/informix/etc/sqlhosts |
sqlhosts ファイルを編集して、すべての物理ホスト名をデータベースインスタンスの論理ホスト名に置き換えます。
たとえば、次のようにします。
CIlogicalhost<sapsid>shm onipcshm DBlogicalhost sapinf<SAPSID> CIlogicalhost<sapsid>tcp ontlitcp DBlogicalhost sapinf<SAPSID> |
/export/home/informix/.rhosts ファイルを編集して、ユーザー informix がすべてのノードからデータベースにアクセスできるように変更します。
次のようなエントリを作成します。エントリはホストごとに 1 つです。
phys-hahost1 informix phys-hahost2 informix CIlogicalhost informix DBlogicalhost informix |
Informix の onconfig ファイルの名前を変更します。つまり、物理ホスト名をデータベースインスタンスの論理ホスト名に置き換えます。
/var/opt/informix/etc/onconfig.physicalhost.<sapsid> から /var/opt/informix/etc/onconfig.CIlogicalhost.<sapsid> に変更します。
onconfig ファイルを Informix 用に変更します。
ファイル /var/opt/informix/onconfig.CIlogicalhost.<sapsid> を編集して、すべての Informix パスが、共有ディスクセットではなく、/var/opt/informix を指すように変更します。変更するのは、次のパラメータです。
ROOTPATH
MIRRORPATH
MSGPATH
CONSOLE
ALARMPROGRAM
DRLOSTFOUND
SYSALARMPROGRAM
結果のエントリは、次のようになります。
# original entry # ROOTPATH /informix/<SAPSID>/sapdata/physdev1/data1 # new entry ROOTPATH /var/opt/informix/sapdata/physdev1/data1 |
さらに、データベースサーバーフィールド内の物理ホスト名を論理ホスト名に置き換えます。たとえば、次のようになります。
DBSERVERNAME CIlogicalhost<sapsid>tcp DBSERVERALIASES CIlogicalhost<sapsid>shm |
/var/opt/informix/inftab ファイルを作成します。
このファイルの形式は $ONCONFIG:$INFORMIXDIR です。たとえば、次のようになります。
onconfig.CIlogicalhost.<sapsid>:/var/opt/informix |
SAP と Informix をインストールしたノード (この場合、phys-hahost1) ではなく、すべてのノード上にあるローカルの Informix ディレクトリに Informix ディレクトリをコピーします。
# rsh phys-hahost1 tar cfB - /var/opt/informix | tar xfB - |
すべてのノード上で、SAP データベースユーザー (ユーザー informix) の管理環境を設定します。
すべてのノード上で、.dbenv_physicalhost.csh ファイルの名前を .dbenv.csh に変更します。
$ mv .dbenv_physicalhost.csh .dbenv.csh |
すべてのノード上で、.dbenv.csh ファイルを次のように編集します。
.dbenv.csh ファイルを編集して、$INFORMIXDIR が /var/opt/informix を指すように変更し、さらに、ONCONFIG 値を onconfig.CIlogicalhost.<sapsid> に変更します。
また、.dbenv.csh ファイルを編集して、$INFORMIXSERVER 用に TCP を使用することと、ping(1M) でデータベース論理ホストの状態を検査することを指定します。これは、スイッチオーバーまたはフェイルオーバー時における $INFORMIXSERVER パラメータの動的な再設定を有効にするために必要です。
非対称構成では、TCP の使用とループバックは性能を落とす可能性があります。このような場合、$INFORMIXSERVER が共有メモリーを使用するように設定してもかまいません。
結果のファイルは次のようになります。変更されたフィールドはボールド書体で表します。
... setenv INFORMIXDIR /var/opt/informix setenv ONCONFIG onconfig.CIlogicalhost.<sapsid> ... case Sun*: setenv INFORMIXSHMBASE 0x01000000 setenv LC_CTYPE iso_8859_1 setenv INFORMIXSQLHOSTS $INFORMIXDIR/etc/sqlhosts # use TCP for connection prototype always because connection # cannot be reset dynamically between shared memory and TCP in # the Sun Cluster environment. setenv INFORMIXSERVER `grep 'CIlogicalhost<sapsid>.*ontlitcp' $INFORMIXSQLHOSTS | awk '{print $1}'` /usr/sbin/ping DBlogicalhost >& /dev/null if ( $status != 0 ) then echo dbserver DBlogicalhost is not alive. endif |
すべてのノード上で、.sapenv_physicalhost.csh ファイルの名前を .sapenv.csh に変更します。そして、.sapenv.csh ファイルを編集して、すべての物理ホスト名を論理ホスト名に置き換えます。
まず、ファイルの名前を変更します。
$ mv .sapenv_physicalhost.csh .sapenv.csh |
次に、.sapenv.csh ファイルを編集して、別名 startsap と stopsap が中央インスタンスの論理ホストを指すように「set hostname=」フィールドを変更します。
... set hostname='CIlogicalhost' ... |
SAP 構成ファイルを変更します。
アプリケーションサーバーを除くすべてのノード上で、以降の作業を行います。以降の作業を行うには、ユーザー <sapsid>adm としてログインする必要があります。
<sapsid>adm ホームディレクトリ内の、SAP インスタンスの startsap と stopsap シェルスクリプトの名前を変更して、編集します。
SAP の中央インスタンスをインストールするサーバー上の <sapsid>adm ホームディレクトリには、物理ホスト名を含むシェルスクリプトが含まれています。物理ホスト名を論理ホスト名に置き換えることによって、これらのシェルスクリプト名を変更してください。次の例では、CIlogicalhost が中央インスタンスの論理ホスト名です。
$ mv startsap_physicalhost_00 startsap_CIlogicalhost_00 $ mv stopsap_physicalhost_00 stopsap_CIlogicalhost_00 |
startsap_CIlogicalhost_00 と stopsap_CIlogicalhost_00 シェルスクリプトは START_PROFILE パラメータの物理ホスト名を指定します。両方のファイルで、START_PROFILE パラメータの物理ホスト名を中央インスタンス論理ホスト名に置き換えてください。
... START_PROFILE="START_DVEBMGS00_CIlogicalhost" ... |
SAP 中央インスタンスのプロファイルファイルを編集します。
インストール中に作成された 3 つのプロファイルファイルにおいて、すべての物理ホスト名を論理ホスト名に置き換えます。この作業を行うには、ユーザー <sapsid>adm としてログインし、profile ディレクトリに移動する必要があります。
START_DVEBMGS00_physicalhost および <SAPSID>_DVEBMGS00_physicalhost プロファイルファイルの名前を変更します。
$ cd /sapmnt/<SAPSID>/profile $ mv START_DVEBMGS00_physicalhost START_DVEBMGS00_CIlogicalhost $ mv <SAPSID>_DVEBMGS00_physicalhost <SID>_DVEBMGS00_CIlogicalhost |
START_DVEBMGS00_CIloghost プロファイルファイル内のすべての pf= 引数の物理ホスト名を論理ホスト名に置き換えます。
Execute_00 =local $(DIR_EXECUTABLE)/sapmscsa -n ¥ pf=$(DIR_PROFILE)/<SAPSID>_DVEBMGS00_CIlogicalhost Start_Program_01 =local $(_MS) pf=$(DIR_PROFILE)/<SAPSID>_DVEBMGS00_CIlogicalhost Start_Program_02 =local $(_DW) pf=$(DIR_PROFILE)/<SAPSID>_DVEBMGS00_CIlogicalhost Start_Program_03 =local $(_CO) -F pf=$(DIR_PROFILE)/ <SAPSID>_DVEBMGS00_CIlogicalhost Start_Program_04 =local $(_SE) -F pf=$(DIR_PROFILE)/ <SAPSID>_DVEBMGS00_CIlogicalhost ... |
<SAPSID>_DVEBMGS00_CIloghost ファイルをテキストエディタで開いて、SAPLOCALHOST パラメータ用の新しいエントリを追加します。
このエントリは、中央インスタンスのプロファイル用のみ追加してください。SAPLOCALHOST パラメータに中央インスタンスの論理ホスト名を設定します。このパラメータにより、外部アプリケーションサーバーは、論理ホスト名を使用して中央インスタンスを探し出すことができます。
... SAPLOCALHOST =CIlogicalhost ... |
DEFAULT.PFL ファイルをテキストエディタで開いて、物理ホスト名を論理ホスト名に置き換えます。
すべての rdisp/パラメータの物理ホスト名を中央インスタンスの論理ホスト名に置き換えてください。SAPDBHOST パラメータには、データベースの論理ホスト名を入力します。中央インスタンスとデータベースが同じ論理ホスト上に存在する場合は、中央インスタンスの論理ホスト名を入力します。データベースが別の論理ホスト上に存在する場合は、そのデータベースの論理ホスト名を使用します。次の例では、CIlogicalhost が中央インスタンスの論理ホスト名、DBlogicalhost がデータベースの論理ホスト名を表します。HA1 は <SAPSID> です。
$ vi /sapmnt/<SAPSID>/profile/DEFAULT.PFL ... SAPDBHOST =DBlogicalhost rdisp/mshost =CIlogicalhost rdisp/sna_gateway =CIlogicalhost rdisp/vbname =CIlogicalhost_<SAPSID>_00 rdisp/enqname =CIlogicalhost_<SAPSID>_00 rdisp/btcname =CIlogicalhost_<SAPSID>_00 ... |
.dbenv_physicalhost.csh ファイルの名前を .dbenv.csh に変更します。
$ mv .dbenv_physicalhost.csh .dbenv.csh |
.sapenv_physicalhost.csh ファイルの名前を .sapenv.csh に変更します。
$ mv .sapenv_physicalhost.csh .sapenv.csh |
.sapenv.csh ファイルを編集して、別名 startsap と stopsap が中央インスタンスの論理ホストを指すように「set hostname=」フィールドを変更します。
... set hostname='CIlogicalhost' ... |
.dbenv.csh ファイルを編集して、$INFORMIXSERVER 用に TCP を使用することと、ping(1M) でデータベース論理ホストの状態を検査することを指定します。
これは、スイッチオーバーまたはフェイルオーバー時における $INFORMIXSERVER パラメータの動的な再設定を有効にするために必要です。
非対称構成では、TCP の使用とループバックは性能を落とす可能性があります。このような場合、$INFORMIXSERVER が共有メモリーを使用するように設定してもかまいません。
.dbenv.csh ファイルを編集して、$INFORMIXDIR が共有ディスクを指すように、さらに、$INFORMIXSERVER が TCP と ping(1M) を使用するように変更します。結果のファイルは次のようになります。変更されたフィールドはボールド書体で表します。
... setenv INFORMIXDIR /var/opt/informix setenv ONCONFIG onconfig.CIlogicalhost.<sapsid> ... case Sun*: setenv INFORMIXSHMBASE 0x01000000 setenv LC_CTYPE iso_8859_1 setenv INFORMIXSQLHOSTS $INFORMIXDIR/etc/sqlhosts # use TCP for connection prototype always because connection # cannot be reset dynamically between shared memory and TCP in # the Sun Cluster environment. setenv INFORMIXSERVER `grep 'CIlogicalhost<sapsid>.*ontlitcp' $INFORMIXSQLHOSTS | awk '{print $1}'` /usr/sbin/ping DBlogicalhost >& /dev/null if ( $status != 0 ) then echo dbserver DBlogicalhost is not alive. endif |
/export/home/<sapsid>adm/.rhosts ファイルを編集して、ユーザー <sapsid>adm がすべてのノードからデータベースにアクセスできるように変更します。
次のようなエントリを作成します。エントリはクラスタ内にある物理ホストと論理ホストごとに 1 つです。
phys-hahost1 <sapsid>adm phys-hahost2 <sapsid>adm CIlogicalhost <sapsid>adm DBlogicalhost <sapsid>adm |
すべてのノード上で、/usr/sap/tmp ディレクトリを作成します。
このディレクトリは saposcol プログラムが使用します。
SAP と Informix がインストールされているノードから、他のすべてのノード上にある /etc/services ファイルに、SAP 固有な /etc/services エントリをコピーします。
このようなエントリは /etc/services ファイルからコピーします。
sapms<SID> 3601/tcp sapdp00 3200/tcp sapdp00s 4700/tcp sapgw00 3300/tcp sapgw00s 4800/tcp |
インストールした SAP をテストします。
手動で SAP を停止してから、潜在的マスターノード間で手動で論理ホストを切り替え、同じく手動でバックアップノードから SAP を起動することによって、インストールした SAP をテストします。 このテストによって、カーネルパラメータ、サービスポートのエントリ、ファイルシステムとマウントポイント、ユーザーおよびグループアクセス権が、論理ホストのすべての潜在的マスター上で正しく設定されているかどうかを確認します。
ユーザー <sapsid>adm として、中央インスタンスおよびデータベースを起動します。
# startsap |
GUI を実行して、SAP が正しく起動することを確認します。
# su - <sapsid>adm $ setenv DISPLAY workstation:0 $ sapwin phys-hahost1 instancenumber |
SAP がデータベースに接続できることを確認します。
# su - <sapsid>adm $ R3trans -d |
saplicense ユーティリティを実行して、現在のノードの CUSTOMER KEY を取得します。
中央インスタンスの論理ホストのすべての潜在的マスターに対する SAP ライセンスが必要です。
SAP とデータベースを停止します。
# su - <sapsid>adm $ stopsap |
アプリケーションサーバーを除くすべてのノード上で、Informix ライブラリファイルへのリンクを設定します。
次のコマンドを実行するには、root になる必要があります。
# unlink iosm07a.so # unlink ipldd07a.so # unlink ismdd07b.so # ln -s /var/opt/informix/lib/iosm07a.so /usr/lib/iosm07a # ln -s /var/opt/informix/lib/ipldd07a.so /usr/lib/ipldd07a.so # ln -s /var/opt/informix/lib/ismdd07b.so /usr/lib/ismdd07b.so |
中央インスタンスの論理ホストの潜在的マスターである残りの各ノードについて、中央インスタンスの論理ホストをそのノードに切り替え、手順 9 で説明したテストシーケンスを繰り返します。
# scadmin switch clustername phys-hahost2 CIlogicalhost |
次は、「SunCluster HA for Informix を構成するには」に進んでください。
すべてのノード上で、Informix データベースを起動し、動作していることを確認します。
# oninit ... # dbaccess |
1 つのノードから、root として、Sun Cluster HA for Informix を登録します。
# hareg -s -r informix [-h DBlogicalhost] |
1 つのノードから、Sun Cluster HA for Informix を起動します。
# hareg -y informix |
1 つのノードから、Informix を Sun Cluster HA for Informix の制御下に置きます。
詳細は、hainformix(1M) のマニュアルページを参照してください。
# hainformix insert onconfig.CIlogicalhost.<sapsid> DBlogicalhost ¥60 10 120 300 sysmaster CIlogicalhost<sapsid>tcp |
1 つのノードから、Sun Cluster HA for Informix のサービスを開始します。
# hainformix start onconfig.CIlogicalhost.<sapsid> |
データベースが Sun Cluster HA for Informix の制御下で適切に動作していることを確認します。
データベースのスイッチオーバーを実行して、oninit プロセスが古いマスター上で停止し、新しいマスター上で再起動することを確認します。データベースはすべての潜在的マスターからアクセスできる必要があります。
次は、「Sun Cluster HA for SAP の構成 (Informix の SAP)」に進んでください。
hareg(1M) コマンドを実行して、SAP と Informix のデータサービスを登録します。
SAP 中央インスタンスとデータベースインスタンス用に別々の論理ホストを構成する場合、まず、Oracle データサービスの登録を解除し、次に示す順番に従って、データサービスを登録し直す必要があります。データサービスは登録した順番と逆の順番で起動されます。したがって、次の順番でデータサービスを登録すると、クラスタの起動時、各データサービスは正しい順番で起動されます。
# hareg -n informix # hareg -u informix # hareg -s -r sap -h CIlogicalhost # hareg -s -r nfs -h CIlogicalhost # hareg -s -r informix -h DBlogicalhost # hareg -y nfs,informix |
登録の順番はデータサービスや Sun Cluster によって決定されるわけではありません。したがって、後続のクラスタ再構成時に失われます。つまり、データサービスの登録を解除し、登録し直すたびに、順番を決定し直す必要があります。
クラスタ内のすべてのノードが動作していることを確認します。
hadsconfig(1M) コマンドを使用して、新しい Sun Cluster HA for SAP インスタンスを作成します。
Sun Cluster HA for SAP データサービスのインスタンスの作成、編集、削除には、hadsconfig(1M) コマンドを使用します。構成パラメータについては、「Sun Cluster HA for SAP に対する構成パラメータ (Informix の SAP)」を参照してください。
このコマンドは、クラスタ内のすべてのノードが動作しているときに、1 つのノード上でだけ実行してください。
# hadsconfig |
Sun Cluster HA for SAP の制御下にある SAP を起動する前に、中央インスタンスを停止します。
# su - <sapsid>adm $ stopsap r3 |
Sun Cluster HA for SAP を起動する前に SAP の中央インスタンスが停止している必要があります。
Sun Cluster HA for SAP インスタンスを起動します。
# hareg -y sap |
Sun Cluster HA for SAP のスイッチオーバーをテストします。
For example:
# scadmin switch clustername phys-hahost2 CIlogicalhost |
(省略可能) テスト/開発システムにアプリケーションサーバーが存在する場合は、hasap_start_all_instances および hasap_stop_all_instances スクリプトをカスタマイズして、テストします。
詳細は、「Sun Cluster HA for SAP の構成上のガイドライン」を参照してください。Sun Cluster HA for SAP のスイッチオーバーをテストして、アプリケーションサーバーが起動したり、停止したりすることを確認してください。また、中央インスタンスの論理ホストがテスト/開発システムの物理ホストに切り替わると、テスト/開発システムが停止することを確認してください。
# scadmin switch clustername phys-hahost1 CIlogicalhost |
論理ホスト内でデータサービスの起動と停止の順番を指定したい場合、次は、「Oracle の SAP に対するデータサービスの依存関係の設定」を参照してください。Sun Cluster HA for SAP のスイッチオーバーに進んでください。
この節では、Sun Cluster HA for SAP データサービス用の構成ファイルを作成するときに hadsconfig(1M) コマンドに指定する情報について説明します。hadsconfig(1M) コマンドはテンプレートを使用して、構成ファイルを作成します。このテンプレートには、デフォルト値を持つパラメータや値が明示的に指定されたパラメータ、値が指定されていないパラメータが含まれています。 値が指定されていないパラメータに対しては、必ず値を指定する必要があります。
障害検証パラメータは特に、Sun Cluster HA for SAP の性能に影響することがあります。検証間隔値を小さくしすぎると (障害検証の回数の増加により)、システム性能が低下することがあり、その結果として、システムが単に遅くなっただけでも、誤ったテイクオーバーが発生したり、再起動が試みられたりすることがあります。
hadsconfig(1M) コマンドに下の表で説明しているパラメータを指定することによって、Sun Cluster HA for SAP を構成してください。
表 10-15 Sun Cluster HA for SAP に対する構成パラメータ (Informix の SAP)
インスタンス名 |
インスタンスの識別子として内部使用される名前タグ。Sun Cluster が生成するログメッセージでは、この名前タグが参照される。hadsconfig(1M) コマンドは、ここで指定された値の前にパッケージ名を付ける。この名前タグには <SAPSID> を使用できます。たとえば HA1 を指定すると、SUNWscsap_HA1 が生成される。 |
論理ホスト |
Sun Cluster HA for SAP のこのインスタンスにサービスを提供する論理ホスト名。中央インスタンス用の論理ホスト名を指定する。 |
検証間隔 |
障害検証を行う時間間隔 (秒単位)。デフォルトの間隔は 60 秒。 |
SAP ID |
SAP システム名か <SAPSID> |
中央インスタンス ID |
SAP システム番号か中央インスタンス ID。デフォルトは "00." である。 |
SAP 管理ログイン名 |
SAP の中央インスタンス管理アカウントにログインするときに Sun Cluster HA for SAP が使用する名前。この名前はすべての中央インスタンスとアプリケーションサーバーのホスト上に存在する必要がある。これが、<sapsid>adm である (例: "ha1adm.")。 |
データベース管理ログイン名 |
SAP データベースの管理者のアカウント。たとえば、SAP と Informix の組み合わせでは Informix。 |
データベース論理ホスト名 |
SAP が使用するデータベース用の論理ホスト名。構成によっては、中央インスタンス用の論理ホスト名と同じことがある。 |
データベースに関する警告の記録 |
"y" または "n" のいずれかを設定できる。"y" が設定されていて、Sun Cluster HA for SAP 検証機能が、検証サイクル中にデータベースに接続できないことを検出した場合は、データベースを利用できないことを示す警告メッセージが表示される。たとえば、データベースの論理ホストが保守モードになっていたり、データベースがクラスタ内の別のノードに移動されている最中の場合などである。"n" に設定した場合は、データベースが接続できない場合でもメッセージは表示されない。 |
中央インスタンスの起動再試行回数 |
1 以上の整数を指定する。デフォルト値は 10。これは、Sun Cluster HA for SAP が中央インスタンスの再起動を試みる回数である。また、この値は、Sun Cluster HA for SAP の障害モニターが猶予モードで検証を行う回数でもある。この回数を経過すると、障害モニターは通常の検証モードに移る。猶予モードでは、検証機能は、中央インスタンスがまだ動作していないことを検出した場合でも、再起動したり、中央インスタンスのフェイルオーバーを開始したりしない。猶予モードでは、障害モニターがすべての検証操作の状態を報告し、すべての検証操作が成功するか、指定された回数、再試行が行われるまで猶予モードを継続する。 |
中央インスタンスの起動再試行間隔 |
Sun Cluster HA for SAP が中央インスタンスの再起動を試みる時間間隔 (秒単位)。またこの値は、猶予モードのときに、検証が試みられる間、Sun Cluster HA for SAP 障害モニターが休眠する時間の長さ (秒単位) でもある。デフォルト値は 30。 |
中央インスタンス起動前の全インスタンス停止待ち時間 |
0 以上の整数を指定する。デフォルト値は 60。このパラメータは、中央インスタンスを起動する前に hasap_stop_all_instances スクリプトを実行する時間の長さ (秒単位) を示す。0 を設定した場合、hasap_stop_all_instances は、中央インスタンスの起動中にバックグラウンドで実行される。正の整数を設定した場合、hasap_stop_all_instances は、中央インスタンスを起動する前にフォアグラウンドでその長さの時間実行される。 |
フォアグラウンドでの全インスタンスの停止でエラーが返された場合の中央インスタンスの起動許可 Error |
このフラグには、"y" または "n" を設定する。デフォルト値は n。この値は、hasap_stop_all_instances スクリプトによって終了コードとしてゼロ以外が返された場合、あるいは「中央インスタンス起動前の全インスタンス停止待ち時間」パラメータで指定した時間内に hasap_stop_all_instances スクリプトが終了しなかった場合に中央インスタンスを起動するかどうかを決定する。このフラグに "n" を設定していて、「中央インスタンス起動前の全インスタンス停止待ち時間」の値が 0 より大きく、かつ hasap_stop_all_instances スクリプトがその設定時間内に終了しないか、あるいは hasap_stop_all_instances スクリプトによって終了コードとしてゼロ以外が返された場合、中央インスタンスは起動されず、障害モニターは他の構成パラメータに基づいてそのエラーに対処する。このフラグに"y"を設定した場合は、hasap_stop_all_instances によってエラーコードが返されたかどうか、また hasap_stop_all_instances が設定時間内に終了したかどうかに関係なく、中央インスタンスが起動される。 |
ローカルノード上の中央インスタンス再起動回数 |
0 以上の整数を指定する。デフォルト値は 1。この値は、障害検出後にローカルノード上で SAP の中央インスタンスを再起動する回数を示す。この再起動回数に達すると、Sun Cluster HA for SAP はフェイルオーバー要求を発行するか (「中央インスタンスのフェイルオーバーの許可」パラメータで許可されている場合)、障害モニターによって検出された障害に対処しない。 |
再起動回数をリセットするまでの検証成功回数 |
0 以上の整数を指定する。デフォルト値は 60。正の整数を指定した場合、その指定回数連続して検証に成功すると、ローカルノード上のそれまでの再起動回数は 0 にリセットされる。たとえば、「ローカルノード上の中央インスタンス再起動回数」パラメータの値が 1 で、このパラメータの値が 60 の場合は、最初の障害が発生した後、検証機能がローカルノード上の中央インスタンスの再起動を試みる。この再起動が成功すると、60 回連続して検証が成功した後、再起動回数は 0 にリセットされ、別の障害を検出した場合に検証機能が新たに再起動を行えるようにする。このパラメータに 0 を指定した場合、再起動回数がリセットされることはなく、このことは、「ローカルノード上の中央インスタンス再起動回数」パラメータに設定された再起動回数が、フェイルオーバーする前にローカルノード上で行われる絶対再起動回数であることを意味する。 |
中央インスタンスのフェイルオーバーの許可 |
"y" または "n" のいずれかを設定できる。デフォルト値は y。このフラグに "y" が設定されている場合は、「ローカルノード上の中央インスタンス再起動回数」の再起動回数に達した後、Sun Cluster HA for SAP が監視対象の SAP インスタンスでエラーを検出すると、そのインスタンスの論理ホストを別のクラスタノードに移動する要求が発行される。このフラグに "n" を設定した場合は、ローカルの再起動がすべて行われた後、エラーが検出されても、Sun Cluster HA for SAP はこの要求を発行しない。この場合、中央インスタンスは障害状態のままになり、検証機能は終了する。 |
hasap_dbms による依存関係の設定が必要になるのは、同じ論理ホスト内のデータサービスの起動および停止順序を指定する場合だけです。異なる複数の論理ホスト上に構成されたデータサービスの依存関係を設定することはできません。
Sun Cluster HA for SAP と同じ論理ホスト上に Sun Cluster HA for Oracle または Sun Cluster HA for NFS を構成している場合は、そのデータサービスに対する Sun Cluster HA for SAP の依存関係を設定してください。このような依存関係は、hasap_dbms コマンドを使用して設定したり、削除したりすることができます。依存関係は、サービスの起動および停止順序に影響します。Sun Cluster HA for Oracle あるいは Sun Cluster HA for NFS は、常に、Sun Cluster HA for SAP を起動する前に起動します。同様に、Sun Cluster HA for SAP は、他のデータサービスを停止する前に停止します。
Sun Cluster HA for SAP と同じ論理ホスト上に Sun Cluster HA for Informix または Sun Cluster HA for NFS を構成していない場合は、hasap_dbms コマンドを使用しないでください。
データサービスの依存関係を設定するには、後述する hasap_dbms コマンドの 1 つを使用します。
hasap_dbms コマンドは、Sun Cluster HA for SAP が登録されていて、オフ状態のときにだけ使用できます。このコマンドは、1 つのノード (クラスタのメンバーになっているノード) 上でのみ実行してください。詳細は、hasap_dbms(1M) のマニュアルページを参照してください。
CCD に行を追加できない、あるいは CCD を更新できないことを示すことを示すエラーが hasap_dbms(1M) コマンドから返された場合は、その原因として、別のクラスタユーティリティも CCD を更新しようとしていることが考えられます。このエラーが発生した場合は、正しく実行されるまで hasap_dbms(1M) を再実行してください。hasap_dbms(1M) コマンドが正しく実行されたら、hareg -q sap コマンドを実行することによって、更新された CCD に必要な行がすべて含まれていることを確認してください。hareg(1M) コマンドからエラーが返された場合は、まず、hasap_dbms -f コマンドを実行することによって、元のメソッドのタイムアウト値を復元してください。次に、hasap_dbms -r コマンドを実行することによって、デフォルトの依存関係を復元してください。両方のコマンドが正常終了したら、元の hasap_dbms(1M) コマンドを再実行して、新しい依存関係とメソッドのタイムアウト値を設定します。詳細は、hasap_dbms(1M) のマニュアルページを参照してください。
次のコマンドの 1 つを使用して、データサービスの依存関係を設定します。
同じ論理ホスト上で Sun Cluster HA for NFS と Sun Cluster HA for SAP だけを使用している場合は、次のコマンドを使用します。
# /opt/SUNWcluster/ha/sap/hasap_dbms -d nfs |
同じ論理ホスト上で Sun Cluster HA for Informix と Sun Cluster HA for Informix
# /opt/SUNWcluster/ha/sap/hasap_dbms -d informix |
同じ論理ホスト上で Sun Cluster HA for Informix と Sun Cluster HA for NFS、Sun Cluster HA for SAP を使用している場合は、次のコマンドを使用します。
# /opt/SUNWcluster/ha/sap/hasap_dbms -d informix,nfs |
次のコマンドを使用して、Sun Cluster HA for SAP に設定した依存関係を確認します。
# hareg -q sap -D |
Sun Cluster HA for SAP に対して設定した依存関係は、hasap_dbms -r コマンドを使用して削除できます。このコマンドを実行すると、Sun Cluster HA for SAP に対して設定されているすべての依存関係が削除されます。
hasap_dbms コマンドは、Sun Cluster HA for SAP が登録されていて、オフ状態のときにだけ使用できます。このコマンドは、1 つのノード (クラスタのメンバーになっているノード) 上でのみ実行してください。詳細は、hasap_dbms(1M) のマニュアルページを参照してください。
CCD に行を追加できない、あるいは CCD を更新できないことを示すエラーが hasap_dbms(1M) コマンドから戻された場合、別のクラスタユーティリティがすでに CCD を更新しようとしていることが考えられます。このエラーが発生した場合は、正しく動作するまで hasap_dbms(1M) を実行します。hasap_dbms(1M) コマンドが正しく動作したら、hareg -q sap コマンドを実行して、必要なすべての行が結果の CCD に含まれていることを確認します。hareg(1M) コマンドからエラーが戻された場合、まず、hasap_dbms -f コマンドを実行して、元のメソッドのタイムアウト値を復元します。次に、hasap_dbms -r コマンドを実行して、デフォルトの依存関係を復元します。2 つのコマンドが両方とも正常に終了したら、オリジナルの hasap_dbms(1M) コマンドをもう一度実行して、新しい依存関係とメソッドのタイムアウト値を構成します。詳細は、hasap_dbms(1M) のマニュアルページを参照してください。