本文へジャンプ

ソフトウェア > Lotus > Lotus Developer Domain > 製品別技術情報 > Lotus Enterprise Integrator > 

LDD Today

Lotus Enterprise Integrator 3.xからLotus Enterprise Integrator 6.xへの移行


Lotus Software
by Carol Eaton Software Engineer, IBM
Partner, DeJean & Clemens
レベル:中級者
原文の掲載:2004年5月10日

LDD Today の原文(US)

インデックス
LEI Migration Utility (移行ユーティリティー)
マイグレーションの準備
Migration Utilityの実行
一般的な移行エラーのトラブル・シューティング
まとめ
リソース

Lotus Enterprise Integrator (LEI) Migration Utilityは、LEI 3.xからLEI 6.xへの移行を流れに沿って支援するツールとして手軽なものです。この記事では、各自のLEIファイルを、このユーティリティーを使ってどのように移行していくかについて、よく起こりがちなトラブルの解決方法も含めて解説していきます。

LEI Migration Utilityはスタンド・アローンのJavaプログラムで、Lotus Enterprise Integrator (LEI) 6.0以降の製品に付属しており、LEI 3.xからLEI 6.xへの移行をサポートしています。このツールを使用すると、既存のLEIとDomino Enterprise Connection Services (DECS) のアクティビティーおよび接続文書が、LEI 3.xから新たにLEI 6.x Administratorへ移行されます。また、このツールはLEI Script Vaultに含まれているスクリプト(エージェント)についても、LEI 6.x Script Vaultへ更新され移行(転送)されます。LEI 6.xをインストールする際に、インストーラーの画面でマイグレーションのオプションを選択しておくと、文書も移行されます。この方法をとらない場合であっても、LEI 6.xをインストールした後ならいつでもrun_migrationを実行する。で移行を行うことができます。(通常、Lotus\Dominoのディレクトリーに入っています。)

Migration Utilityでは、LEI 3.xとLEI 6.xとの間で異なる設計内容についてもアイテム毎に処理を行います。例えば、テンプレートやスクリプトの文法などです。このツールはLEI 3.xで使用されていたアイテムをLEI 6.xに準拠したものへアップグレードするように設計されていますので、アップグレード後はすぐに利用することができます。複数のLEI 3.xのAdministratorについても、ひとつのLEI 6.x Administratorへまとめることができます。その際にはアクティビティーや接続文書が自動的に移動します。

[編集者注:]
- この記事では、読者は経験を積んだLEI管理者であることを前提としています。
- Migration Utilityは、LEI 3.x から LEI 7.x への直接のアップグレードには使用できません。しかし、LEI 3.x から LEI 6.x へのアップグレード後にMigration Utility を使用して移行すれば、次に、LEI 6.x から LEI 7.x へのアップグレード時に、Migration Utilityの使用せずに自動的に LEI 6.x から LEI 7.x の Administrator に移行が行えます。詳細な手順と解説は、IBM Lotus Enterprise Integrator for Domino (LEI) インストール・ガイドを参照してください。( Lotus Enterprise Integrator documentation (US)で公開されています。)


LEI Migration Utility (移行ユーティリティー)
これはDominoプログラム・ディレクトリーにインストールされているmigration.jarファイルに入っています。実行時に、migration.logというファイルを生成し、検証および移行されたアイテムに関する詳細情報を収集します。このログ・ファイルも同じDominoのプログラム・ディレクトリーに保存されます。ログには、転送されたアクティビティー接続文書、使われなくなったLotus Connectorを参照しているもの、重複しているもの/コピーされたもの、その他移行にあたって必要となる適切な情報が記録されます。以下はそのログの例です。

Migration Log: 04/10/2004 10:43:57 AM: Connection MyNotesConnection has been transferred
Migration Log: 04/10/2004 10:43:58 AM: Activity MyDirectTransferActivity has been transferred
Migration Log: 04/15/2004 12:23:04 PM: The Script Vault has been backed up to leivlt_2.nsf
Migration Log: 04/18/2004 10:44:02 AM: Script MyScript is a duplicate and was not migrated

Script Vaultsは移行されますが、LEI 3.x Script Vaultであったスクリプト・ライブラリーは移行されません。手動でスクリプト・ライブラリーをLEI 6.x Script Vaultへコピーして移行することはできますが、LEI 6.x で動作させる前に少しだけコードの変更する必要があります。各関数に入っているUselsx *lsxleiステートメントは、Uselsx *lsxlcへ変更する必要があります。詳細な解説については、IBM Lotus Enterprise Integrator for Domino (LEI) インストール・ガイドを参照してください。(Lotus Enterprise Integrator documentation (US)で公開されています。)
 
上に戻る
 
マイグレーションの準備
LEI Migration Utilityを実行する前に行うべき内容は以下の通りです。
  1. LEI 3.x Administrator/Script Vaultをクリーンアップすること
  2. システム・パスとDominoディレクトリーをチェックすること
  3. データベースの命名要件を確認すること
  4. LEIインストール要件を確認すること
  5. LEI 3.x Administrator/Script Vaultのバックアップを取っておくこと
  6. Dominoサーバーの設定を行うこと
  7. 接続設定を確認すること
以下のセクションでは以上のタスクについての実行方法を解説します。

1. LEI 3.x Administrator/Script Vaultをクリーンアップすること
移行を行う前に、「お掃除」を行わなければなりません。これは使われていない文書が転送されるのを防ぐためです。すでに使われていないLotus Connectorを使ったアクティビティー文書や接続文書を削除あるいはアーカイブします。これ以外にも不要な文書については削除しておきます。移行の際に使われるIDはLEI Administrators (3.x、6.x/7.x)へのアクセス権がなければなりません。また、Dominoサーバーは移行に関わる他のサーバーへの実行アクセス権限がなくてはなりません。

2. システム・パスとDominoディレクトリーをチェックすること
Dominoの実行ディレクトリーへのシステム・パスを確認します。例えば、LEIとDominoが同一サーバー・マシンに共存するシステムを移行する場合には、システム・パスは、C:\lotus\dominoとなります。また、LEIサーバーがNotesクライアント経由でリモートのDominoサーバーを使っている場合には、パスはC:\lotus\notesとなります。(パスがリストにない場合には、管理者に追加するように依頼してください。)

さらに、Dominoサーバーが稼働していることを確認してください。LEIが起動している必要はありません。またユーティリティーを実行する前には、全てのアクティビティーを停止させておく必要があります。

3. データベースの命名要件を確認すること
次に、移行に関係するLEI AdministratorsとScript Vaultsを見ていきます。LEI 3.0 Script Vaultは全てleivlt.nsfという名称になっていることを確認してください。LEI Administratorファイル名とデータベース・タイトルはどのようなものでも構いませんしかし、Script Vaultのファイル名は必ずleivlt.nsfでなければなりません。バックアップのコピーを取って単純にleivlt.nsfとリネームすることもできます。Vaultデータベースのタイトルはなんでも構いませんが、一般的にはLEI Administratorです。

LEI 6.x Script VaultおよびAdministratorは移行の処理上、インストール時のleivlt6とdecsadm.nsfの名前を保持しておく必要があります。

4. LEIインストール要件を確認すること
LEIをNotesクライアントにインストールしている場合には、Notes IDのパスワードを他のNotesベースのシステムと共有するようにしておかなければなりません。これは、LEIインストール・ガイドに記載されています。LEIの環境を確認して、インストール・ガイドに記載されている要件を満たしているかを確認してください。移行時に発生するエラーの多くは環境設定が適切でないことに起因することが多く見られます。

5. LEI 3.x Administrator/Script Vaultのバックアップを取っておくこと
まずLEI 3.x AdministratorとScript Vaultのバックアップを作成します。Migration Utilityは、LEI 3.x Administratorのバックアップを作成するかどうかを尋ねてきます。また、Migration UtilityはScript Vaultが移行されると、自動的に6.x/7.x Script Vaultのバックアップを作成します。ですので、移行するまえに、LEI 6.x Administratorのバックアップを取るようにしておきます。しかし、スクリプトの移行を選択すると、LEI 6.x Script Vaultはデフォルトで作成されます。

LEI 6.x Administratorのバックアップ・コピーはdecsadm_1.nsfのようになります。最後の_1はバックアップの回数を重ねる毎に一つずつ増えていきます。3.xのScript Vaultは、leivlt_1.nsfのようになり、同様にデータベースのコピーが増える度に数値が一つずつ増えていきます。3.x Script Vaultのバックアップ・コピーの名称には、 name does not contain the 6 required for a 6.x/7.x Script Vault (for example, leivlt6.nsf). Both the 6.x/7.x Administrator and Script Vault can be renamed to decsadm.nsf and leivlt6.nsf respectively to be suitable for use as the primary administrative Notes databases used by LEI/DECS 6.x/7.x.

6. Dominoサーバーの設定を行うこと
LEIのインストール・ガイドに記載されている内容に従って、インストール前のセットアップ作業を全て終わらせておきます。例えば、Unixのプラットフォームでは正しいアクセス制御がDominoサーバーに設定されていなければなりません。Dominoディレクトリーのサーバー文書の内容を正しく設定しておく必要があります。また、必要となる環境変数が全て設定され、かつエキスポートされ、X Windowsシステムが正しくロードされ、設定されている必要があります。

移行先となる先のローカル・マシンのDomino 6.x/7.Xについては、アップグレードするLEIの稼働環境やバージョンを確認しておきます。このサーバーに既存のLEI 3.x Administrator (any_name.nsf)やLEI 3.x Script Vault (leivlt.nsf)から移行することになります。

LEIの接続テスト・ツールであるndctest (Windows 32)やdctest (Unix)を使って、Domino 6.x/7.xサーバーへの接続を確認しておきます。このツールはDominoのプログラム・ディレクトリーにあり、フォルダーやファイル名は以下の通りです。
  • Win32: domino\ndctest.exe
  • Unix: /opt/lotus/notes/latest//dctest

このテストがうまくいかない場合には、移行も失敗することになります。接続の問題解決と接続の確認を行ってから、データベースの移行を行います。

8.接続設定を確認すること
移行を行う前に、正確な接続の設定がDominoサーバーに対して設定されているかを確認する必要があります。確認する内容には、ネットワーク・ポートの設定も含まれますし、全てのデータベースについてACLが適切に設定されているかの確認、サーバーの実行制御リスト(ECL)などが含まれます。

サーバーの名前解決
Migration Utilityでは、移行先のDomino 6.x/7.xのサーバー名を入れるようになっています。名前解決が適切に行われるようにいくつかの設定について編集が必要です。最初にサーバー名だけでPingを打ってみて、次にサーバーのIPアドレスで、最後はインターネット・ホスト名 (server_name.company_domain.com) で試してみます。環境などの状況によりますが、自身のワークステーションやサーバーの設定を変更する必要があるかもしれません。Dominoサーバーのコンソール画面を覗いてみて、名前解決でエラーが発生していないかを見てみましょう。以下はエラーの例です。

04/13/2004 02:13:56 PM Opened session for (Release 6.5.1 [Build 194])
04/13/2004 02:13:56 PM ATTEMPT TO ACCESS DATABASE leiadm.nsf by was denied
04/13/2004 12:15:59 PM Router: Unable to obtain Internet host and domain names

これらのDominoサーバー文書の設定は、「基本」タブにあります。必要に応じて編集してください。
  • サーバー名
  • ドメイン名
  • Fully Qualified (完全修飾) インターネット・ホスト名

図1. サーバー文書の「基本」タブ
サーバー文書の「基本」タブ

データベースのアクセス制御(ACL)
Migration Utilityでは、コンテンツの参照と編集の権限が必要です。LEI 3.x AdministratorおよびScript Vaultの双方についてACLを確認してみてください。選択のドロップダウンリストで「全て」を選択すると、全てのリストが表示されますので、Domino 6.x/7.xサーバーがLEI 3.xサーバーに対して管理者権限をもっているかを確認します。また、ローカルの設定アクセス権も修正されていることも確認しておきます。例えば、LEI製品は図2で示す通りEnterprise Connector Products/Lotus Notes Companion Productsのエントリーでアクセス権が設定されます。Defaultの設定でも動作します。

図2. アクセス制御リスト
アクセス制御リスト

加えて、属性セクションの下の「複製またはコピー」のチェックボックスにチェックが入っていることを確認しておきます。

サーバー実行制御リスト (Server Execution Control List (ECL))
移行元と移行先のDominoサーバーについて、双方のデータベースに対して操作を行う適切なアクセス権があることを確認してください。これはサーバー文書のサーバー・タブのところで確認します。サーバー自身とEnterprise Connector Products/Lotus Notes Companion Productsが、「制限なしで実行:」と「制限付き LotusScript/Java エージェントの実行:」のフィールドに設定されていなければなりません。

図3. サーバーECL 設定
サーバーECL 設定

ネットワーク・ポート
ネットワーク・ポートは正しく定義され、Migration Utilityがネットワークを介してサーバーにアクセスできるようにしておかなければなりません。Dominoサーバーのサーバー文書のポートタブをクリックして、Notesネットワーク・ポートのマシン名を指定します。他のマシンの設定によっては、マシン名、IPアドレス、完全修飾インターネット・ホスト名を入れる必要があります。
 
上に戻る
 
Migration Utilityの実行
様々な環境でMigration Utilityを実行する際の方法については、LEIインストール・ガイドに記載されています。個々の環境に応じた移行の手順は、何を移行するか(LEI/DECS)、ネットワーク上のどこに移行元になるLEIサーバーやDominoサーバーやLEI Administratorがあるのかにより変わってきます。最新のリリースのLEI Administratorでは、Migration Utilityがその上で実行されることを前提としています。

システム情報の入力
LEIのインストールをちょうど開始して移行のインストールかどうかの確認画面が出てきている場合や、run_migrationを実行している場合には、以下の画面が表示されます。

図4. Migration Utility初期ページ
Migration Utility初期ページ

個々のシステム構成に従って以下の情報を入力します。
  • Source Server LEI 3.x AdministratorやDECS AdministratorがあるDominoサーバーを指定します。
  • Source Administrator 移行元となるLEI 3.x AdministratorやDECS Administratorを入力します。(パスとファイル名は、Dominoのdataディレクトリーからの相対パスとなります。
  • Domino Server to run RealTime Activities Advanced RealTimeアクティビティーが設定されたLEI AdministratorがインストールされたDominoサーバーを指定します。
  • Backup LEI 6.x Administrator LEI 3.x/DECS Administratorの内容を移行するにあたって、現在のリリースのLEI Administratorのコピーを作成するオプションです。
  • Migrate ACL このオプションは、移行元のAdministratorからACLをLEI 6.x Administratorへ移行するオプションです。
  • Disable all scheduled activities チェックを入れると、定期実行の設定がされているアクティビティーを全て無効にします。チェックが外れている場合には、全てのアクティビティーが定期実行のセクションにある情報(定期実行可/あるいは不可)も含めてそっくりそのまま移行されます。

接続の解決とアクティビティー文書の競合
Migration Utilityを利用していて接続名やアクティビティー名が重複するような場合、Conflicts Detected(競合の検出)の画面が表示されます。

図5. Conflicts Detectedの画面 (接続の競合)
Conflicts Detectedの画面 (接続の競合)

Conflicts Detectedの画面では、どのように処理するかについて入力を求めてきます。
  • Rename 競合を示す値を前に追加します。(このリストの最後のものもご覧ください。) これは、LEI Administratorで名前が一致するLEI Administratorへ接続文書やアクティビティー文書を全て現在のリリースへのLEI Administratorへ移行するものです。
  • Overwrite 移行先の既存の接続文書やアクティビティー文書を、移行元の文書(LEI 3.x/DECS Administrator)で上書きします。
  • Skip 同名の既存のものがある場合には、移行せずにスキップします。
  • Choose Conflict Suffix
  • 既に同名の接続文書やアクティビティー文書がある場合には、グローバルなサフィックスを先頭に付けて追加します。

Conflicts Detected画面での処理が終わったら、Continue Migrationをクリックして作業を継続します。

Script Vaultの移行
LEI LSXフォーマットのスクリプトについても、LEI 3.x Script Vaultから移行するオプションも使うことができます。LEI LSXスクリプトは全て、あるいは指定したものだけを移行することができます。LEI 3.xのスクリプトの中身や指定したDECS Administratorは、LEI 6.x Administratorへ移行させることができます。さらに、LEI 3.x Script VaultもまたLEI 6.xのLEI Script Vaultへ移行させることもできます。移行されたアクティビティー文書や接続文書については機能が更新されます。例えば、LEI 3.x Replication Activity文書は、フォームの左側にマスターの接続が表示されるようになっています。移行のプロセスが完了すると、処理の結果を示す画面が表示されます。

図6. Migration Utility終了画面
Migration Utility終了画面

Finishをクリックしてユーティリティーを終了させます。そして、RefreshAllDocumentsエージェントを移行先のLEI Administrator. で実行させています。このエージェントはLEI Administratorのアクション・メニューにあります。RefreshAllDocumentsエージェントでエラーが発生した場合には、RefreshErrors.txtファイルが、Notesのプログラム・ディレクトリーに作成されます。(実行したNotesクライアントのマシン上)

migration.logがLotus\Dominoのディレクトリーにありますので、これを見ることもできます。このログには移行されたアクティビティー文書や接続文書、そして移行されなかったリストが記録されています。移行されなかった理由は、名前が重複している場合や、もう使われなくなっているLotus Connector、例えばEDA/SQL Connectorを使っている場合などです。また、LEI 3.x Script Vault (leivlt.nsf) から移行したLEI LSXスクリプトの名前も記されています。
 
上に戻る
 
一般的な移行エラーのトラブル・シューティング
移行中にエラーが発生したならば、調査する上で情報源となるものがいくつかあります。加えて、run_migrationをコマンド・プロンプトからオプション付きで実行させます。すると、詳細なトラブル・シューティング情報を含んだテキスト・ファイルが出力されます。文法は以下の通りです。

run_migration -is:log c:\temp\mig.txt

この他に有益な情報を含んでいるものとしては移行時に作成されるmigration.logがあります。また、DominoのDataディレクトリーのIBM_TECHNICAL_SUPPORTディレクトリーに補完されるconsole.logもあります。加えて、Dominoサーバーのlog.nsfも有益です。Dominoサーバーのコンソール画面にはしばしば役に立つ情報が表示されます。例えば、アクセス権や実行権限に関するもので、これが移行の作業を阻んでいる場合があります。以下に、そのエラーの一部についてその状態を詳しく示します。

java.lang.UnsatisfiedLinkError: no nlsxbe (nlsxbe.dll) in java.library.path
このエラー・メッセージがでたら、Dominoサーバーはシステム・パス外にあると判断できます。この状態では、ユーティリティーが必要とするライブラリーにアクセスできていないと思われます。

Migration blocking errors
Migration Utilityは、移行に関する障害があって作業を先に進めることができない場合には、エラー・メッセージを表示します。例えば、綴りを間違えたサーバー名、Administrator名を入れた場合や、サーバーが起動していない場合には、以下のようなエラー・メッセージを表示します。また、入力すべきところを空のままにした場合も同様です。

図7. File does not exist (ファイルが存在しません) エラー
File does not exist (ファイルが存在しません) エラー

別のエラー・メッセージの例を以下に示します。

図8. Cannot access Administrator (Administratorへのアクセス不可) エラー
Cannot access Administrator (Administratorへのアクセス不可) エラー

LEI 3.x (leiadm.nsf)や6.x/7.x Administrator (decsadm.nsf)のいずれかへのアクセスに関する様々な状況によりエラーが発生しえます。このエラーに遭遇したならば、双方のデータベースをNotesクライアントで開き、データベースや文書が破損していないかを確認します。また、Dominoサーバーが起動しており正常に動作していることも確認します。Administratorへのアクセス権が適切でない場合にも問題が発生します。双方のデータベースに関して適切なアクセス権が設定されているかを確認します。Dominoサーバーに適切なアクセス権を設定して、移行に関連するAdministratorの内容がコピーされるようにします。

Migration Utilityは、Dominoサーバーにアクセスできるように設定されている前提で動作します。また、サーバーへのパスも解決できることを前提としています。ですので、サーバーのパスに関して解決できているかどうかを確認してみてください。名前解決にIPアドレス、あるいはドメイン・アドレス、あるいはサーバー名、あるいは、その両方を使っているでしょうか? Dominoサーバーのサーバー文書を確認することで、Migration Utilityがサーバーを見つけられない問題が解決されることが多くあります。

Dominoサーバーのコンソール上でのエラー表示
エラーに関する別の情報源としては、Dominoサーバーのコンソール画面があります。例えば、ソースのDominoサーバーと送り先のDominoサーバーが別々であった場合には、ソース側のコンソール画面にMigration Utilityのアクセスに関するメッセージが表示されます。双方のサーバーが通信できた場合、コンソール画面には"Opened session for …"といったメッセージが表示されます。このメッセージが出ていて通信が確立していることがあるにもかかわらずMigration UtilityがLEI Administratorを見つけることができない場合にはAdministrator ACLの設定を確認してみてください。

アクセス権についてはDominoサーバー文書のセキュリティー設定によっても影響を受けます。不適切なECL(Execution Control List)設定をしている場合には。Migration Utilityはサーバー上で起動できない場合があります。以下のエラーが表示された場合には、ECLの設定を見直しする必要の可能性が高いです。

ECL Alert Result: Code signed by Enterprise Connector Products/Lotus Notes Companion Products was prevented from executing with the right: Access to current database.
LEIインストール・ガイドで推奨されているセキュリティー設定であることを確認します。これはLEIが正常に動作する上で必要なものとなっています。Migration Utilityもまた同じアクセス権が設定されている必要があります。サーバー文書を開いて、サーバーのECLを見直します。具体的には、サーバー文書のツール・バー・アクションから、「管理者ECLの編集」を選択します。以下の画面が表示されます。

図9. ワークステーションでのセキュリティー実行コントロール・リストの画面
ワークステーションでのセキュリティー実行コントロール・リストの画面

ECLの設定にはエントリーとしてEnterprise Connector Products/Lotus Notes Companion Productsが図9に示すように入っている必要がありますので注意してください。
 
上に戻る
 
まとめ
この記事をご覧になったことで、LEI Migration Utilityを使ってLEI 3.xのスクリプト、アクティビティー文書、接続文書をLEI 6.xへ移行する準備が整いました。また、一般的に起こりがちなエラーについてもその対処方法について解説してきました。
 
上に戻る
 
リソース



筆者について(原文のまま)
Carol Eaton is a Software Engineer with the Lotus Enterprise Integration IBM Software Group.
 
上に戻る