Linda Hirsch著 iSeriesリソースを扱う場合、iSeries Access for Webによりブラウザーを使用できますが、多くの環境で複数のiSeriesサーバーへアクセスする必要があります。このとき単一サーバーでWebサービス環境を持っていれば、Webサービスを多数のサーバーへ波及させるときに生じる可能性があるコスト、パフォーマンス、管理上の問題に実に役立ちます。iSeries
Access for Webを単一のiSeriesサーバーにインストールおよび構成し、ネットワークの他のiSeriesサーバーへ接続するよう構成できます。本記事では、中央のiSeriesサーバーを使用して複数のiSeriesサーバーへのアクセスを許可するゲートウェイのような機能を提供することの可能性について探ってゆきます。
まず、iSeriesサーバーが1台のWebサービス環境について見てゆきましょう。図
1では、あるユーザーがiSeriesサーバーで時折リソースを必要とするWebブラウザー(ダイアグラムのTier 1)でアプリケーションを実行しています。ユーザーはインターネットまたはイントラネットでiSeriesにアクセスしている可能性があります。Webサービス環境(Tier
2)では、HTTPサーバー、Webアプリケーション・サーバー、およびWebアプリケーションが構成されています。HTTPサーバーは特定のTCP/IPポートのWeb要求をListenし、ブラウザーとWebアプリケーション・サーバー間でその要求の経路を定めます。Webアプリケーション・サーバーは、Webアプリケーションが動作するJava仮想マシン環境を実現しています。シナリオではWebアプリケーションであるiSeries
Access for WebがWebアプリケーション・サーバー内にインストールおよび配置されています。そのアプリケーションは、エンド・ユーザーがWebブラウザーから要求している特定の機能を提供します。WebアプリケーションはエンタープライズiSeriesサーバー(Tier
3)で必要なリソースにアクセスし要求を満たします。もちろん、これらのバックエンド・リソースをそれらに直接アクセスする可能性があるインターネット・クライアントから保護することが大切です。
図 2のモデルを使用したiSeries
Access for Webを構成するために、HTTPサーバー、Webアプリケーション・サーバー、およびiSeries Access for
Webがインストールおよび構成されているDMZにServerAが常駐していると考えてみましょう。2つのバックエンド・サーバーServerBとServerCは企業内ネットワークに存在します(図
3参照)。Webサービス環境をそれらのバックエンド・サーバーにインストールおよび構成せずに、iSeries Access for WebによりブラウザーからServerBおよびServerCにアクセスできます。ServerBおよびServerCの要件として、iSeries
Access for Webで必要なライセンスである2つのライセンス・プログラム5722-XH2 iSeries Access for Webと5722-XW1
iSeries Access Familyをインストールしておきます。ServerBおよびServerCにiSeries Access for
Webをインストールすることが、印刷およびプリンター出力機能で利用できるPDFサポートに必要ですが、ServerBおよびServerCでiSeries
Access for Webを構成する必要はありません。
Webサービス環境の構成
ServerAの最初のステップは、ServerBとServerCにHTTPサーバーおよびWebアプリケーション・サーバーを構成することです。IBM
Web Administration for iSeriesインターフェースを使用してHTTPサーバーとWebアプリケーション・サーバーを構成します。Web
Administration GUIは、他のサーバー・タイプの中でもHTTPサーバーとWebアプリケーション・サーバーをiSeriesでセットアップおよび管理するのに役立つウィザードを備えています。まず、OS/400コマンドSTRTCPSVR
*HTTP HTTPSVR(*ADMIN)を実行して、Web Administrationインターフェースを開始します。次に、ブラウザーでアドレスhttp://ServerA:2001を開き、GUIを開始します。ASF
Tomcat Webアプリケーション・サーバーを使用している場合は、まずHTTPサーバーを作成するウィザードを使用し、次にTomcatサーバーを作成する別のウィザードを使用します。WebSphere
Application Serverを使用している場合は、HTTPサーバーとWebSphere Application Server (WAS)インスタンスを作成するステップを組み合わせたウィザードを使用します。iSeries
Access for WebのHTTPサーバーとWebアプリケーション・サーバーの構成に関する詳細はibm.com/eserver/iseries/access/web/doc.htmlをご覧ください。Webアプリケーション・サーバーに対応した言語を選択してください。
ServerAの次のステップは、2つのWebアプリケーション・サーバーの各インスタンスでiSeries Access for Webを構成することです。Configure
iSeries Access for Web (CFGACCWEB2) CLコマンドを使用してiSeries Access for Webサーブレット構成情報を以下のWebアプリケーション・サーバーへ追加します。
IBM WebSphere Application Server (WAS) V5.0 for iSeries
IBM WAS - Express V5.0 for iSeries
Apache Software Foundation (ASF) Tomcat(IBM HTTP Server for iSeries
5722-DG1に同梱)
IBM WAS Advanced Edition for iSeries V4.0
IBM WAS Advanced Single Server Edition for iSeries V4.0
V5R3 iSeries Access for WebはV5R2 OS/400サーバーまたはV5R3 i5/OSサーバーにインストールします。V5R3
iSeries Access for Webがある場合は、新しいパラメーターがCFGAC CWEB2 CLまたはTarget Server
(TGTSVR)というスクリプト・コマンドに追加されています。TGTSVRコマンドはiSeries Access for Webの接続先となるiSeriesサーバーを指定します。TGTSVRの値は以下のとおりです。
*DEFAULT: iSeries Access for WebをiSeries Access for WebがインストールされたiSeriesサーバーへ接続し、そのサーバーからサーバー・データへアクセスします。
name: iSeries Access for WebにデータをアクセスさせたいiSeriesターゲット・サーバーの完全修飾ドメイン名を指定します。ターゲット・サーバーのTCP/IP構成情報にアクセスすることでドメイン名を判断できます。
例えば、ServerAでServerBに作成するWAS Express V5.1のインスタンスをiwaexp51bとします。iSeries
Access for Webでは、WAS Expressサーバーは構成するに当たり稼動していることが必要です。完全修飾ドメイン名はserverb.rch.ibm.comです。WAS
V5.1 Expressを使用しているため、スクリプト・コマンドを使用するでしょう。ServerAで以下のステップを実行します。
V5R2 iSeries Access for WebはV5R1サーバーおよびV5R2 OS/400サーバーにインストールしますが、前述のようにTarget
Server (TGTSVR)パラメーターがV5R3で追加されたため、V5R2 iSeries Access for Web CFGACCWEB2
CLまたはスクリプト・コマンドでは利用できません。V5R2ではpropertiesファイルを手動で変更する必要があります。ServerBとServerCに1セットずつ2台のHTTPサーバーと2つのWebアプリケーション・サーバー・インスタンスを構成する最初のステップは、前節のV5R3
iSeries Access for Webの記述と同様です。IBM Web Administration for iSeriesインターフェースを使用します。次に、CFGACCWEB2
CLまたはスクリプト・コマンドを使用して各ターゲット・サーバーにiSeries Access for Webを構成します。構成手順の詳細については、ibm.com/eserver/iseries/access/web/doc.htmlを参照してください。繰り返しますが、V5R2
iSeries Access for Webでは利用できないため、Target Serverパラメーターは使用しません。CFGACCWEB2コマンドを実行したら、以下をServerAのwebaccess.propertiesファイルへ追加します。
Webサービス環境の構成が完了したら、Webサーバーとバックエンド・サーバー間のファイアウォールをセットアップしてそれらのリソースを保護します(図
6)。このファイアウォールが確立すると、iSeries Access for WebはServerAで動作しており、ServerBおよびServerCにのみ接続しているためファイアウォールのホスト・サーバー・ポートを開くよう要求します。各種iSeries
Accessホスト・サーバーに必要なポートの情報については、 http://www-912.ibm.com/s_dir/slkbase.nsf/1ac66549a21402188625680b0002037e
/eb38cf0112b242d986256ee70057f551 ?OpenDocument&Highlight=0,349950912のInformation
APAR II12227を参照してください。図
6のダイアグラム例では、ServerBをターゲット・サーバーとして構成したWebサービス環境では、HTTPサーバーはServerBのポート5001をListenするよう構成されています。ServerCをターゲット・サーバーとして構成した環境では、HTTPサーバーはポート5002をListenするよう構成されています。したがって、iSeries
Access for Webは以下のURLを使用してWebブラウザーからアクセスされます。
ネットワークで2番目のiSeriesシステムを接続する別の方法として、iSeries Access for Web 5250セッションを実行し、Telnetを使用する方法があります。Telnetについてはおそらくご存知と思いますので、Telnetセッションを開始する方法をいくつか簡単に紹介します。
Start Session. iSeries Access for WebをインストールしたServerBに接続しており、ServerC上のデータをチェックしたいとします。iSeries
Access for Webの5250タブでStart sessionをクリックします。Serverフィールドのデフォルト値はTarget
Server (realm) パラメーターで指定した値になります。ネットワークで任意のiSeriesサーバーを指定できます。ネットワークで認識されているならばショート・ネームを使用したり、完全修飾ドメイン名を指定することもできます。図
8のようにServerフィールドにServerCを指定します。次に、ワークステーションIDなど他のパラメーターを指定できます。Start-Sessionボタンを押すと、ServerCに対してTelnetセッションが開始され、ServerCの5250サインオン画面が表示されます。5250タブでActive
sessionsをクリックすると、「telneted」されたサーバー名が表示されます(図
9)。
Configured Sessions. また、構成済みセッションを使用して別のiSeriesに接続できます。5250タブでConfigured
sessionsをクリックし、次にConfigure new sessionをクリックします。例ではセッション名としてServerDを指定し、完全修飾ドメイン名またはネットワークで認識されている場合はショート・ネームのいずれかアクセスしたいサーバーを入力します(図
10)。他のパラメーターを記入し、Saveボタンを押します。結果を図
11に示します。Administratorは、ユーザーがこのセッションに持っていると思われる機能を制限できる点に注意してください。例えば、Administratorはあるユーザー・グループにこのセッションの開始権限のみ与え、他のセッション機能を操作させないようにできます。Configured
sessions画面から5250セッションを開始するには、Startをクリックします。
Telnet command. アクティブなiSeries Access for Webの5250エミュレーション・セッションにいる間は、コマンド行でOS/400
Telnetコマンドを入力し別のシステムにリンクできます(図
12)。結果はコマンドで指定したシステムへのサインオン画面です。
説明したこれら3つのTelnet手法(Start session、Configured session、またはTelnetコマンドの使用)のいずれについても、新しいサーバーでいったん5250セッションに入れば、iSeries
Access for Web左側のナビゲーション・バー機能やリンクすべてが接続した元のシステムと関連付けられている点に注意してください。上記Configured
sessionsの例では、元のシステムはServerBです。例えば、Start sessionを使用してServerDへの5250エミュレーション・セッションを開始し、Print
folderタブをクリックすると、以前としてServerDではなくServerBのPrinters and printer outputを動作させていることになります。
ユーザー・アクセスの向上と管理問題の低減
複数の他のiSeriesサーバーへアクセスするため、iSeries Access for WebおよびDMZを使用して中央のiSeriesサーバーにゲートウェイの役割をさせるセットアップ方法についてお話し、またiSeries
Access for Webをインストールした単一のiSeriesから他のiSeriesサーバーへアクセスするためのTelnet 5250エミュレーション・オプションを簡単におさらいしました。iSeries
Access for WebとWeb環境を1台のサーバーにのみ構成していても、ライセンスの理由で他のバックエンド・サーバーにもiSeries
Access for Webをインストール(構成ではない)し、iSeries Access Familyもインストールする必要がある点を覚えて置いてください。1台のサーバーでiSeries
Access for Webを構成してこれらのうちいずれかの方法を使用することで、ネットワーク間でのWebサービスのメンテナンスを最小限に抑えつつ、ブラウザーから必要な機能へアクセスできるようになります。注文情報や構成マニュアル等iSeries
Access for Webの詳細については、当製品のWebサイトibm.com/eserver/iseries/access/webをご覧ください。
Linda Hirsch: IBMロチェスター研究所iSeries Access Developmentのソフトウェア・エンジニアリング・アドバイザー。Rochester研究所で開発された製品のプログラミングおよび技術面でのマーケティングを多方面から担当。現在はクライアント統合テクノロジーとiSeries
Access製品のサポートを担当。