5.2 ホームサーバ移動ツール「SFdatacp」について
(1) 前提条件
- すべてのマシンにScheduler Server Version 6以降とFacilities Manager Version 6以降をインストールしておく必要があります(施設管理を使用していない場合は,Facilities Manager Version 6以降をインストールする必要はありません)。
- すべてのサーバで,サーバ(SV,RMSV)を停止した状態で実行してください(施設管理を使用していない場合,RMSVの停止は必要ありません)。
- すべてのサーバで,あらかじめ管理ツールサーバ(AppoMan,RoomMan)を起動してください(施設管理を使用していない場合は,RoomManを起動しておく必要はありません。すべてのサーバでAppoManは必ず起動しておいてください)。
- 事前にSchedulerのホームサーバ一覧を作成する必要があります。Assist連携を使用している場合は,新たに作成する必要はありません。このホームサーバ一覧には,Scheduler Server,又はFacilities Managerがインストールされている全マシンのホームサーバ名を登録する必要があります。作成方法については,「5.2(3)(b) ホームサーバ一覧ファイル」を参照してください。
- SFdatacp実行中は,不要スケジュール削除の手動実行はできません。また,不要スケジュール削除の自動実行は「使用しない」設定に変更しておいてください。
- ホームサーバの移動後,クライアント起動時に自動的に表示されるスケジュールが,自分の又は上司のスケジュールの場合,登録・削除・回答はできません。
- SFdatacpから呼び出されるgrpchgコマンドは,組織数が多い環境ではエラーが発生する場合があります。「7.8 「grpchg」について (4) 注意」を参照して,該当する環境の場合は回避策を適用してください。
(2) 使用条件
- Scheduler Server及びFacilities Managerの親サーバがインストールされているマシン上で実行してください。
- Assist連携を使用している場合,Assist連携が正常に終了していることを確認してからこのコマンドを実行してください。もし,Assist連携が正常に終了しないままこのコマンドを実行した場合,実行後のアプリケーションの動作は保証しません。
- このコマンドを実行中は,Assist Viewer,又はAddress Server上での組織やユーザの変更作業をしないでください。
- 実行には多少時間が掛かりますが,処理を中断しないでください。処理を中断した場合,実行後のアプリケーションの動作は保証しません。
- マルチサーバ環境では,ユーザが全く登録されていないScheduler Serverであっても,そのサーバに関しては,あらかじめ管理ツールでDNSホスト名,及びホームサーバ一覧に登録しておく必要があります。
- 「コンフィギュレーション」の「6. ログファイル最大容量」で指定するログ容量は大きめに設定しておいてください。
- このコマンドを実行すると以下のディレクトリが作成されます。ログやバックアップですので,コマンド実行が正常終了したことを確認できたら,随時削除するようにしてください。このディレクトリは実行するごとに増え続けますので,御注意ください。
<スケジュール格納ディレクトリ>/log/agent/[処理ID※]
<スケジュール格納ディレクトリ>/[処理ID※]
- 注※
- 処理IDは,14桁の数字で,実行時間(「西暦年+月+日+時+分+秒」)を表しています。
- サーバ統合などのサーバ数の削減が伴うホームサーバ移動の場合は,「SFdatacp」コマンドの後にすべてのサーバで「hostchg」コマンドも実行してください。「hostschg」コマンドを実行していないと,予約発信者のホームサーバが移動されて,その予約発信者がシステムから削除された場合に,その予約発信者からホームサーバ移動前に予約されていたスケジュールの回答,削除,変更に失敗します。「hostchg」コマンドで使用するホスト名変換ファイルには,「SFdatacp」コマンドで使用する移動者一覧ファイルをそのまま使用できます。「hostchg」コマンドについては,「7.3 「HOSTCHG」について」を参照してください。
- クライアントにScheduler Clientを使用している場合は,「SFdatacp」コマンドの後にすべてのサーバで「hostchg」コマンドも実行してください。「hostschg」コマンドを実行しなかった場合,Scheduler Clientの終了状態保存機能で保存していた画面上で,自分と上司のスケジュールの登録・削除・回答が行えなくなります。「hostchg」コマンドで使用するホスト名変換ファイルには,「SFdatacp」コマンドで使用する移動者一覧ファイルをそのまま使用できます。「hostchg」コマンドについては,「7.3 「HOSTCHG」について」を参照してください。
(3) 設定事項
(a) 移動者一覧ファイル
ホームサーバを移動するユーザの一覧を作成します。
ファイル名
任意に指定可
フォーマット
ユーザID<スペース又はタブ>移動後のホスト名<スペース又はタブ>移動前のホスト名<改行> |
移動者一覧ファイル作成時の注意事項
- 上記のフォーマットを1レコードとして,変更する人数分レコードを作成してください。
- 作成する場合は,スケジュールデータが存在しないユーザも必ずエントリに加えてください。
- Assist連携を使用してユーザのホームサーバを変更した場合は,必ずSFdatacpコマンドなどを利用してデータの移動をしてください。
- Assist連携を使用してユーザのホームサーバを変更した場合は「5.1 Groupmax Address - AssistのGroupmax連携機能」を参照して,移動者一覧リストの存在と内容の確認をしてください。
- Assist連携を使用している場合は,SFdatacpで指定する移動者一覧ファイルは必ずAssist連携機能で作成したものを使用してください。
<スケジュール格納ディレクトリ>/etc/MV.tbl
- 作成する場合は,ユーザIDは8文字以内の英数字で記述してください。
- 作成する場合は,ホスト名は255文字以内の英数字で記述してください(「4.5 DNSホスト名の登録」で登録済みのホスト名を記述してください)。
(b) ホームサーバ一覧ファイル
SFdatacpコマンドを実行する場合,ホームサーバ一覧を作成する必要があります。Assist連携を使用している場合は,管理ツールを用いて作成します。その手順は,「4.5(2) Assist連携用ホームサーバ一覧作成」を参照してください。Assist連携を使用していない場合は,以下のフォーマット及び注意事項に従って作成してください。
ファイル名
<インストールディレクトリ>/log/agent/Schehost.tbl
フォーマット
ホームサーバ一覧ファイル作成時の注意事項
- ホームサーバ一覧ファイルはWindows上で作成する必要があります。
- 親サーバ上に作成してください。子サーバには必要ありません。
- 上記のフォーマットを1レコードとして,システムを構成する全サーバのホスト名のレコードを作成してください。最後のレコードは「#end#」としてください。
- ホスト名は管理ツールの「4.5(1) DNSホスト名の登録」で登録したホスト名と同じ名前にしてください。
- 他システムと接続している場合は,他システムのG/Wホスト名を一覧に追加しないでください。
- システムの構成が変更になった場合は,必ずこの一覧を再作成してください。
- ユーザが全く登録されていないサーバも含め,システム内のすべてのサーバを登録してください。
(4) バックアップの取得
このコマンドを実行する前に必ずシステム内のすべてのサーバで以下のデータのバックアップを取得してください。エラー発生時のリカバリに使用します。
<スケジュール格納ディレクトリ>以下すべて
(5) ユーザのホームサーバ変更方法
「(3) 設定事項」と「(4) バックアップの取得」の内容をすべて設定した後,ユーザのホームサーバ移動をするために以下のコマンドを実行してください。
コマンドの書式
/usr/GroupAppo/bin/SFdatacp [/m filename] [/f logfile_name]
引数
- 第1引数
/m filename:移動者一覧ファイルのファイル名(省略可)
移動者一覧ファイルのファイル名をフルパスで指定してください。何も指定がない場合は,Assist連携使用時に作成された以下のデフォルトの移動者一覧ファイルを参照します。
<スケジュール格納ディレクトリ>/etc/MV.tbl
したがって,Assist連携使用時には,このオプションを指定する必要はありません。
- 第2引数
/f logfile_name:ログファイル名(省略可)
logfile_nameを指定するとログメッセージの出力先を画面から指定したファイルに変更します。既に同じファイル名が存在する場合は上書きされます。
- 注意事項
- SFdatacp.logは詳細ログの出力先として使用されるため,SFdatacp.log以外のファイル名を指定してください。
リターンコード
0…正常終了
1…異常終了
(6) 確認事項
SFdatacpコマンド実行後は,以下のファイルの内容を参照して実行結果を確認してください。
(a) 詳細ログファイル
SFdatacpコマンドの詳細ログは以下のファイルに出力されます。格納先は,実行するたびに変更しますので御注意ください。ログファイルに出力されたエラーメッセージの解説ついては,「付録H Assist連携時と「SFdatacp」実行時のエラーメッセージ」を参照してください。
- <スケジュール格納ディレクトリ>/log/agent/[処理ID※]/SFdatacp.log
- 注※
- 処理IDは,14桁の数字で,実行時間(「西暦年+月+日+時+分+秒」)を表しています。
(b) ホームサーバ移動結果ファイル
SFdatacpコマンドを使ったホームサーバ移動の処理結果をユーザ単位で確認できるファイルです。
- <スケジュール格納ディレクトリ>/log/agent/[処理ID※]/MVresult.tbl
- 注※
- 処理IDは,14桁の数字で,実行時間(「西暦年+月+日+時+分+秒」)を表しています。
ホームサーバ移動結果ファイルのフォーマット
移動ユーザID <スペース> 移動後のホスト名 <スペース> 移動前のホスト名 <スペース> 処理結果 <スペース> 詳細エラー<改行> |
ホームサーバ移動結果ファイルの例
USER001 HOSTA HOSTB ○<改行> USER002 HOSTB HOSTA ○<改行> : : USER009 HOSTA HOSTC × 21<改行> |
<詳細エラー一覧>
20:移動後サーバとの通信エラーが発生しました
21:移動前サーバとの通信エラーが発生しました
22:移動後サーバでバイトオーダ変換に失敗しました
23:移動前サーバのスケジュールデータの受信処理に失敗しました
24:移動前サーバでスケジュールデータバックアップに失敗しました
31:ホームサーバの更新処理に失敗しました
255:その他のエラー
(7) エラー発生時の対処
「(6) 確認事項」に従って詳細ログファイルに出力されているメッセージを確認し,エラーが発生している場合は,エラーの要因を除去した上で以下の手順に従って再実行してください。メッセージに応じて回復方法が異なる場合がありますので,「付録H Assist連携時と「SFdatacp」実行時のエラーメッセージ」を参照して正しく回復してください。基本的には,以下の方法で回復できます。
(a) すべて再実行する方法
- すべてのサーバで以下のデータをバックアップからリカバリしてください。
<スケジュール格納ディレクトリ>以下すべて
- 親サーバの<スケジュール格納ディレクトリ>/log/agent/[処理ID]/MVorg.tblを<スケジュール格納ディレクトリ>/etc/MV.tblとしてコピーしてください。
処理IDは,14桁の数字で,実行時間(「西暦年+月+日+時+分+秒」)を表しています。
- SFdatacp [/f logfile_name] を実行してください。
(b) エラーとなったユーザだけ再実行する方法
この方法は,親サーバで以下の1から3の条件が整っているときだけ実行できます。
条件
- ホームサーバ移動結果ファイル(<スケジュール格納ディレクトリ>/log/agent/[処理ID]/MVresult.tbl)が作成されていること。
処理IDは,14桁の数字で,実行時間(「西暦年+月+日+時+分+秒」)を表しています。
- 実行前に作成した移動者一覧ファイルが更新され,ホームサーバ移動結果ファイルで"×"が付いたユーザだけがエントリされている状態になっていること。
- エラーとなったユーザの移動前サーバの<スケジュール格納ディレクトリ>以下にスケジュールデータ(ユーザID名のディレクトリ)があること。
スケジュールデータがない場合,取得しておいたバックアップからリカバリしてください。
手順
- 親サーバで<スケジュール格納ディレクトリ>/log/agent/[処理ID]/MVresult.tblを参照してエラーが発生したユーザを確認してください。エラーが発生したユーザには,"×"が付いています。詳細は,「5.2(6)(b) ホームサーバ移動結果ファイル」を参照してください。MVresult.tblが存在しない場合は,「付録H Assist連携時と「SFdatacp」実行時のエラーメッセージ」を参照して対処してください。
処理IDは,14桁の数字で,実行時間(「西暦年+月+日+時+分+秒」)を表しています。
- 使用した移動者一覧ファイルが更新されて,1でエラーが発生したユーザだけがエントリされていることを確認してください。
- エラーが発生したユーザの移動前のサーバにスケジュールデータが残っていることを確認してください。残っていない場合,取得したバックアップから戻してください。
- SFdatacpを再実行してください。
エラー発生時の注意事項
(c) SFdatacp実行時に通信エラーが発生した場合
スケジュールデータのデータ量が多い環境でSFdatacpを実行した場合,ホームサーバ移動処理処理中にタイムアウトによる通信エラーが発生する場合があります。タイムアウトが発生した場合,SFdatacpの実行ログ(<スケジュール格納ディレクトリ>/log/agent/<処理ID>/SFdatacp.log)に次のメッセージが出力されます。
ユーザ[<ユーザID>]のホームサーバ移動処理で移動元サーバ[<ホスト名>]との通信エラーが発生しました |
この場合,/usr/GroupAppo/bin/AppoSV.iniファイルに記述を追加して,タイムアウト時間を長くしてください。なお,AppoSV.iniファイルを作成又は変更した場合は,管理ツールサーバ(AppoMan,RoomMan)を必ず再起動してください。
AppoSV.iniファイルに追加する記述,及び記述例を次に示します。
[Sockets] TimeOutMan=タイムアウト時間(秒)<改行> TimeOutRMMan=タイムアウト時間(秒)<改行> |
- 記述例
[Sockets]
TimeOutMan=60
TimeOutRMMan=60
- この例では,タイムアウト時間が60秒となります。
なお,この記述がない場合又はAppoSV.iniファイルがない場合は,「TimeOutMan=30」,「TimeOutRMMan=30」として扱い,タイムアウト時間は30秒となります。