Windows リソースモニター (resmon.exe) を使用して MID サーバーの自動アップグレード中にファイルをロックしているプロセスを特定するSummary<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } この記事は、 「ServiceNow プラットフォームディストリビューションアップグレード」サービスのタイムアウトやクラッシュの原因となるファイルロックの調査に役立つツールを提案することを目的としています。 この KB 記事では、この状況から回復する方法の 1 つを説明し、現在調査中の関連する既知の問題も紹介します。 KB0779816 How to continue a MID Server upgrade after it has crashed in the middle of the ServiceNow Platform Distribution Upgrade service, leaving the MID Server Down and the Service not running MID サーバーは自動アップグレード時に ServiceNow Platform Distribution Upgrade サービスを起動し、その後自身を停止します。 (logs/agent0.log.0 ファイルで確認できます)。 メインの ServiceNow MID Server_... サービスに関連するすべてのファイルをアップグレードサービスが更新できるようにするため、メインサービスは完全に停止し、すべてのファイルロックを解放している必要があります。そうしないと、アップグレードは失敗します。 agent/logs/agent0.log.0 および agent/logs/wrapper.log には、アップグレードサービスが開始されるまでにメインサービスが行っていたことのみが表示され、アップグレード自体は表示されない場合があります。 アップグレードサービスの実行中は、一時フォルダー内の upgrade-wrapper.log にログが記録されます。これは、アップグレードサービスの実行中に監視し、失敗する理由を把握するために、どのファイルがロックされたままになっているか、何によってロックされているかを確認するために使用するツールを使用する必要があります。 次のような glide-dist-upgrade.logを見つけることができます。 MID サーバーのエージェントログから Added marker という文字列を検索します。フォルダーは異なりますが、次のような行が見つかるはずです。 AutoUpgrade.3600 Added marker C:\WINDOWS\TEMP\1569035472492-0 to upgrade marker file. そのフォルダーを開き、さらにサブフォルダーを経由して upgrade-wrapper\logs\glide-dist-upgrade.log に移動します 例: C:\WINDOWS\TEMP\<長い数>\upgrade-wrapper\logs\glide-dist-upgrade.log 原因を突き止める必要があるログ内のエラーの種類は次のとおりです。 ここでは、agent\lib\sigar-amd64-winnt.dllを削除しようとしたときにタイムアウトが発生しました。これは再試行されるため、すぐには何も壊れませんが、メインのMIDサーバーサービスが完全に停止する前にファイルの削除を開始することさえ良くありません。 INFO | jvm 1 | 2018/04/27 17:12:11.951 | INFO: E:\ServiceNow\MID_Server\agent\lib\sigar-amd64-winnt.dll cannot be deleted: E:\ServiceNow\MID_Server\agent\lib\sigar-amd64-winnt.dll (The process cannot access the file because it is being used by another process) ここでは、agent\bin\wrapper-windows-x86-64.exe にアクセスしようとしているときにアップグレードサービスがクラッシュする例外が発生します。それは、ウイルス対策などの別のプロセスがロックしているためですか? INFO | jvm 1 | 2018/04/27 17:12:19.232 | SEVERE: com.snc.dist.mid_upgrade.UpgradeException: java.io.FileNotFoundException: E:\ServiceNow\MID_Server\agent\bin\wrapper-windows-x86-64.exe (Access is denied)INFO | jvm 1 | 2018/04/27 17:12:19.248 | com.snc.dist.mid_upgrade.UpgradeException: java.io.FileNotFoundException: E:\ServiceNow\MID_Server\agent\bin\wrapper-windows-x86-64.exe (Access is denied) ここでは、jreフォルダを削除できません。 INFO | jvm 1 | 2019/09/21 16:30:47.114 | Sep 21, 2019 4:30:47 PM com.snc.dist.mid_upgrade.UpgradeMain deleteJreDirIfSourced INFO | jvm 1 | 2019/09/21 16:30:47.130 | INFO: Removing previous MID JRE at `C:\ServiceNow\agent\jre`. INFO | jvm 1 | 2019/09/21 16:30:47.802 | Sep 21, 2019 4:30:47 PM com.snc.dist.mid_upgrade.UpgradeMain deleteJreDirIfSourced INFO | jvm 1 | 2019/09/21 16:30:47.817 | WARNING: java.io.IOException: Unable to delete directory C:\ServiceNow\agent\jre\bin. INFO | jvm 1 | 2019/09/21 16:30:47.833 | java.io.IOException: Unable to delete directory C:\ServiceNow\agent\jre\bin. Release<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } ServiceNow Platform Distribution Upgrade サービスの起動後に MID サーバーの自動アップグレードが繰り返し失敗するすべてのリリース Instructions<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } Windows リソースモニター このツールは、すべての Windows Server ですぐに使用でき、どのファイル ロックが存在するかを確認するために使用できます。 この例では: Resource Monitor (resmon.exe) を起動します[CPU] タブをクリックします[プロセス] セクションで、上部の [画像] の横にチェックを入れてすべて選択します[関連ハンドル] セクションの [検索ハンドル] 検索ボックスに、MID サーバーインストールフォルダー内のファイルのみをフィルタリングするものを追加します。例:C:\ServiceNow\MID_SERVERS\Prod_Disco_MID\agent Related Links<!-- /*NS Branding Styles*/ --> .ns-kb-css-body-editor-container { p { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } span { font-size: 12pt; font-family: Lato; color: var(--now-color--text-primary, #000000); } h2 { font-size: 24pt; font-family: Lato; color: var(--now-color--text-primary, black); } h3 { font-size: 18pt; font-family: Lato; color: var(--now-color--text-primary, black); } h4 { font-size: 14pt; font-family: Lato; color: var(--now-color--text-primary, black); } a { font-size: 12pt; font-family: Lato; color: var(--now-color--link-primary, #00718F); } a:hover { font-size: 12pt; color: var(--now-color--link-primary, #024F69); } a:target { font-size: 12pt; color: var(--now-color--link-primary, #032D42); } a:visited { font-size: 12pt; color: var(--now-color--link-primary, #00718f); } ul { font-size: 12pt; font-family: Lato; } li { font-size: 12pt; font-family: Lato; } img { display: ; max-width: ; width: ; height: ; } } このプロセスを使用する場合は、原因がすぐには明らかにならない場合に備えて、サーバーの他の関連情報を記録することが重要です。これは後で役立つかもしれません: どの OS バージョンですか?例:Windows Server 2012R2 SP1どのウイルス対策ソフトウェアやセキュリティソフトウェアが稼働していますか。例:McAfee、WIndows ディフェンダーMID サーバーはどのフォルダーにインストールされていますか。また、そのフォルダーはユーザープロファイル配下ですか。例:ユーザーのダウンロードまたはデスクトップ。どのユーザーとして MID サーバーサービスが実行されていましたか。また、それはローカルアドミニストレーターグループのメンバーですか?サーバーは VM ですか。また、どの程度のリソースが割り当てられていますか。どの JRE がインストールされていますか?...