Citrix Provisioning

创建加入了混合 Azure AD 的目录

可以使用以下方法之一创建加入了混合 Azure AD 的目录:

  • Citrix Provisioning 控制台中的 Citrix Virtual Desktops 设置向导。
  • Studio 用户界面或 PowerShell 命令。

本文介绍了如何使用两种不同的方式创建加入了混合 Azure AD 的目录。

关键步骤

  1. 设置混合 Azure AD 环境。
  2. 设置 Citrix Provisioning 服务器。
  3. 使用 Studio 用户界面或 PowerShell 时,将您的场加入 Citrix Cloud 或 Citrix Virtual Apps and Desktops 站点。
  4. 创建主目标设备。
  5. 运行映像向导以创建虚拟磁盘。
  6. 创建加入了混合 Azure AD 的目录。

设置混合 Azure AD 环境

在域控制器上设置混合 Azure AD 并启用 Microsoft Entra Connect Sync。有关信息,请参阅 Configure Microsoft Entra hybrid join(配置 Microsoft Entra 混合加入)。

设置 Citrix Provisioning

要设置 Citrix Provisioning,请首先配置 Provisioning 服务器以及其他基础结构。请参阅安装 Citrix Provisioning 软件组件

将您的场加入 Citrix Cloud 或 Citrix Virtual Apps and Desktops 站点

如果您想使用 Studio 用户界面或 PowerShell 创建加入了混合 Azure AD 的目录,请运行配置向导,以将场中的 Citrix Provisioning 服务器加入到 Citrix Cloud 或 Citrix Virtual Apps and Desktops 站点。

请参阅加入 Citrix Cloud 或 Citrix Virtual Apps and Desktops 站点

创建主目标设备

  1. 创建主目标设备。
  2. 运行命令 dsregcmd /leave 保留加入了混合 Azure AD 中的主目标设备。

注意:

对于 Windows 11 主设备,请将以下注册表值添加到注册表项 HKLM\Software\AzureAD\VirtualDesktop 中:

  • 值:类型 [DWORD]:1(适用于非永久性 VM),2(适用于永久性 VM)
  • 值:用户 [DWORD]:1(适用于单会话),2(适用于多会话)

运行映像向导以创建虚拟磁盘

使用映像向导以从主目标设备创建虚拟磁盘。有关详细信息,请参阅使用映像向导创建虚拟磁盘

运行映像向导创建虚拟磁盘时,如果要创建加入了混合 Azure AD 的目录,请在编辑优化设置对话框中选择 Prepare for Hybrid Azure AD join(为混合 Azure AD 加入做好准备)。

为混合 Azure AD 加入做好准备

创建加入了混合 Azure AD 的目录

可以使用以下方法之一创建 Citrix Provisioning 加入了混合 Azure AD 的目录:

  • Citrix Provisioning 控制台中的 Citrix Virtual Desktops 设置向导。
  • MCS 预配(Studio 用户界面或 PowerShell 命令)。

使用 Citrix Virtual Desktops 设置向导

  1. 有关如何使用 Citrix Virtual Desktops 设置向导创建目标设备的信息,请参阅使用 Citrix Virtual Apps and Desktops 设置向导将虚拟桌面部署到 VM
  2. 创建目标设备后,请在“完整配置”界面上查看 Citrix Provisioning 目录。
  3. 完成交付组的创建。
  4. 大约 90 分钟后,在“交付组”列表中找到交付组,然后选中详细信息选项卡。目标设备完成混合 Azure AD 加入后,未注册的计算机的值必须为

注意:

加入时间可能会有所差别。但是,目标设备必须在 90 分钟内加入。

Studio 预配

可以使用 Studio 用户界面或 PowerShell 命令创建 Citrix Provisioning 加入了混合 Azure AD 的目录。如果使用 Studio 预配,目标设备将立即加入混合 Azure AD。

目前支持以下虚拟机管理程序:

虚拟机管理程序 所需的 CVAD 版本 支持的 Citrix Provisioning 版本
Azure 2311 2311 及更高版本
VMware 2402 2402 及更高版本
XenServer 2407 2407 及更高版本

注意:

目前,您只能使用 PowerShell 命令在 VMware 和 XenServer 环境中创建 Citrix Provisioning 加入了混合 Azure AD 的目录。

使用 Studio 用户界面

有关使用 Studio UI 界面创建计算机目录的信息,请参阅使用 Citrix Studio 界面创建 Citrix Provisioning 目录

计算机标识页面上,选择加入了混合 Azure Active Directory

使用 PowerShell

请执行以下步骤,使用 PowerShell 命令创建目录:

  1. 使用 New-AcctIdentityPool 命令创建混合 Azure AD 身份池。

注意:

创建身份池时,请确保指定的域和组织单位 (OU) 与您在设置混合 Azure AD 环境时创建的域和组织单位相同。

  1. 使用 New-AcctADAccount 命令创建 AD 帐户。
  2. 使用 Set-AcctAdAccountUserCert 命令为 AD 帐户设置 userCertificate
  3. 使用 New-ProvScheme 命令创建预配方案。
  4. 使用 New-BrokerCatalog 命令创建 Broker 目录。
  5. 可以使用“完整配置”界面 > 计算机目录将 VM 添加到目录中。或者,您可以使用 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-->
创建加入了混合 Azure AD 的目录