WebSphere Application Server V5.1 Edge Components V5.1 NAT Method
by user
Comments
Transcript
WebSphere Application Server V5.1 Edge Components V5.1 NAT Method
WebSphere Application Server V5.1 Edge Components V5.1 導入/構成ガイド NAT Method による構成 - HP-UX Ver. 1.0 2004 年 6 月 日本アイ・ビー・エム株式会社 ソフトウェア事業部 目次 はじめに ............................................................................................................................................ 3 HP-UX 版 Edge Components V5.1 のための要件 ......................................................................... 3 2.1 ハードウェア要件 ............................................................................................................................ 3 2.2 ソフトウェア要件.............................................................................................................................. 3 3. Edge Components V5.1 のインストール........................................................................................... 3 3.1 インストールの準備......................................................................................................................... 3 3.2 Java 環境のインストール ................................................................................................................ 3 3.3 Edge Components のインストール................................................................................................. 3 4. Load Balancer の構成...................................................................................................................... 3 4.1 プライマリー機の構成 ..................................................................................................................... 3 4.2 バックアップ機の構成...................................................................................................................... 3 4.3 ハイ・アベイラビリティー(高可用性)構成 ......................................................................................... 3 1. 2. 2/15 1. はじめに この文書は、HP-UX 11iv1 上で、WebSphere Application Server Network Deployment V5.1 に同梱 されている Edge Components V5.1 の Load Balancer をインストールし、稼動確認を行うまでの最少 の手順を示したものです。また、今回はハイ・アベイラビリティー(高可用性)構成を前提としています。 詳細につきましては、以下 URL のインフォセンターをご覧ください。 http://www-306.ibm.com/software/webservers/appserv/doc/v51/ec/infocenter-jp/index.html 当資料では、NAT Method による構成方法を記述しております。MAC Method、CBR Method による 構成は別途資料をご覧ください。 この文書はできる限り正確を期して作成しておりますが、製品の稼動を保証するものではありません。 IBM からの正式な技術サポートは、お客様との契約に基づいてご提供いたします。 3/15 2. HP-UX 版 Edge Components V5.1 のための要件 2.1 ハードウェア要件 −PA-RISC 1.1 および PA-RISC 2.0 アーキテクチャー・マシン −以下のいずれかのネットワーク・インターフェース・カード (NIC) z 10Mb イーサネット z 100Mb イーサネット z 1Gb イーサネット z マルチポート・イーサネット NIC (モード 1 のみサポート) −インストールのための 50 MB のディスク・スペース+ログ用の空きディスク・スペース 2.2 ソフトウェア要件 −以下の HP-UX バージョン z HP-UX 11iv1 (32 ビット・モードまたは 64 ビット・モード) z Quality Pack of June 2003 (GOLDQPK11i) 以降の最新バージョン ¾ 最新の Quality Pack については、HP Support Plus Web サイト http://www.software.hp.com/SUPPORT_PLUS/qpk.html を参照のこと z JAVA 用のパッチ PHCO_29109 −以下のいずれかの Java 2 Runtime Environment, Standard Edition バーション 1.4.1.x z HP 32-bit JDK 141_05 z 製品 CD-ROM の 32-bit JDK 141_05 なお、製品の最新の稼動要件につきましては、 http://www.ibm.com/software/webservers/appserv/doc/latest/prereq.html でご確認ください。 4/15 3. Edge Components V5.1 のインストール 3.1 インストールの準備 root 権限をもつユーザーでログインします。また、旧バージョンの製品はアンインストールされていなけ なりません。アンインストールについては、インフォセンターをご覧ください。 3.2 Java 環境のインストール HP 32-bit J2SDK をインストールしている場合は後半の追加手順をご確認ください。 1. 製品 CD-ROM の java ディレクトリーを任意の場所にコピーします。 今回は /opt ディレクトリーの下にコピーします。コピー後のディレクトリーは /opt/java です。 2. /etc/PATH ファイルに /opt/java/jre/bin を追加します。古いバージョンの Java の記述があれば、 削除します。 編集したファイルを保存した後、PATH の変更を反映させるため、ログインしなおします。 /etc/PATH ファイルの変更例 /usr/bin:/usr/sbin:/usr/bin/X11:/sbin:/opt/java/jre/bin 3. コマンド echo $PATH を実行してパスが正常に追加されたことを確認します。 また、コマンド java -fullversion を実行して以下のようなメッセージが表示されることを確認します。 # echo $PATH /usr/bin:/usr/sbin:/usr/bin/X11:/sbin:/opt/java/jre/bin # java ‐fullversion java full version "1.4.1.05-030910-02:49-PA_RISC2.0" 製品 CD-ROM ではなく、新たに HP 32-bit J2SDK を使う場合は http://www.hp.com/go/java をご参照ください。 追加手順 : max_thread_proc カーネル・パラメーターの設定 一部の HP-UX 11i インストールは、各プロセスで 64 のスレッドのみを許可するようにあらかじめ構成 されています。これより多くのスレッドが必要になる Load Balancer 構成では、Java メモリー不足 / ス レッド・エラーが発生する可能性があります。HP-UX の場合、プロセスあたりのスレッド数は 256 以上 に 設 定 す る こ と を お 勧 め し ま す 。 こ の 値 を 増 や す に は 、 "sam" ユ ー テ ィ リ テ ィ ー を 使 用 し て max_thread_proc カーネル・パラメーターを設定します。大量に使用することが予想される場合、 max_thread_proc を 256 以上にします。 5/15 max_thread_proc を増やすには、以下のようにします。 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. コマンド行に、sam と入力します。 「カーネル構成」>「構成可能パラメーター」を選択します。 スクロール・バーを使用して「max_thread_proc」を選択します。 スペース・バーを押して「max_thread_proc」を強調表示します。 Tab を一度押してから「アクション」が選択されるまで右矢印キーを押します。 Enter (キー) を押して「アクション」メニューを表示し、M を押して「構成可能パラメーターの変 更」を選択します。(このオプションが見つからない場合は、「max_thread_proc」を強調表示しま す。) 「式 / 値」フィールドが選択されるまで Tab を押します。 256 以上の値を入力します。 「OK」をクリックします。 Tab を一度押してから「アクション」を選択します。 「新規カーネルの処理」の K を押します。 「はい」を選択します。 システムをリブートします。 3.3 Edge Components のインストール 1. 製品 CD-ROM をマウントします。 # mkdir /cdrom (ディレクトリー作成済みのときは不要) # ioscan -fnC disk (ドライブのデバイスファイルの検索) # pfs_mountd& # pfsd& # pfs_mount -x unix device_file /cdrom (device_file はドライブのデバイスファイル名) 例 # pfs_mount -x unix /dev/dsk/c3t2d0 /cdrom 2. インストール・コマンド swinstall –s source package_name を以下のパッケージに対し、それぞれ 実行します。source はパッケージの入るディレクトリーであり、package_name はパッケージの名 前です。 z ibmlb.base - LB Base z ibmlb.admin - LB Administration z ibmlb.lic - LB License z ibmlb.disp - LB Dispatcher z ibmlb.ms - Metric Server (当ガイドでは使用しません) z ibmlb.doc - LB Documentation z ibmlb.nlv-ja_JP - LB Documentation (ja_JP.SJIS) 6/15 ibmlb.base の場合 # swinstall -s /cdrom/lb ibmlb.base ======= 2004 年 06 月 22 日 11 時 07 分 09 秒 JST BEGIN swinstall SESSION (非対話処理で実行) (jobid=hra005-0029) * ユーザー "root@hra005" に対してセッションが開始されました。 * Selection を開始します。 * "hra005:/" に対する Target connection は成功しました。 * "hra005:/ooe/edge/temp" に対する Source connection は成功しました。 * パス: /cdrom/lb * Targets: hra005:/ * ソフトウェア選択情報: ibmlb.base,r=5.1 * Selection succeeded * Analysis and Execution を開始します。 * セッションの選択情報はファイル "/.sw/sessions/swinstall.last" に保存されました。 * "hra005:/" に対する The analysis phase は成功しました。 * "hra005:/" に対する The execution phase は成功しました。 * Analysis and Execution succeeded NOTE: "swjob -a log hra005-0029 @ hra005:/" という指定でコマンドを実行すれば、エージェントのログファイル の詳細情報を見ることができます。 ======= 2004 年 06 月 22 日 11 時 07 分 22 秒 JST END swinstall SESSION (非対話処理で実行) (jobid=hra005-0029) # 3. 製品 CD-ROM をアンマウントします。 # pfs_umount /cdrom 4. コマンド swlist –l fileset ibmlb を入力して製品がインストールされたことを検査します。 # # # # # # # swlist -l fileset ibmlb 初期化中... ターゲット "hra005" にコンタクトしています... ターゲット: hra005:/ ibmlb ibmlb.admin ibmlb.base ibmlb.disp ibmlb.doc ibmlb.lic ibmlb.ms ibmlb.nlv-ja_JP 5.1 Load Balancer The Load Balancer administration package. The Load Balancer Base package. The dispatcher package. The Load Balancer documentation package. The Load Balancer license package. The Load Balancer Metric Server package. The LB ja_JP Language package. # 7/15 4. Load Balancer の構成 NAT 転送メソッドを使用すると、異なるセグメント上の Web サーバーに対してもディスパッチが可能です。ま た、Dispatcher が受け取るポートとサーバーが受け取るポートを異なるものに指定してマッピングさせること が可能です。コマンドによる構成と GUI ツールによる構成方法がありますが、当資料では、下記サンプル構 成を想定して、コマンドを記述したスクリプトによる構成手順を記述しています。GUI ツールによる構成は Windows 版の構成ガイドを参照ください。 サブネットマスク Load Balancer1 Primary (HP-UX) Load Balancer2 Backup (HP-UX) クラスター・アドレス リターン・アドレス クライアント・ゲートウェイ/ルーター・アドレス サーバー#1 (Windows 2000) サーバー#2 (Windows 2000) 255.255.255.0 172.16.236.5 172.16.236.6 172.16.236.151 172.16.236.161 172.16.236.250 172.16.235.101 172.16.235.102 Load Balancer1 Primary 172.16.236.5 172.16.236.151 as cluster address 172.16.236.161 as return address Server #1 172.16.235.101 Client Client Gateway Address/ Router Address 172.16.236.250 Server #2 172.16.235.102 Load Balancer2 Backup 172.16.236.6 ※ MAC Method では各 Web サーバーにループバック・アダプターの設定が必要ですが、CBR/NAT Method ではリターン・アドレスを使用するため、ループバック・アダプターの設定は必要ありません。ループ バック・アダプターの設定が残っているとうまくディスパッチされませんのでご注意ください。 8/15 4.1 プライマリー機の構成 以下の手順でプライマリー機側の設定を行います。 1. Dispatcher サービスの起動 # dsserver ※ サービス起動後 lbadmin とコマンドを打つと GUI ツールが立ち上がります。今回は GUI ツ ールを使いません。 2. Executor の開始 # dscontrol executor start 3. Client Gateway の設定 # dscontrol executor set clientgateway <Client Gateway のアドレス> # dscontrol executor set clientgateway 172.16.236.250 4. Cluster の追加 # dscontrol cluster add <クラスター・アドレス> primaryhost <Dispatcher のアドレス> # dscontrol cluster add 172.16.236.151 primaryhost 172.16.236.5 ※ バックアップ機では primaryhost にプライマリー機のアドレスを指定します。 5. クラスター割合の設定 # dscontrol cluster set <クラスター・アドレス> proportions <active new port system> # dscontrol cluster set 172.16.236.151 proportions 45 45 10 0 ※ Manager が重みを計算する根拠となる4つのパラメーターの意味については、マニュアル 「Load Balancer 管理ガイド」の「第 7 部 Load Balancer 機能と拡張フィーチャー」→「第 20 章 Dispatcher、CBR、および Site Selector のための Manager、Advisor、および Metric Server 機 能」→「Load Balancer によって提供されるロード・バランシングの最適化」→「状況情報に与えられ る重要性の割合」をご覧ください。 6. Port の追加 # dscontrol port add <クラスター・アドレス>:<ポート> method nat # dscontrol port add 172.16.236.151:80 method nat 7. Server の追加 各サーバーを追加します。 # dscontrol server add <クラスター・アドレス>:<マップ・ポート>:<サーバーアドレス> router <ルー ター・アドレス> returnaddress <リターン・アドレス> # dscontrol server add 172.16.236.151:80:172.16.235.101 router 172.16.236.250 returnaddress 172.16.236.161 # dscontrol server add 172.16.236.151:80:172.16.235.102 router 172.16.236.250 returnaddress 172.16.236.161 ※ マップ・ポート・・・クライアントからの要求ポート(Dispatcher が受け取るポート)とサーバーで受 け取るポートを変更したい場合に指定します。マップ・ポートを使用して、複数のサーバー・デーモン を実行しているサーバーに対してロード・バランシングができます。 ※ ルーター・アドレス・・・リモート・サーバーへのルーター・アドレスを指定します。 ※ リターン・アドレス・・・Dispatcher はリターン・アドレスを使用してサーバーにロード・バランスを 9/15 行います。サーバーから Dispatcher への戻りもリターン・アドレスを使用します。クラスター・アドレ スと同様、実アドレスを指定します。リターン・アドレスは、サーバーを除去してもう一度追加しない限 り変更できません。リターン・アドレスは、クラスター、サーバー、または NFA アドレスと同じにはで きません。 8. (HA 構成でない場合) goIdle スクリプトの作成 ※ 今回のように High Availability 構成をとる場合には、このスクリプトは必要ありません。 クラスター・アドレスとリターン・アドレスを NIC の Alias として追加するため、「4.3.3 スクリプトファ イ ル の 作 成 」 に あ る goActive ス ク リ プ ト と 同 じ 内 容 で goIdle ス ク リ プ ト を 作 成 し て 、 /opt/ibm/edge/lb/servers/bin に置きます。 9. Manager の開始 # dscontrol manager start 10. Advisor の開始 # dscontrol advisor start <advisor 名> <クラスター・アドレス>:<ポート> # dscontrol advisor start http 172.16.236.151:80 11. サーバー状況の確認 # dscontrol manager report 12. 構成の保存 # dscontrol file save <ファイル名> # dscontrol file save nat.cfg ※ 構成ファイルは /opt/ibm/edge/lb/servers/configurations/dispatcher に保存されます。 ※ 保存したファイルは次回 dsserver 起動後 # dscontrol file newload <ファイル名> (# dscontrol file newload nat.cfg) でロードすることができます。 4.2 バックアップ機の構成 プライマリー機と同様の手順でもう一方の Dispatcher の構成を行います。このとき、次の点に注意して ください。 ※ バックアップ機では Cluster の primaryhost にプライマリー機のアドレスを指定します。この指定を しないと、2 台の Dispatcher で正しく同期をとることができません。(2 台の Dispatcher マシンで primaryhost が一致していないと、ハイ・アベイラビリティー構成にした際に同期がとれません。) 10/15 4.3 ハイ・アベイラビリティー(高可用性)構成 ※ プライマリー機とバックアップ機の OS は同一にする必要があります。 ※ プライマリー機とバックアップ機は同一サブネット上におく必要があります。 ハイ・アベイラビリティー(高可用性)構成では、2 台の Dispatcher マシンを使用し、プライマリー機がす べてのクライアント・トラフィックに対するロード・バランシングを実行します。バックアップ機はプライマリー 機の状態を監視し、プライマリー機に障害が発生すると、ロード・バランスタスクを引き継ぎます。また、相 互ハイ・アベイラビリティー構成では、2 つの Dispatcher がそれぞれ 1 組以上のクラスターにロード・バ ランシングを行い、交互にバックアップを行います。ハイ・アベイラビリティー構成の詳細については、マニ ュアル「Load Balancer 管理ガイド」の「第 2 部 Dispatcher コンポーネント」の「第 6 章 Dispatcher コ ンポーネントの計画」をご参照ください。 4.3.1 プライマリー機の構成 High Availability 構成をとるために以下のコマンドを使用します。 # dscontrol highavailability heartbeat add <Primary 機のアドレス> <Backup 機のアドレス> # dscontrol highavailability heartbeat add 172.16.236.5 172.16.236.6 # dscontrol highavailability backup add <役割> <リカバリー・ストラテジー> <ポート> # dscontrol highavailability backup add primary auto 34756 ※ リカバリー・ストラテジーは「auto」と「manual」があります。「auto」はプライマリー機が回復すると自 動的にプライマリー機にロード・バランシングのタスクがフェールバックされます。一方「manual」の場合 は、プライマリー機に手動で戻さない限り、プライマリー機が回復してもバックアップ機がロード・バランシ ングを続けます。 ※ 役割の「both」は、クラスターが複数ある場合、これを選択することで相互ハイ・アベイラビリティー (マルチクラスタリング)機能を使うことができます。 ここまでの構成が終わったら構成をファイルに保存します。 既に同じ構成ファイルが存在している場合は、以下のように force オプションを付けます。 # dscontrol file save <ファイル名> force # dscontrol file save nat.cfg force 11/15 プライマリー機 構成ファイル nat.cfg の内容 dscontrol set loglevel 1 dscontrol executor start dscontrol executor set clientgateway 172.16.236.250 dscontrol highavailability heartbeat add 172.16.236.5 172.16.236.6 dscontrol highavailability backup add primary=172.16.236.5 auto 34756 dscontrol cluster add 172.16.236.151 address 172.16.236.151 primaryhost 172.16.236.5 dscontrol cluster set 172.16.236.151 proportions 45 45 10 0 dscontrol port add 172.16.236.151:80 method nat reset no dscontrol port set 172.16.236.151:80 porttype tcp dscontrol server add 172.16.236.151:80:172.16.235.102 address 172.16.235.102 router 172.16.236.250 returnaddress 172.16.236.161 dscontrol server set 172.16.236.151:80:172.16.235.102 weight 9 dscontrol server add 172.16.236.151:80:172.16.235.101 address 172.16.235.101 router 172.16.236.250 returnaddress 172.16.236.161 dscontrol manager start manager.log 10004 dscontrol advisor start Http 172.16.236.151:80 Http_172.16.236.151_80.log 4.3.2 バックアップ機の構成 High Availability 構成をとるために以下のコマンドを使用します。 # dscontrol highavailability heartbeat add <Backup 機のアドレス> <Primary 機のアドレス> # dscontrol highavailability heartbeat add 172.16.236.6 172.16.236.5 # dscontrol highavailability backup add <役割> <リカバリー・ストラテジー> <ポート> # dscontrol highavailability backup add backup auto 34756 ここまでの構成が終わったら構成をファイルに保存します。 既に同じ構成ファイルが存在している場合は、以下のように force オプションを付けます。 # dscontrol file save <ファイル名> force # dscontrol file save nat.cfg force 12/15 バックアップ機 構成ファイル nat.cfg の内容 dscontrol set loglevel 1 dscontrol executor start dscontrol executor set clientgateway 172.16.236.250 dscontrol highavailability heartbeat add 172.16.236.6 172.16.236.5 dscontrol highavailability backup add backup auto 34756 dscontrol cluster add 172.16.236.151 address 172.16.236.151 primaryhost 172.16.236.5 dscontrol cluster set 172.16.236.151 proportions 45 45 10 0 dscontrol port add 172.16.236.151:80 method nat reset no dscontrol port set 172.16.236.151:80 porttype tcp dscontrol server add 172.16.236.151:80:172.16.235.102 address 172.16.235.102 router 172.16.236.250 returnaddress 172.16.236.161 dscontrol server add 172.16.236.151:80:172.16.235.101 address 172.16.235.101 router 172.16.236.250 returnaddress 172.16.236.161 dscontrol server set 172.16.236.151:80:172.16.235.101 weight 9 dscontrol manager start manager.log 10004 dscontrol advisor start Http 172.16.236.151:80 Http_172.16.236.151_80.log 4.3.3 スクリプトファイルの作成 ハイ・アベイラビリティー構成をとる場合は、3 つのスクリプトファイルを用意する必要があります。2 台の Dispatcher でこれらのスクリプトを実行することで、クラスターのアドレスを自分のネットワークインターフ ェースの別名として追加/削除を行います。これらのサンプルは、/opt/ibm/edge/lb/servers/samples 以 下にあります。 z goActive.sample z goInOp.sample z goStandby.sample これら 3 つのファイルをコピーして、/opt/ibm/edge/lb/servers/bin に置いて、それぞれ、sample 拡張子 をはずし、編集します。スクリプトファイルはプライマリー機とバックアップ機とで同じものを使います。 goActive スクリプト:Standby→Active 状態に切り替わったときに実行される #!/bin/ksh CLUSTER=172.16.236.151 RETURN=172.16.236.161 INTERFACE1=lan0:1 INTERFACE2=lan0:2 LOOPBACK=lo0:1 NETMASK=255.255.255.0 echo “Removing loopback alias(es)” ifconfig $LOOPBACK down echo “Adding device alias(es)” ifconfig $INTERFACE1 $CLUSTER netmask $NETMASK up echo “Adding device alias(es)” ifconfig $INTERFACE2 $RETURN netmask $NETMASK up 13/15 goInOp スクリプト:executor が停止されるときに実行される #!/bin/ksh CLUSTER=172.16.236.151 RETURN=172.16.236.161 INTERFACE1=lan0:1 INTERFACE2=lan0:2 LOOPBACK=lo0:1 echo “Removing loopback alias(es)” ifconfig $LOOPBACK down echo “Removing device(s)” ifconfig $INTERFACE1 down echo “Removing device(s)” ifconfig $INTERFACE2 down goStandby スクリプト:Standby 状態になるときに実行される #!/bin/ksh CLUSTER=172.16.236.151 RETURN=172.16.236.161 INTERFACE1=lan0:1 INTERFACE2=lan0:2 LOOPBACK=lo0:1 NETMASK=255.255.255.0 echo “Deleting the device alias(es)” ifconfig $INTERFACE1 down echo “Deleting the device alias(es)” ifconfig $INTERFACE2 down echo “Adding loopback alias(es)” ifconfig $LOOPBACK $CLUSTER netmask $NETMASK up 4.3.4 同期の確認 それぞれのマシンで HA 構成の同期がとれているかを確認します。 # dscontrol highavailability status それぞれ「2 次状態」が「同期化済み」で、「状態」がプライマリー機は「活動中」、バックアップ機は「待機」 となっていれば正常です。 14/15 プライマリー機の状況 # dscontrol highavailability status 高可用性状況: ----------------------役割 ................... プライマリー リカバリー・ストラテジー .. 自動 状態 ................... 活動中 2 次状態 ............... 同期化済み プライマリー・ホスト .... 172.16.236.5 ポート ................. 34756 優先ターゲット ......... 172.16.236.6 Heartbeat 状況: --------------カウント ............. 1 送信元/宛先 .......... 172.16.236.5/172.16.236.6 到達可能 (reachability) 状況: ----------------------------数 ................... 0 # バックアップ機の状況 # dscontrol highavailability status 高可用性状況: ----------------------役割 ................... バックアップ リカバリー・ストラテジー .. 自動 状態 ................... 待機 2 次状態 ............... 同期化済み プライマリー・ホスト .... 172.16.236.5 ポート ................. 34756 優先ターゲット ......... 172.16.236.5 Heartbeat 状況: --------------カウント ............. 1 送信元/宛先 .......... 172.16.236.6/172.16.236.5 到達可能 (reachability) 状況: ----------------------------数 ................... 0 # ディスパッチが正常に行われることを確認してください。 15/15