MicrosoftのAzure Virtual Desktop (AVD)で利用するWindowsデスクトップ環境を作ります。
AzureでMarketplaceから提供されているイメージをひな形として、日本語UIを持ったWindows 10 multi-session (FSLogix入り)の上に、Microsoft 365 Apps (WordとかExcelとか)が入ったマスターイメージを作っていきます。
一番作業手順が少ない例を目指しています。
完成するマスターイメージ
- Windows 10 Enterprise multi-session
- FSLogix (Profile Container)
- Microsoft 365 Apps
- Microsoft OneDrive
- Microsoft Teams メディア最適化
- 日本語UI
単にアプリをインストールするだけではなくて、AVDで利用するイメージ用にOSの設定なども行います。
作成フロー
- Marketplaceで提供されているイメージを準備
- Windows 10の日本語化
- Windows Updateで最新化
- Microsoft 365 Apps 日本語版のインストール
- イメージの汎用化
- マスターイメージのキャプチャ
冗長にならないように、仮想マシンの操作などAzureの基本的な部分は解説を省略しています。
Marketplaceで提供されているイメージを準備
英語版のイメージをもとに、日本語イメージを作成していきます。
仮想マシンを作成する際、Windows 10 Enterprise multi-sessionを選択します。Microsoft 365 Appsも入ったイメージもありますが、日本語版をインストールするのでここでは不要です。
機能面もそうですが、サポートライフサイクルの観点からも、なるべく最新のバージョンを選択することをお勧めします。
作成する仮想マシンの構成はデフォルト、もしくは標準的なもので十分です。
Windows 10の日本語化
[Settings]、[Time & Language]、[Language]、[Preferred languages]から[Add a language]を選んで、日本語をインストールします。
インストール中、[Set as my Windows display language]をオンにしておきます。なお、この画面はWindows 10のバージョンによって異なることがあります。
インストールが終われば表示言語の切り替えでサインオフするよう促されるので、いったんサインオフしてもう一度ログインしなおします。
ログインしなおしたデスクトップで[設定]、[時刻と言語]、[地域]と開いていき、[国または地域]に[日本]を指定します。
コントロールパネルを開き、[日付、時刻、または数値の形式の変更]、[管理]、[ようこそ画面と新しいユーザーアカウント]内の[設定のコピー] ボタンを押します。
[ようこそ画面とシステムアカウント]と[新しいユーザーアカウント]のチェックボックスをオンにします。
再起動を促されますので、再起動します。
再起動が終われば、ファイアウォールの設定を行います。これは、言語パックをインストールするときだけ必要になる手順です。理由はこのあたりで。
PowerShellを管理者権限で起動して、下記を実行します。
netsh advfirewall firewall add rule name="Windows Remote Management (HTTP-In)" dir=in action=allow service=any enable=yes profile=any localport=5985 protocol=tcp
Enable-PSRemoting -Force
Windows Updateで最新化
Windows Updateですべてのアップデートを適用します。
再起動が必要になる場合もあります。
これで、Windows 10の日本語化は完了です。
Microsoft 365 Apps 日本語版のインストール
Microsoft Cloud Workshopのここで紹介されている方法で、スクリプトを使ってインストールします。
このスクリプトを使うことで、
で解説されているAVDのイメージに対する推奨設定を自動的に行うことができます。
まず、スクリプトが入ったzipファイルをここからダウンロードし、Windows 10内のドキュメント
フォルダに展開します。
展開したファイルの中のCustomizations\Customizations\Prepare-WVDImage\Office365\Configuration.xml
を右クリックして、編集
を選びます。
Language ID
にja-jp
を指定し上書き保存します。
- オリジナルファイル
<Configuration>
<Add OfficeClientEdition="64" Channel="Monthly">
<Product ID="O365ProPlusRetail">
<Language ID="en-us" />
<ExcludeApp ID="Groove" />
<ExcludeApp ID="Lync" />
<ExcludeApp ID="OneDrive" />
<ExcludeApp ID="Teams" />
</Product>
</Add>
<Property Name="SharedComputerLicensing" Value="1" />
<Property Name="PinIconsToTaskbar" Value="TRUE" />
<Property Name="SCLCacheOverride" Value="0" />
<Property Name="FORCEAPPSHUTDOWN" Value="FALSE" />
<Property Name="DeviceBasedLicensing" Value="0" />
<AppSettings>
<User Key="software\microsoft\office\16.0\excel\options" Name="defaultformat" Value="51" Type="REG_DWORD" App="excel16" Id="L_SaveExcelfilesas" />
<User Key="software\microsoft\office\16.0\powerpoint\options" Name="defaultformat" Value="27" Type="REG_DWORD" App="ppt16" Id="L_SavePowerPointfilesas" />
<User Key="software\microsoft\office\16.0\word\options" Name="defaultformat" Value="" Type="REG_SZ" App="word16" Id="L_SaveWordfilesas" />
</AppSettings>
<Display Level="None" AcceptEULA="TRUE" />
<Logging Level="Standard" Path="%WINDIR%\Logs\Software" />
</Configuration>
- 変更後
<Configuration>
<Add OfficeClientEdition="64" Channel="Monthly">
<Product ID="O365ProPlusRetail">
<Language ID="ja-jp" />
<ExcludeApp ID="Groove" />
<ExcludeApp ID="Lync" />
<ExcludeApp ID="OneDrive" />
<ExcludeApp ID="Teams" />
</Product>
</Add>
<Property Name="SharedComputerLicensing" Value="1" />
<Property Name="PinIconsToTaskbar" Value="TRUE" />
<Property Name="SCLCacheOverride" Value="0" />
<Property Name="FORCEAPPSHUTDOWN" Value="FALSE" />
<Property Name="DeviceBasedLicensing" Value="0" />
<AppSettings>
<User Key="software\microsoft\office\16.0\excel\options" Name="defaultformat" Value="51" Type="REG_DWORD" App="excel16" Id="L_SaveExcelfilesas" />
<User Key="software\microsoft\office\16.0\powerpoint\options" Name="defaultformat" Value="27" Type="REG_DWORD" App="ppt16" Id="L_SavePowerPointfilesas" />
<User Key="software\microsoft\office\16.0\word\options" Name="defaultformat" Value="" Type="REG_SZ" App="word16" Id="L_SaveWordfilesas" />
</AppSettings>
<Display Level="None" AcceptEULA="TRUE" />
<Logging Level="Standard" Path="%WINDIR%\Logs\Software" />
</Configuration>
PowerShellを管理者権限で起動して、スクリプトのあるフォルダーに移動します。
cd Documents\Customizations\Customizations\Prepare-WVDImage
(カレントフォルダーがユーザーフォルダーであると仮定しています)
下記、実行します。
Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process -Force
.\Prepare-WVDImage.ps1 -DisplayForm
下記の画面が表示されるので、必要なアプリを指定してExecute
を押します。
- Install Office 365 ProPlus
月次チャンネルで最新バージョンのMicrosoft 365 Apps for enterpriseをインストールします。
パラメータは必要に応じて変更します。指定しないこともできます。
- Install FSLogix Agent
最新版のFSLogixをインストールします。プロファイルを置くVHDの場所をここで指定することもできますし、グループポリシーで指定することも可能です。
- Install OneDrive per Machine
マルチセッションでOneDriveが使えるようにインストールします。既知のフォルダー(デスクトップやドキュメントなど)をOneDriveに置くときに、Known Folder MoveのためのAzure ADのテナントIDを指定することもできます。
- Install Microsoft Teams per Machine
最新バージョンのMicrosoft Teamsをインストールすることができます。メディア最適化の設定もされます。
- Install Microsoft Edge Enterprise
最新バージョンのビジネス向けEdgeをインストールすることができます。
- Disable All Software Updates
マスターイメージを固定化して、アップデートを停止させます。
- Remove inbox Windows 10 Apps
仮想デスクトップではあまり使わないストアアプリを削除します。削除するリストは、展開したスクリプトフォルダの中のCustomizations\Customizations\RemoveApps\RemoveApps.xml
に記述されています。FSLogixの環境では、ログインが速くなる可能性があります。
- Run System Clean Up (CleanMgr.exe)
ディスクをイメージ用にCleanMgr.exeを使ってクリーンアップします。
イメージの汎用化
アプリケーションのインストールが終われば、再起動し、SysPrepを、管理者モードのコマンドラインから、下記のように実行します。終われば自動的にシャットダウンされます。
C:\Windows\System32\Sysprep\sysprep.exe /generalize /oobe /shutdown
マスターイメージのキャプチャ
イメージを保存するため、仮想マシンのキャプチャを行います。
状態が停止済みであることを確認して、キャプチャを押します。
これで、ホストプールに展開して利用することができます。
IME利用の注意点
- デスクトップクライアント
キーマップにご注意ください。クライアントで109キーボードを使っているにも関わらず101キーボードになっている場合は、クライアントのハードウェアキーボードの設定をまず確認するとよいでしょう。
また、バージョン2004のイメージは、WindowsデスクトップクライアントからだとIMEが現在利用できないようなので、これもご注意ください。Webクライアントは利用できます。
- Webクライアント
注意: 2021年4月現在、日本語(106/109 キー)を選択している際に、¥(円マーク)および\(バックスラッシュ)キーが反応しません。
この問題についてはここに解説されています。