MID Server ホストのローカル環境の問題を解決する方法Issue 目次 症状MID ホスト環境の問題 アップグレード中に MID サーバーがファイルを削除できないWindows でアプリケーションエクスペリエンスが無効になっている 症状 MID サーバーのアップグレードに失敗した (トラブルシューティング)ディスカバリーが動作を停止したアップグレードが停止したMID サーバーは稼働しているように見えるが応答しない MID ホスト環境の問題 アップグレード中に MID サーバーがファイルを削除できない アップグレードを正常に実行するには、MID サーバーが指定された MID サーバーの /agent ディレクトリ内にあるファイルを扱える環境が必要です。MID サーバーユーザーがインスタンスにアクセスできるようにするため、そのインスタンスにおける mid_server ロールが必要となります。また、ディレクトリの作成、ファイルの書き込み、ファイルの削除を行うためにローカルホストに対するアドミン権限も必要です。ファイルを正常に削除できる環境が必要です。別の原因として、MID サーバーが削除しようとしているファイルが、別のアプリケーションまたはサービスから使用されているケースが考えられます。この場合は、そのアプリケーションを閉じてください。 ソリューション 1:ユーザー権限を検証する MID サーバーユーザーとしてホストマシンにログオンします。ディレクトリの作成、ファイルの作成、そのファイルの削除を試行します。ユーザーとしてこれらの操作を実行できない場合は、MID サーバーも操作を実行できないことになります。システムアドミニストレーターに連絡し、Windows システムで MID サーバーユーザーにローカルアドミン以上の権限があることを確認してください。Linux システムでは、MID ユーザー名とパスワードを使用してホストマシンに SSH 接続します。MID サーバーがインストールされている /agent ディレクトリに移動します。「ls -lg」と入力し、アクセス許可のリストを確認します。ユーザーが、MID ユーザーが所属するグループ内で (または MID ユーザーがオーナーである場合はオーナーとして)、-rwx のアクセス権を持っていることを確認します。 ソリューション 2:実行中のサービスを特定する ラッパーログとエージェントログはどちらも、ファイルが別のアプリケーションやサービスで使用中であるため削除できない場合のヒントになります。例えば、ログエントリーに、「プロセスがファイルにアクセスできません。ファイルは別のプロセスによって使用されています」と表示される場合があります。Istanbul より前のリリースでは、実行中の統合 (JDBC インポートなど)、サービスマッピング、および開いたままになっている MID インストーラーが、いずれも MID の自動アップグレード開始時に .jar ファイルまたは .dll ファイルを共有する可能性がありました。MID インストーラーを除き、これらの問題は Istanbul、Geneva、Helsinki の各パッチで対処されています。 Windows では、サービスの歯車アイコンを開き、サービスリストで「ServiceNow」を検索します。サービスマッピングなどの他の ServiceNow サービスが実行されている場合は、サービスを停止し、MID サーバーを再インストールしてから、すべてのサービスを再起動します。 Linux マシンでは、ps コマンドを使用してサービスのリストを表示します。ServiceNow サービスが実行されている場合は、そのサービスの bin ディレクトリに移動して stop.sh コマンドを実行します。サービスが停止したら、MID サーバーを再インストールし、その後すべてのサービスを再起動します。 MID サーバーの再インストールが必要なケース:ファイル削除権限のためにアップグレードに失敗した場合は、MID サーバーの再インストールが必要です。これは、アップグレードで障害が発生したタイミングによっては、失敗したアップグレードプロセスによりアップグレード実行に必要な jar ファイルが削除されてしまっている可能性があるためです。config.xml ファイルとエージェントラッパーファイルを保存しておき、MID サーバーの再インストール後にこの 2 つのファイルを復元すれば、再構成を回避できます。これを実行する場合は、必ずキーストアディレクトリを削除してください。 Windows でアプリケーションエクスペリエンスが無効になっている 以下のようなログメッセージは、MID サーバーである Windows ホストマシンでアプリケーションエクスペリエンスが無効になっていることを示しています。 com.snc.dist.mid_upgrade.UpgradeException: java.io.FileNotFoundException: D:\ServiceNow\agent\bin\mid.bat (Access is Denied) Microsoft のセキュリティドキュメントによると、このサービスは内部的なものであり、実際に無効にすることはできません。Windows 環境でこれを [無効] に設定した場合、サービスの呼び出しのみが停止します。サービスの実行は停止しません。一般に、アプリケーションエクスペリエンスの目的は、既存のインストール済みソフトウェアに対して、受信するアプリケーション更新プログラムの互換性を評価することです。設定が [無効] に設定されている場合、実行中のサービスが要求を受信しないため、評価は実行されず、更新プログラムのインストールは失敗します。 ソリューション:MID サーバーの Windows ホストマシンでアプリケーションエクスペリエンスが有効になっていることを確認してください。 ローカルのアドミニストレーター権限を持つ MID サーバーユーザーとしてホストマシンにログオンします。Enter + r (Windows の場合 Windows + R ) を入力 --> [ファイル名を指定して実行] ウィンドウが開きます。[ファイル名を指定して実行] ウィンドウに「msconfig」と入力し、[Enter] をクリックします。[サービス] タブを選択します。アプリケーションエクスペリエンス機能が有効になっていることを検証します。 有効になっていない場合は有効にします。MID サーバーを正常にアップグレードするには、有効にする必要があります。有効になっている場合は、トラブルシューティングを続行します。アプリケーションエクスペリエンスは、MID サーバーのアップグレード失敗の原因ではありません。