Windows Server
 Computer >> コンピューター >  >> システム >> Windows Server

Windows Server 2012 R2/2016 RDSのユーザープロファイルディスク(UPD)の設定と活用方法

ユーザープロファイルディスク(UPD)とは

ユーザープロファイルディスク(User Profile Disks:UPD)は、Windows Server 2012以降のリモートデスクトップサービス(RDS)に搭載された新機能です。RDS環境におけるローミングプロファイルやフォルダーリダイレクトの代替手段として利用できます。UPDのポイントは、ユーザーのプロファイルデータやアプリケーションデータを、ネットワーク上の専用共有フォルダー内に個別のVHDX仮想ディスクファイルとして保存する点です。この仮想ディスクは、ユーザーがRDSサーバーにサインインした時点でセッションにマウントされ、ログオフすると自動的にマウント解除されます(プロファイルへのすべての変更はVHDXファイルに保存されます)。

本記事では、Windows Server 2012 / 2012 R2 / 2016でリモートデスクトップサービスの役割が稼働するサーバーにおいて、ユーザープロファイルディスクを構成・運用する方法を解説します。

Windows Server RDSでのユーザープロファイルディスクの構成手順

まず、ユーザープロファイルをVHDXディスクとして格納するための共有フォルダーを、社内の任意のファイルサーバー上に作成します(UPDディスクの高可用性が必要な場合は、クラスター化されたファイルリソース上にUPDファイルを配置することも可能です)。本記事の例では、このフォルダーのパスは\\rdvh1\DemoLabOficeAppとします。RDSコレクションを構成するサーバーには、この共有フォルダーへのフルアクセス権限を付与する必要があります。

ヒント: 1つのRDSコレクション内では、1ユーザーにつき1つのVHDXプロファイルファイルしか存在できません。あるユーザーが2つの異なるコレクションからリソースに接続する場合は、コレクションごとに個別のプロファイルディスクを作成する必要があります。

ユーザープロファイルディスクモードは、リモートデスクトップサービスのコレクション設定から有効化・構成できます。新しいコレクションを作成する際に有効化することもできますし、後から設定を追加することも可能です。

Windows Server 2012 R2/2016 RDSのユーザープロファイルディスク(UPD)の設定と活用方法

本記事の例ではコレクションがすでに存在するため、サーバーマネージャーコンソールで対象のコレクションを選択し、左上のタスク(Tasks)プロパティの編集(Edit Properties)をクリックします。

Windows Server 2012 R2/2016 RDSのユーザープロファイルディスク(UPD)の設定と活用方法

次に「ユーザープロファイルディスク」セクションでEnable user profile disksにチェックを入れ、事前に作成した共有フォルダーのパス(\\rdvh1\DemoLabOficeApps)とプロファイルディスクの最大サイズ(ここでは20GBとします)を指定します。設定を保存しましょう。

Windows Server 2012 R2/2016 RDSのユーザープロファイルディスク(UPD)の設定と活用方法

変更を保存したら、プロファイルディスク用フォルダーのNTFSアクセス許可が自動的に変更されていることを確認してください。本記事の例では、コレクションはRDSH01サーバー1台で構成されており、このサーバーにフルコントロール権限が付与されています。

Windows Server 2012 R2/2016 RDSのユーザープロファイルディスク(UPD)の設定と活用方法

共有フォルダーレベルでも、RDSH01サーバーに対してフルコントロール権限が付与されています。

Windows Server 2012 R2/2016 RDSのユーザープロファイルディスク(UPD)の設定と活用方法

RDSコレクションに新しいRDセッションホストサーバーを追加すると、ウィザードが自動的にフォルダーのアクセス許可を変更し、新しいサーバーにアクセス権を付与してくれます。ターミナルファームをスケールアウトする際に、プロファイルフォルダーの権限設定を忘れる心配がないため非常に便利です。

UPD:VHDXファイルとして保存されるユーザープロファイル

ユーザープロファイルを格納するネットワーク共有フォルダーを開くと、UVHD-template.vhdxというファイルが保存されているはずです。

Windows Server 2012 R2/2016 RDSのユーザープロファイルディスク(UPD)の設定と活用方法

このファイルはユーザープロファイルディスクのテンプレートです。ユーザーが初めてRDSサーバーにログオンするとき、このテンプレートがコピーされ、ファイル名にユーザーのSIDを含むVHDXファイルとして作成されます。

Windows Server 2012 R2/2016 RDSのユーザープロファイルディスク(UPD)の設定と活用方法

ヒント: UPDのファイル名とユーザー名を対応付けるには、別途スクリプトを使用する必要があります。たとえばShowUPDFolderDetails.ps1などが利用できます。また、Get-ADUserコマンドレットを使ってSIDからアカウント名に変換することも可能です。

Get-ADUser -Identity S-1-5-21-32549751-3956249758-2943215497-23733695

Windows Server 2012 R2/2016 RDSのユーザープロファイルディスク(UPD)の設定と活用方法

それでは、ユーザープロファイルディスクの中身を見てみましょう。VHDXファイルを右クリックしてマウント(Mount)を選択します。なお、UPDディスクは1台のRDSホスト上の1セッションでのみ使用可能(排他アクセス)です。ユーザーが現在RDSサーバー上でそのUPDを使用している場合、VHDXディスクをマウントすることはできません。

Windows Server 2012 R2/2016 RDSのユーザープロファイルディスク(UPD)の設定と活用方法

ご覧のとおり、VHDXディスクには標準的なユーザープロファイルのフォルダーやファイル一式が含まれています。ログオン時、ユーザーはプロファイル内のデータに完全に透過的にアクセスできます。

Windows Server 2012 R2/2016 RDSのユーザープロファイルディスク(UPD)の設定と活用方法

RDセッションホストサーバー側では、ユーザーの.vhdxファイルがC:\users\<username>にマウントされ、以下のように表示されます。

Windows Server 2012 R2/2016 RDSのユーザープロファイルディスク(UPD)の設定と活用方法

注意点として、UPDドライブはRDSサーバーのWindows OSバージョンに紐付けられます。あるバージョンのWindows ServerのRDSサーバーで作成されたUPDユーザープロファイルを、別のバージョンのWindows Serverへ移行して使用することはできません。

データはVHDXファイルにリアルタイムで書き込まれます。つまり、RDSサーバー上のユーザープロファイルにデータをコピーすると、共有ストレージ上のVHDXファイルのサイズは即座に増加します。

システム内にすでにユーザープロファイルフォルダーが存在する場合、古いプロファイルのフォルダーは<username>-BACKUP-<number>という名前に変更されます。

Windows Server 2012 R2/2016 RDSのユーザープロファイルディスク(UPD)の設定と活用方法

VHDXディスクは、VDIまたはRDSサーバー上でユーザーセッションが開始されるとマウントされます。マウント済みのUPDディスクの一覧は、mountvolユーティリティで確認できます。

デフォルトでは、ユーザープロファイルディスクにはユーザープロファイルの全内容が含まれます。しかし、RDSコレクションの設定で同期対象ディレクトリから特定のフォルダーを除外したり、逆に特定のフォルダーのみを保存対象として指定したりすることも可能です。除外リストに登録されたディレクトリへの変更は、ターミナルセッション中に行われたものであっても、共有フォルダー上のVHDXディスクには保存されません。

Windows Server 2012 R2/2016 RDSのユーザープロファイルディスク(UPD)の設定と活用方法

もう一方のオプションでは、UPDプロファイルに保存するディレクトリを特定のものだけに限定して構成できます。

Windows Server 2012 R2/2016 RDSのユーザープロファイルディスク(UPD)の設定と活用方法

必要に応じて最後のオプションを使うと、スタート画面の設定(appsfolder.itemdata-msファイルに保存されています)を保持するシナリオなども実現できます。この例では、UPDに追加保存するパスとして\AppData\Local\Microsoft\Windowsフォルダーのみを追加しています。

Windows Server 2012 R2/2016 RDSのユーザープロファイルディスク(UPD)の設定と活用方法

PowerShellによるユーザープロファイルディスクのサイズ変更

ユーザーのUPDプロファイルが入った仮想VHDXドライブは、Hyper-VモジュールのPowerShellコマンドレットResize-VHDを使って拡張できます。

Net use U: \\rdvh1\DemoLabOficeApps
Resize-VHD -Path u:\UVHD-<SID>.vhdx -SizeBytes 40GB
Net use U: /delete

Windows 10のデスクトップからResize-VHDコマンドレットを実行したい場合は、「Hyper-V → Hyper-Vプラットフォーム → Hyper-Vサービス」の機能をインストールしておく必要があります。

Windows Server 2012 R2/2016 RDSのユーザープロファイルディスク(UPD)の設定と活用方法

続いて、ディスクの管理コンソールのGUIからボリュームを拡張します(操作 → VHDの接続 → ボリュームの拡張)。

Windows Server 2012 R2/2016 RDSのユーザープロファイルディスク(UPD)の設定と活用方法

または、以下のPowerShellスクリプトを使用すれば、VHDXファイルを最大利用可能サイズまで自動的に拡張できます。
<#
.Synopsis
This script extend size of VHDX file and resize the disk partition to Max
#>
Param(
[Parameter(Mandatory=$true,ValueFromPipeline=$true)]
[alias("Path")]
[string]$vhdxFile,
[Parameter(Mandatory=$true,ValueFromPipeline=$true)]
[alias("Size")]
[int64]$vhdxNewSize
)
begin{
try {
Mount-VHD -Path $vhdxFile -ErrorAction Stop
}
catch {
Write-Error "File $vhdxFile is busy"
Break
}
$vhdx = Get-VHD -Path $vhdxFile
if ($vhdx.Size -ge $vhdxNewSize){
Write-Warning "File $vhdxFile already have this size!"
$vhdx | Dismount-VHD
Break
}
}
process{
Dismount-VHD -Path $vhdxFile
Resize-VHD -Path $vhdxFile -SizeBytes $vhdxNewSize
$vhdxxpart = Mount-VHD -Path $vhdxFile -NoDriveLetter -Passthru | Get-Disk | Get-Partition
$partsize = $vhdxxpart | Get-PartitionSupportedSize
$vhdxxpart | Resize-Partition -Size $partsize.SizeMax
}
end{
Dismount-VHD -Path $vhdxFile
}

なお、アクティブなRDSセッション中はユーザーのUPDディスクを拡張できない点に注意してください。

VHDXファイル内部のユーザーデータを削除済みで、実際のディスク使用量が割り当てサイズより小さくなっている場合は、以下のコマンドでUPDファイルのサイズを縮小できます。

resize-VHD \\rdvh\DemoLabOficeApps\UVHD-<SID>.vhdx –ToMinimumSize

その後、次のコマンドを実行します。

Optimize-vhd -path \\rdvh1\DemoLabOficeApps\UVHD-<SID>.vhdx -mode full

まとめ:UPD導入時の注意点

以上、Windows Server 2016および2012 R2で稼働するRDS/VDIソリューションにおけるユーザープロファイルディスクの主な特徴を解説しました。UPDの構成は、ローミングプロファイルやリダイレクトフォルダーの構成よりもはるかに簡単です。ディスクはRDSコレクションに紐付けられるため、複数のサーバーで共有プロファイルを使用しても破損しにくい点も標準プロファイルとの大きな違いです。ユーザープロファイルディスクは、SMB共有、CSV、SOFS、SAN、ローカルディスクなどに保存できます。ただしMicrosoftによると、UPD使用時はユーザーのデスクトップ環境の読み込み速度が低下する点には留意が必要です。

UPDプロファイルをDFSサーバーに保存する予定がある場合は、DFSサーバーにWindows Server 2012 R2がインストールされている必要があります。それ以前のバージョンのWindows Serverを使用すると、次のようなエラーが発生します。

Unable to enable user disks on rVHDShare. Could not create template VHD. Error Message: The network location "\\woshub.com\namespace\UserProfileDisk" is not available.

また、ファイルサーバー側ではSMB 3.02(Windows Server 2012 R2)以降のバージョンを使用することが推奨されます。

いずれにせよ、ユーザープロファイルディスクは比較的新しい技術であるため、本番環境への大規模展開の前に、テスト環境で動作や起こりうる問題を十分に検証しておくことをおすすめします。

  1. Windows Server Backupを使ってActive Directoryサーバー(2016/2012)をバックアップ・スケジュールする方法

    本記事では、Windows Server Backupアプリケーションを使用して、Active Directoryが稼働するWindows Server 2016またはServer 2012をバックアップする方法をご紹介します。この記事を読み終える頃には、Windows Server 2016/2012上でサーバーの完全バックアップを実行・スケジュール設定できるようになり、万一トラブルが発生した際にもサーバーを復元できるようになります。 ご存じのとおり、Windows Server 2008、2012/2012R2、2016では「システムの復元」機能は利用できません(サポートされていません)。

  2. Windows Server 2016/2012でバックアップを削除する方法|wbadminコマンドの使い方を徹底解説

    Windows Serverバックアップユーティリティを使用して、Active DirectoryやスタンドアロンのWindows Server 2016または2012のバックアップを行っていると、バックアップコピーが複数蓄積されることで、バックアップ先ディスクの容量が不足することがあります。このような問題でお困りの方は、ぜひ本記事をご覧ください。 Windows Serverバックアップツールを使用すると、管理者はオペレーティングシステム、インストール済みアプリケーション、Active Directoryに関するすべての情報(システム状態バックアップ)を含むサーバーデータ全体のフルバックアッ