AipoのTomcatとIISがARRで連携する環境へ、Aipoを移行する

Aipoの稼働端末が変更となり、AipoのTomcatIISを連携させる必要が出てきました。

AipoのTomcatIISを連携については、

のように、isapi_redirect.dllを使う方法がありました。

 
ただ、色々と手間っぽいので他の方法を探したところ、

のように、IISTomcatをApplication Request Routing(以下、ARR)で連携できそうでした。

 
そこで、IIS + ARRでAipoのTomcatと連携させた環境へ移行してみたので、メモを残しておきます。

 

環境

移行前
  • Windows7
  • Aipo7.0.2.0 & Tomcat
  • ポート80で動作
    • http://ホスト名/aipoで動作

 

移行後
  • Windows Server 2008 x64
  • IIS 7.0が稼働済
    • ポート80は使用済
  • 移行に伴い、以下が追加
    • Aipo 7.0.2.0
      • ポート81で動作 (http://ホスト名:81/aipo)
    • Web Platform Installer 5.0
      • ARRのインストール時の依存関係解決のために使用
    • ARR 3.0
      • URL書き換えを使い、http://ホスト名/aipoでもアクセス可能に設定

 
なお、移行に伴い、Aipoのバージョンを最新の8.1.1.0へとアップデートすることも考えました。

ただ、

より、今回はAipo7系のまま移行する方法を考えました。

 

移行先にAipoをセットアップ

ダウンロードファイル一覧 - グループウェア 「Aipo」 - OSDN より必要なファイルをダウンロード・インストールします。

今回はx64版の7.0.2.0が必要だったため、

  • aipo7020aja_win_x64.zipをダウンロード・解凍し、インストール
  • インストール先はC:\aipo\

を行いました。

あとは、http://ホスト名:81/aipo/へアクセスし、Aipoのログイン画面が表示されることを確認します。

 

ARRのインストール

IIS7.0にはARRがインストールされていなかったため、以下よりARRをインストールします。
Application Request Routing : The Official Microsoft IIS Site

Web Platform Installer(以下、WPI)がインストールされていない場合、WPIのインストールも求められます。

ARRは他と依存関係があり、そのあたりをうまく解決するのがWPIなため、WPI + ARRをインストールします。

 

ARRのセットアップ

まずはProxyを有効化します。

  • IISマネージャーを起動
  • ホームにあるApplication Request Routing Cacheをダブルクリック
  • 右の操作ペインより、Server Proxy Settings...を選択
  • 中央ペインのEnable proxyにチェックを入れ、右の操作ペインの適用をクリック
  • 「変更内容は正常に保存されました。」が右の操作ペインに表示されることを確認

 
続いて、Aipo接続のためポート80へアクセスした時にポート81のTomcatで動作させるため、URL書き換えの設定を行います。

  • ホームにあるURL書き換えをダブルクリック
  • 右の操作ペインより、規則の追加をクリック
  • 規則の追加画面で、受信規則の空の規則を選択し、OKボタンを押す

 
以下の内容を入力し、右の操作ペインの適用を押します(がデフォルトとは異なる部分)。

項目
名前 Aipo
要求されたURL パターンに一致する
使用 正規表現
大文字と小文字を区別しない ■チェックする
パターン (aipo.*)
アクションの種類 書き換え
URLの書き換え http://{HTTP_HOST}:81/{R:0}
クエリ文字列の追加 ■チェックする
後続の規則の処理を停止する □チェックしない

なお、HTTP_HOSTなどの規則の中で使える定義済変数は、以下に記載がありました。
URL Rewrite Module Configuration Reference : The Official Microsoft IIS Site

 
以上でIISやARRの設定は終了です。IISにサイトを追加する必要はありません。

あとはhttp://<ホスト名>/aipoにアクセスして、Aipoのログイン画面が表示されます。

 

移行作業

上記でTomcatIISが連携できたため、続いて移行作業を行います。

以下を参考にバックアップとリストアを行います。
バックアップ・修復方法(Windows版) - ドキュメント|無料グループウェア「アイポ」

 
旧端末でバックアップが終了すると、デフォルトでインストールした場合は、C:\aipo\dpl7020\backupの下にディレクトリ(年月日_回数)ができます。  
続いて、新端末のC:\aipo\dpl7020\backupディレクトリへ、必要なバックアップディレクトリをコピーします。

コピー完了後にAipoマネージャを再起動すると、コピーしたディレクトリが見えるため、選択してリストアします。

 
なお、同日に2回以上バックアップした場合、201601011154_01201601011155_02のようにディレクトリが複数存在する場合もあります。

ただ、中身を見てみると、

  • mail\
  • psml\
  • version.txt

があるものとないものがありました。

存在しないディレクトリを使ってリストアしてみたところ、

古いバージョンのバックアップデータのため、バックアップに失敗しました。

が表示され、リストアに失敗したため、上記のものが存在するディレクトリを使うのが良さそうです。

 
あとは、http://ホスト名/aipoへとアクセス・ログインし、データが復元されていることを確認します。

 

Aipoの設定ファイル書き換え

必要に応じてAipoの設定ファイルを書き換えます。

 

ユーザ一覧からログインできるようにする

Aipo7.0.2.0のデフォルトでは、ユーザ一覧が表示されません。

そのため、古いバージョンのようにユーザ一覧からログインする場合には、以下を参考に設定を行います。
ログイン画面の”ユーザー一覧から選択する|無料グループウェア「アイポ」

 
Aipo7.0.2.0では、C:\aipo\dpl7020\tomcat\webapps\aipo\WEB-INF\conf\JetspeedJResources.propertiesのファイルとなります。

222-223行目あたりにあるaction.login.enable.select.userlisttrueへと変更します。

# 変更前
# enable to select user list at login page
# action.login.enable.select.userlist=false

# 変更後:ユーザ一覧を表示する
# enable to select user list at login page
action.login.enable.select.userlist=true

 

休日カレンダーの変更

Aipoにはデフォルトで休日カレンダーが設定されています。

ただ、会社によっては営業日/休業日が異なるため、以下を参考に変更を行います。 【Aipo7】会社の創立記念日を祝日として登録したい|無料グループウェア「アイポ」

Aipo7.0.2.0では、C:\aipo\dpl7020\tomcat\webapps\aipo\WEB-INF\confディレクトリにある、以下の2ファイルとなります。

  • holidays_default.properties
    • デフォルトの休日カレンダー
    • ここから祝日データを削除することで、祝日を稼動日表示にできる
  • holidays_user.properties
    • ユーザ定義の休日カレンダー
    • 会社独自の休業日設定を行える

 
以上で移行作業は完了です。