はじめに
記事タイトルの通りです。
ISAMを経由してCognos Analyticsを使用する環境で、ジャンクション作成時に注意するポイントはこちらにまとまっていますが、
<参考>
Query StudioやEvent Studioのようなレガシーツールを使用する場合は追加でもう一点考慮が必要で、透過ジャンクションにする必要があります。
ISAM経由のCognos Analyticsでレガシーツールを使用するために必要な設定
ISAM経由のCognos Analytics環境においてレガシーツールを使用するために必要な対応は下記2点になります。
- Cognos Analyticsへのジャンクションを透過ジャンクションで作成する
- ジャンクション名を含めたURLでWebサーバーに正しくアクセスできる構成にする
/<junction name>/<alias> /bi
1.に関して、ISAMのジャンクションを透過ジャンクションにする場合は、透過ジャンクションにするオプションを追加して保存することで変更が可能です。
標準ジャンクションを作成するとき同様、-j や -J のオプションは引き続き必要となります。
2.に関して、対応策としては2案考えられます。
案① ゲートウェイで指定しているエイリアス名をジャンクション名にする
案② ISAMで指定したジャンクション名を含んだ、エイリアスをゲートウェイで定義する
案①の場合、ISAMにアクセスする際のURLから変わってしまい影響範囲が大きそうなのでオススメはしません。
案②の場合、ゲートウェイ、Cognosレベルでの対応が可能で、実質対応するならこちらの案になるかなと思っております。
案②の具体的な対応としてはAliasで定義するエイリアス名にジャンクション名も追加して定義することになります。
(前) Alias /ibmcognos /opt/ibm/cognos/analytics/webcontent
(後) Alias /cogjunction/ibmcognos /opt/ibm/cognos/analytics/webcontent
ゲートウェイとしてIHS (IBM HTTP Server)を使用している環境では、httpd.conf、cognos.confのconfファイルでAliasの設定をしている箇所、URL Rewrite ruleの定義をしている箇所が修正対象になります。
また、Cognos ConfigurationのゲートウェイURIとゲートウェイ用Controller URIでしているエイリアス名も変更する必要があります。
発生する事象
この透過ジャンクションの設定をせず、標準ジャンクションを使用しているままでレガシーツールを使用すると「404 Not Found」ページが返されツールの起動が実行できない、という事象が発生します。
レガシーツールを使用した際のURLはと下記にようになるのですが、
http://<hostname>:<port>/<junction name>/<alias>/bi/v1/disp
ISAM、IHS、CognosでURL Rewriteが行われた結果、下記のようにジャンクション名が2回繰り返された形でアクセスする挙動となってしまうようです。
http://<hostname>:<port>/<junction name>/<junction name>/<alias>/bi
まとめ
透過ジャンクションの設定と、ゲートウェイのエイリアスの定義を修正することで、ISAM経由のCognos Analytics環境でもQuery StudioやEvent Studioのようなレガシーツールが使用可能になります。