ハイブリッドAzure AD参加済みカタログの作成
次のいずれかを使用して、ハイブリッドAzure AD参加済みカタログを作成できます:
- Citrix ProvisioningコンソールのCitrix Virtual Desktopsインストールウィザード。
- Studio UIまたはPowerShellコマンド。
この記事では、2つの異なる方法を使用したハイブリッドAzure AD参加済みカタログの作成について説明します。
主な手順
- ハイブリッドAzure AD環境をセットアップします。
- Citrix Provisioningサーバーをセットアップします。
- Citrix CloudまたはCitrix Virtual Apps and Desktopsサイトにファームを参加させます(Studio UIまたはPowerShellを使用する場合)。
- マスターターゲットデバイスを作成します。
- イメージ作成ウィザードを実行してvDiskを作成します。
- ハイブリッドAzure AD参加済みカタログを作成します。
ハイブリッドAzure AD環境をセットアップする
ハイブリッドAzure ADをセットアップし、ドメインコントローラーでMicrosoft Entra Connect Syncを有効にします。詳しくは、「Microsoft Entraハイブリッド参加を構成する」を参照してください。
Citrix Provisioningをセットアップする
Citrix Provisioningをセットアップするには、まず、Provisioningサーバーとその他のインフラストラクチャを構成します。「Citrix Provisioningソフトウェアのインストール」を参照してください。
Citrix CloudまたはCitrix Virtual Apps and Desktopsサイトにファームを参加させる
ハイブリッドAzure AD参加済みカタログをStudio UIまたはPowerShellを使用して作成する場合、構成ウィザードを実行して、ファーム内のCitrix ProvisioningサーバーをCitrix CloudまたはCitrix Virtual Apps and Desktopsサイトに参加させます。
「Citrix CloudまたはCitrix Virtual Apps and Desktopsサイトへの参加」を参照してください。
マスターターゲットデバイスを作成する
- マスターターゲットデバイスを作成します。
- コマンド
dsregcmd /leave
を実行して、マスターターゲットデバイスをハイブリッドAzure AD参加から解除します。
注:
Windows 11マスターデバイスの場合は、次のレジストリ値をレジストリキー
HKLM\Software\AzureAD\VirtualDesktop
に追加します:
- 値:種類 [DWORD]:1(非永続仮想マシンの場合)、2(永続仮想マシンの場合)
- 値:ユーザー [DWORD]:1(シングルセッションの場合)、2(マルチセッションの場合)
イメージ作成ウィザードを実行してvDiskを作成する
イメージ作成ウィザードを使用して、マスターターゲットデバイスからvDiskを作成します。詳しくは、「イメージ作成ウィザードによる新しい仮想ディスクの作成」を参照してください。
イメージ作成ウィザードを実行してvDiskを作成するときに、ハイブリッドAzure AD参加済みカタログを作成する場合は、[最適化設定の編集] ダイアログボックスの [ハイブリッドAzure AD参加の準備をする] を選択します。
ハイブリッドAzure AD参加済みカタログを作成する
次のいずれかを使用して、Citrix ProvisioningハイブリッドAzure AD参加済みカタログを作成できます:
- Citrix ProvisioningコンソールのCitrix Virtual Desktopsインストールウィザード。
- MCSプロビジョニング(Studio UIまたはPowerShellコマンド)。
Citrix Virtual Desktopsインストールウィザードの使用
- Citrix Virtual Apps and Desktopsウィザードを使用してターゲットデバイスを作成する方法について詳しくは、「Citrix Virtual Apps and Desktopsインストールウィザードを使用して仮想デスクトップを仮想マシンに展開する」を参照してください。
- ターゲットデバイスの作成後、完全な構成インターフェイスでCitrix Provisioningカタログを確認します。
- デリバリーグループの作成を完了します。
- 約90分後、[デリバリーグループ] 一覧でデリバリーグループを見つけて、[詳細] タブを確認します。ターゲットデバイスがHybrid Azure AD Joinを完了すると、[未登録マシン] の値は0になっている必要があります。
注:
参加の時間は異なる場合があります。ただし、ターゲットデバイスは90分以内に参加する必要があります。
Studioプロビジョニング
Studio UIまたはPowerShellコマンドを使用して、Citrix ProvisioningハイブリッドAzure AD参加済みカタログを作成できます。Studioプロビジョニングを使用する場合、ターゲットデバイスはすぐにハイブリッドAzure ADに参加します。
現在、以下のハイパーバイザーがサポートされます:
Hypervisor | CVADリリースが必要 | サポートされているCitrix Provisioningバージョン |
---|---|---|
Azure | 2311 | 2311以降 |
VMware | 2402 | 2402以降 |
XenServer | 2407 | 2407以降 |
注:
VMwareおよびXenServer環境では、現在PowerShellコマンドのみを使用して、Citrix ProvisioningハイブリッドAzure AD参加済みカタログを作成できます。
Studio UIの使用
Studio UIインターフェイスを使用してマシンカタログを作成する方法については、「Citrix Studioインターフェイスを使用してCitrix Provisioningカタログを作成する」を参照してください。
[マシンID] ページで、[Hybrid Azure Active Directory joined] を選択します。
PowerShellの使用
PowerShellコマンドを使用してカタログを作成するには、次の手順を実行します:
-
New-AcctIdentityPool
コマンドを使用してハイブリッドAzure AD IDプールを作成します。
注:
IDプールを作成するときは、指定したドメインと組織単位(OU)が、ハイブリッドAzure AD環境のセットアップ時に作成したものと同じであることを確認します。
-
New-AcctADAccount
コマンドを使用してADアカウントを作成します。 -
Set-AcctAdAccountUserCert
コマンドを使用してADアカウントにuserCertificate
を設定します。 -
New-ProvScheme
コマンドを使用してプロビジョニングスキームを作成します。 -
New-BrokerCatalog
コマンドを使用してブローカーカタログを作成します。 -
[完全な構成]インターフェイス>[マシンカタログ] を使用して仮想マシンを追加できます。または、代わりにPowerShellコマンド
New-ProvVmNew-BrokerMachine
を使用できます。
例:これは、Azure上のCitrix Provisioning に使用されるものと同じ拡張機能のサンプルスクリプトです。VMwareおよびXenServer PowerShellコマンドについては、「PowerShellコマンドを使用したCitrix Provisioningカタログの作成」を参照してください。
asnp citrix*
# General variable settings
$ipName = "ip-ex"
$domainPrefix = "abcdef"
$domainExtension = "com"
$ou = "mixxxx-haad"
$username = "username"
$password = "password"
# ProvScheme configurations
$provSchemeName = "haad-ex"
$hostingUnit = "hosting unit"
$resourceGroup= "mixxxx"
$machineProfile = "XDHyp:\HostingUnits$hostingUnit\machineprofile.folder$resourceGroup.resourcegroup\mixxxx -standard.templatespec\v1.templatespecversion"
$serviceOffering = "XDHyp:\HostingUnits$hostingUnit\serviceoffering.folder\Standard_D2s_v3.serviceoffering"
$networkMapping = @{"0"=“XDHyp:\HostingUnits$hostingUnit\virtualprivatecloud.folder$resourceGroup.resourcegroup\mixxxx-vnet.virtualprivatecloud\default.network"}
# PVS settings
$pvsFarmName = "mixxxx-farm"
$pvsSiteName = "mixxxx-site"
$pvsDiskName = "pvs-vda-haad"
# Basic PVS objects
$pvsSite = Get-HypPvsSite -SiteName $pvsSiteName -FarmName $pvsFarmName
$vDisk = Get-HypPvsDiskInfo -SiteId $pvsSite.SiteId | ? { $_.DiskLocatorName -eq "$pvsDiskName" }
$customProperties = @"
<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="PersistWBC" Value="True" />
<Property xsi:type="StringProperty" Name="ResourceGroups" Value="$resourceGroup" />
</CustomProperties>
"@
# 1. Create a IdentityPool
New-AcctIdentityPool `
-IdentityPoolName $ipName `
-IdentityType HybridAzureAD `
-NamingScheme "$($provSchemeName)##" `
-NamingSchemeType Numeric `
-Domain "$domainPrefix.$domainExtension" `
-OU "OU=$ou,DC=$domainPrefix,DC=$domainExtension"
# 2. Create ADAccounts
$password = ConvertTo-SecureString $password -AsPlainText -Force
New-AcctADAccount `
-IdentityPoolName $ipName `
-Count 1 `
-StartCount 1 `
-ADUserName $username `
-ADPassword $password `
-OutVariable result
# 3. Set ADAccount userCertificate
Set-AcctAdAccountUserCert `
-IdentityPoolName $ipName `
-ADUserName "$domainPrefix$username" `
-ADPassword $password `
-All
# 4. Create a ProvScheme
$ps = New-ProvScheme -CleanOnBoot `
-ProvisioningSchemeName $provSchemeName `
-HostingUnitName $hostingUnit `
-IdentityPoolName $ipName `
-MachineProfile $machineProfile `
-ServiceOffering $serviceOffering `
-NetworkMapping $networkMapping `
-PVSSite $pvsSite.SiteId `
-PVSvDisk $vDisk.DiskLocatorId `
-ProvisioningSchemeType PVS `
-UseWriteBackCache -WriteBackCacheDiskSize 127 -WriteBackCacheMemorySize 256 `
-CustomProperties $customProperties
# 5. Create a Broker Catalog
New-BrokerCatalog `
-AllocationType Random `
-Name $provSchemeName `
-PersistUserChanges Discard `
-ProvisioningType "MCS" `
-SessionSupport SingleSession `
-ProvisioningSchemeId $ps.ProvisioningSchemeUid
<!--NeedCopy-->