Amazon WorkSpacesでOffice 2016のアンインストールに時間がかかる件を調査してみた

2023.10.11

しばたです。

前の記事でAmazon WorkSpacesにおいて新たにOfficeアプリケーションの追加インストール・アンインストールが可能になった旨を解説しました。

この機能を検証した際にWindows Server 2016環境に組み込まれているOffice 2016をアンインストールするときだけ異常に時間がかかる結果になったため原因を調べてみました。

検証環境

今回検証した環境は以下の条件になります。

  • 私の検証用AWSアカウントの東京リージョン
  • ディレクトリ環境にAWS Managed Microsoft ADを使用し、ADと調査対象WorkSpaceは同じサブネットに配置
  • バンドルタイプは Standard (2vCPU, 4GBメモリ)
  • イメージは「Standard with Windows 10 and Office 2016 Pro Plus (Server 2016 based) 」を使用
    • 仕様プロトコルはWSP
    • Cドライブ 80GB, Dドライブ 10GBの設定

通常の処理結果 (時間がかかるケース)

検証対象となるWorkSpace環境を作成し、初回ログインをして動作確認した後ただちにOffice 2016のアンインストールを試み処理時間を計測しました。

マネジメントコンソール上およびAWS CLIで定期的に状態をポーリングして計測しているので精度は低いですが、それでも今回の調査には大きな影響はなかったので処理時間の数値自体は目安程度にお考えください。

この場合の結果は以下の通りとなりました。

内容 かかった時間 備考
処理を開始してから実際にアンインストールが始まるまでの時間 10分程度 PENDING_UNINSTALL → UNINSTALLING への状態変化にかかる時間
アンインストール処理時間 1時間30分~1時間40分程度 Trend Micro Worry-Free Business Securityのアンインストールを含む
アンインストールが完了した時点からWorkSpaceが完全に停止するまでの時間 1~2分程度

アンインストール処理時間が1時間30分程度と極めて遅い結果となっています。
比較対象として同等スペックでOffice 2019やOffice 2021をアンインストールした際は10分~20分程度でアンインストールできています。

Office 2016の場合Trend Micro Worry-Free Business Securityのアンインストールも同時に行うとはいえこの時間は正直異常です。

アンインストール処理に関するログはC:\Program Files\Amazon\WorkspacesConfig配下に保存されており、ログの内容を抜粋するとこんな感じになっています。

AppMgmtFramework.logより抜粋

2023-10-10 04:13:08Z [Information] (Invoke-AppMgmtFramework.ps1) Initiating Deployment
2023-10-10 04:13:17Z [Information] (Invoke-AppMgmtFramework.ps1) Proceeding with Application 'Office2016' Uninstall
2023-10-10 04:13:17Z [Information] (Invoke-AppMgmtFramework.ps1) Executing command 'Start-Process -FilePath "C:\Program Files (x86)\Common Files\Microsoft Shared\OFFICE16\Office Setup Controller\Setup.exe" -ArgumentList "/uninstall ProPlus /config "C:\Program Files\Amazon\WorkSpacesConfig\ApplicationTemp\Office2016\ConfigUninstall.xml"" -Wait -PassThru'
2023-10-10 05:09:20Z [Information] (Invoke-AppMgmtFramework.ps1) Application 'Office2016' Uninstall succeeded with Exit Code: 0
2023-10-10 05:09:20Z [Information] (Invoke-AppMgmtFramework.ps1) Completed Deployment
# ↑ ここでOfficeのアンインストールが完了 : 約1時間要している
# ↓ 続けて Trend Micro Worry-Free Business Securityのアンインストール 開始
2023-10-10 05:09:20Z [Information] (Invoke-AppMgmtFramework.ps1) Initiating PostDeployment
2023-10-10 05:09:22Z [Information] (Invoke-AppMgmtFramework.ps1) Proceeding with Application 'TrendMicroAgent' Uninstall
2023-10-10 05:09:22Z [Information] (Invoke-AppMgmtFramework.ps1) Executing command 'Start-Process -FilePath "C:\Program Files\Amazon\WorkSpacesConfig\ApplicationTemp\Office2016\TrendMicro\SCUT.exe" -ArgumentList "-noinstall" -Wait -PassThru'
2023-10-10 05:39:13Z [Information] (Invoke-AppMgmtFramework.ps1) Application 'TrendMicroAgent' Uninstall succeeded with Exit Code: 0
2023-10-10 05:39:13Z [Information] (Invoke-AppMgmtFramework.ps1) Completed PostDeployment
# ↑ ここでTrend Micro Worry-Free Business Securityのアンインストール完了 : 約30分要している
2023-10-10 05:39:13Z [Information] (Invoke-AppMgmtFramework.ps1) Office2016 Uninstall succeeded
2023-10-10 05:39:13Z [Information] (Invoke-AppMgmtFramework.ps1) Cleaning up the downloaded artifacts
2023-10-10 05:39:13Z [Information] (Invoke-AppMgmtFramework.ps1) Removed 'ApplicationTemp' from 'C:\Program Files\Amazon\WorkspacesConfig\Temp'
2023-10-10 05:39:13Z [Information] (Invoke-AppMgmtFramework.ps1) Removing scanner log path
2023-10-10 05:39:13Z [Information] (Invoke-AppMgmtFramework.ps1) Removed folder C:\Program Files\Amazon\WorkSpacesConfig\Logs\Scanner
2023-10-10 05:39:13Z [Information] (Invoke-AppMgmtFramework.ps1) Retrieving current state registry key value details for 'HKLM:\SOFTWARE\Amazon\SkyLight\wsa-khw7gclz4_1f1236b0-05d9-4a57-898c-efe13b34c9d1'
2023-10-10 05:39:13Z [Information] (Invoke-AppMgmtFramework.ps1) Current state registry key value details for 'HKLM:\SOFTWARE\Amazon\SkyLight\wsa-khw7gclz4_1f1236b0-05d9-4a57-898c-efe13b34c9d1': 
KeyName                   KeyValue                      
-------                   --------                      
state                     success                       
internalMessage           Office2016 Uninstall succeeded
stateLastUpdatedTime      10/10/23 05:39:13             
stateLastUpdatedTime_Utc  10/10/23 05:39:13             
executionTime             1696911157069                 
executionTime_Utc         1696911157069                 
status                    completed                     
statusLastUpdatedTime     10/10/23 05:39:13             
statusLastUpdatedTime_Utc 10/10/23 05:39:13             



2023-10-10 05:39:13Z [Information] (Invoke-AppMgmtFramework.ps1) Script end execution time in UTC: 10/10/23 05:39:13
2023-10-10 05:39:13Z [Information] (Invoke-AppMgmtFramework.ps1) Script total execution time in secs: '5196.8287055' Script execution total time in mins: '86.6138117583333'

原因について

前掲のアプリケーションログやイベントログなどの内容を調査しても目立ったエラーはありませんでした。

にもかかわらずOffice 2016およびTrend Micro Worry-Free Business Securityのアンインストール時間は異常に遅いです。
同等スペックでOffice 2019やOffice 2021はもっと早く完了するのでスペックの問題では無いでしょう。

明確な根拠はありませんが、こういう場合はウィルス対策ソフト(Trend Micro Worry-Free Business Security)のリアルタイムスキャンがボトルネックになりがちです。

そこでTrend Micro Worry-Free Business Securityを停止したパターン・事前にアンインストールしたパターンで処理時間に変化が起きるか調べてみました。

1. Trend Micro Worry-Free Business Securityを停止した場合

新しいWorkSpace環境を用意し、初回ログイン時にタスクマネージャーからTrend Micro Worry-Free Business Securityを停止しました。

これでTrend Microの各種サービスが停止済みになります。

この状態でOffice 2016のアンインストール処理を行ったところ以下の結果になりました。

内容 かかった時間 備考
処理を開始してから実際にアンインストールが始まるまでの時間 10分程度 PENDING_UNINSTALL → UNINSTALLING への状態変化にかかる時間
アンインストール処理時間 15分程度 Trend Micro Worry-Free Business Securityのアンインストールを含む
アンインストールが完了した時点からWorkSpaceが完全に停止するまでの時間 1~2分程度

結果、処理時間が大幅に改善されました。

ログの内容を抜粋するとこんな感じで、最初のケースと内容は同様なまま処理時間だけが変わっています。

AppMgmtFramework.logより抜粋

2023-10-10 08:56:21Z [Information] (Invoke-AppMgmtFramework.ps1) Initiating Deployment
2023-10-10 08:56:28Z [Information] (Invoke-AppMgmtFramework.ps1) Proceeding with Application 'Office2016' Uninstall
2023-10-10 08:56:28Z [Information] (Invoke-AppMgmtFramework.ps1) Executing command 'Start-Process -FilePath "C:\Program Files (x86)\Common Files\Microsoft Shared\OFFICE16\Office Setup Controller\Setup.exe" -ArgumentList "/uninstall ProPlus /config "C:\Program Files\Amazon\WorkSpacesConfig\ApplicationTemp\Office2016\ConfigUninstall.xml"" -Wait -PassThru'
2023-10-10 09:07:22Z [Information] (Invoke-AppMgmtFramework.ps1) Application 'Office2016' Uninstall succeeded with Exit Code: 0
2023-10-10 09:07:22Z [Information] (Invoke-AppMgmtFramework.ps1) Completed Deployment
# ↑ ここでOfficeのアンインストールが完了 : 約10分で完了
2023-10-10 09:07:22Z [Information] (Invoke-AppMgmtFramework.ps1) Initiating PostDeployment
2023-10-10 09:07:23Z [Information] (Invoke-AppMgmtFramework.ps1) Proceeding with Application 'TrendMicroAgent' Uninstall
2023-10-10 09:07:23Z [Information] (Invoke-AppMgmtFramework.ps1) Executing command 'Start-Process -FilePath "C:\Program Files\Amazon\WorkSpacesConfig\ApplicationTemp\Office2016\TrendMicro\SCUT.exe" -ArgumentList "-noinstall" -Wait -PassThru'
2023-10-10 09:12:27Z [Information] (Invoke-AppMgmtFramework.ps1) Application 'TrendMicroAgent' Uninstall succeeded with Exit Code: 0
2023-10-10 09:12:27Z [Information] (Invoke-AppMgmtFramework.ps1) Completed PostDeployment
# ↑ ここでTrend Micro Worry-Free Business Securityのアンインストール完了 : 約5分で完了
2023-10-10 09:12:27Z [Information] (Invoke-AppMgmtFramework.ps1) Office2016 Uninstall succeeded
2023-10-10 09:12:27Z [Information] (Invoke-AppMgmtFramework.ps1) Cleaning up the downloaded artifacts
2023-10-10 09:12:27Z [Information] (Invoke-AppMgmtFramework.ps1) Removed 'ApplicationTemp' from 'C:\Program Files\Amazon\WorkspacesConfig\Temp'
2023-10-10 09:12:27Z [Information] (Invoke-AppMgmtFramework.ps1) Removing scanner log path
2023-10-10 09:12:27Z [Information] (Invoke-AppMgmtFramework.ps1) Removed folder C:\Program Files\Amazon\WorkSpacesConfig\Logs\Scanner
2023-10-10 09:12:27Z [Information] (Invoke-AppMgmtFramework.ps1) Retrieving current state registry key value details for 'HKLM:\SOFTWARE\Amazon\SkyLight\wsa-khw7gclz4_970ff3b3-31f0-449a-8dc4-956fa40c553e'
2023-10-10 09:12:27Z [Information] (Invoke-AppMgmtFramework.ps1) Current state registry key value details for 'HKLM:\SOFTWARE\Amazon\SkyLight\wsa-khw7gclz4_970ff3b3-31f0-449a-8dc4-956fa40c553e': 
KeyName                   KeyValue                      
-------                   --------                      
state                     success                       
internalMessage           Office2016 Uninstall succeeded
stateLastUpdatedTime      10/10/23 06:12:27             
stateLastUpdatedTime_Utc  10/10/23 09:12:27             
executionTime             1696960557834                 
executionTime_Utc         1696928157834                 
status                    completed                     
statusLastUpdatedTime     10/10/23 06:12:27             
statusLastUpdatedTime_Utc 10/10/23 09:12:27             



2023-10-10 09:12:28Z [Information] (Invoke-AppMgmtFramework.ps1) Script end execution time in UTC: 10/10/23 09:12:28
2023-10-10 09:12:28Z [Information] (Invoke-AppMgmtFramework.ps1) Script total execution time in secs: '990.1691281' Script execution total time in mins: '16.5028188016667'

2. Trend Micro Worry-Free Business Securityをアンインストールした場合

前項の結果からTrend Micro Worry-Free Business Securityが原因と判断して良さそうですが、一応このパターンも試しておきました。

更に別のWorkSpace環境を用意し、初回ログイン時に「アプリと機能」からTrend Micro Worry-Free Business Securityをアンインストールしておきます。

この状態でOffice 2016のアンインストール処理を行ったところ以下の結果になりました。
「Trend Micro Worry-Free Business Securityをアンインストールしている分早くなるかな?」と思ったのですが、停止した場合と大して変わりませんでした。

内容 かかった時間 備考
処理を開始してから実際にアンインストールが始まるまでの時間 10分程度 PENDING_UNINSTALL → UNINSTALLING への状態変化にかかる時間
アンインストール処理時間 15分程度 Trend Micro Worry-Free Business Securityのアンインストールを含む
アンインストールが完了した時点からWorkSpaceが完全に停止するまでの時間 1~2分程度

ログの内容はこんな感じで、こちらも停止した場合と同様でした。

AppMgmtFramework.logより抜粋

2023-10-10 11:17:02Z [Information] (Invoke-AppMgmtFramework.ps1) Initiating Deployment
2023-10-10 11:17:11Z [Information] (Invoke-AppMgmtFramework.ps1) Proceeding with Application 'Office2016' Uninstall
2023-10-10 11:17:11Z [Information] (Invoke-AppMgmtFramework.ps1) Executing command 'Start-Process -FilePath "C:\Program Files (x86)\Common Files\Microsoft Shared\OFFICE16\Office Setup Controller\Setup.exe" -ArgumentList "/uninstall ProPlus /config "C:\Program Files\Amazon\WorkSpacesConfig\ApplicationTemp\Office2016\ConfigUninstall.xml"" -Wait -PassThru'
2023-10-10 11:27:27Z [Information] (Invoke-AppMgmtFramework.ps1) Application 'Office2016' Uninstall succeeded with Exit Code: 0
2023-10-10 11:27:27Z [Information] (Invoke-AppMgmtFramework.ps1) Completed Deployment
# ↑ ここでOfficeのアンインストールが完了 : 約10分で完了
2023-10-10 11:27:27Z [Information] (Invoke-AppMgmtFramework.ps1) Initiating PostDeployment
2023-10-10 11:27:27Z [Information] (Invoke-AppMgmtFramework.ps1) Proceeding with Application 'TrendMicroAgent' Uninstall
2023-10-10 11:27:27Z [Information] (Invoke-AppMgmtFramework.ps1) Executing command 'Start-Process -FilePath "C:\Program Files\Amazon\WorkSpacesConfig\ApplicationTemp\Office2016\TrendMicro\SCUT.exe" -ArgumentList "-noinstall" -Wait -PassThru'
2023-10-10 11:31:26Z [Information] (Invoke-AppMgmtFramework.ps1) Application 'TrendMicroAgent' Uninstall succeeded with Exit Code: 0
2023-10-10 11:31:26Z [Information] (Invoke-AppMgmtFramework.ps1) Completed PostDeployment
# ↑ ここでTrend Micro Worry-Free Business Securityのアンインストール完了 : 約4分で完了
2023-10-10 11:31:26Z [Information] (Invoke-AppMgmtFramework.ps1) Office2016 Uninstall succeeded
2023-10-10 11:31:26Z [Information] (Invoke-AppMgmtFramework.ps1) Cleaning up the downloaded artifacts
2023-10-10 11:31:26Z [Information] (Invoke-AppMgmtFramework.ps1) Removed 'ApplicationTemp' from 'C:\Program Files\Amazon\WorkspacesConfig\Temp'
2023-10-10 11:31:26Z [Information] (Invoke-AppMgmtFramework.ps1) Removing scanner log path
2023-10-10 11:31:26Z [Information] (Invoke-AppMgmtFramework.ps1) Removed folder C:\Program Files\Amazon\WorkSpacesConfig\Logs\Scanner
2023-10-10 11:31:26Z [Information] (Invoke-AppMgmtFramework.ps1) Retrieving current state registry key value details for 'HKLM:\SOFTWARE\Amazon\SkyLight\wsa-khw7gclz4_f49bfb83-e14c-412b-9477-57abb8918d03'
2023-10-10 11:31:26Z [Information] (Invoke-AppMgmtFramework.ps1) Current state registry key value details for 'HKLM:\SOFTWARE\Amazon\SkyLight\wsa-khw7gclz4_f49bfb83-e14c-412b-9477-57abb8918d03': 
KeyName                   KeyValue                      
-------                   --------                      
state                     success                       
internalMessage           Office2016 Uninstall succeeded
stateLastUpdatedTime      10/10/23 11:31:26             
stateLastUpdatedTime_Utc  10/10/23 11:31:26             
executionTime             1696936599061                 
executionTime_Utc         1696936599061                 
status                    completed                     
statusLastUpdatedTime     10/10/23 11:31:26             
statusLastUpdatedTime_Utc 10/10/23 11:31:26             



2023-10-10 11:31:27Z [Information] (Invoke-AppMgmtFramework.ps1) Script end execution time in UTC: 10/10/23 11:31:27
2023-10-10 11:31:27Z [Information] (Invoke-AppMgmtFramework.ps1) Script total execution time in secs: '888.2627703' Script execution total time in mins: '14.804379505'
2023-10-10 11:31:27Z [Information] (Invoke-AppMgmtFramework.ps1) Script 'Start-AppMgmtFramework.ps1' execution completed
2023-10-10 11:31:27Z [Information] (Invoke-AppMgmtFramework.ps1) Script 'Invoke-AppMgmtFramework.ps1' execution completed

所感

ここまでの結果からTrend Micro Worry-Free Business Securityが原因とみて間違いないでしょう。
Office 2016をアンインストールする際は事前にTrend Micro Worry-Free Business Securityを止めておくことをお勧めします。  

また、WorkSpace環境に独自にウィルス対策ソフトをインストールして運用することもあるかと思います。
その様な場合はOffice 2016に限らずアプリケーションのアンインストールに想定外の時間を要することがあるかもしれませんので注意しておくと良いでしょう。

本記事の内容が誰かの役に立てば幸いです。