Citrix Virtual Apps and Desktops
连接到本地 Azure
创建和管理连接和资源 描述了创建连接的向导。以下信息涵盖了特定于本地 Azure 环境的详细信息。
创建一条托管连接
您可以使用以下方式创建托管连接:
使用 Web 工作室
- 在 Web Studio 中,打开 托管 > 添加连接和资源。
-
在连接页面上,请按照以下步骤配置连接:
- 选择创建新连接。
- 选择 微软® Azure™ Arc 作为连接类型。
- 选择一个 Azure 环境。
- 选择一个区域。这些选项是您配置的所有资源位置。
-
选择其他工具用于创建虚拟机。
注意:
选择 其他工具 只创建托管连接,而不创建托管单元。
- 单击 下一步。
-
在 连接详细信息 页面上,按照向导中的指导输入连接详细信息。如果您使用现有 SPN,请确保该 SPN 已被授予订阅的参与者角色。有关更多信息,请查看 所需的 Azure 本地权限。
- 在 范围 页面上,为此连接选择一个或多个范围。
- 在 摘要 页面上,检查配置并单击 完成。
使用 PowerShell 命令行工具
脚本的头部
请务必确保您提供了在脚本头部中定义的正确参数值。
$azureSubscription = "" # Azure Subscription ID
$azureTenantId = "" # Microsoft Entra Tenant ID
$appClientId = "" # Client ID of an Microsoft Entra application which is grant with sufficient permissions
$appClientSecret = "" # Client secret of above client ID
$appClientSecretExpirationDateTimestamp = "" # Client secret expiration date in epoch timestamp format
$region = "" # Azure region of your Azure Local cluster
$resourceGroupName = "" # Azure resource group of your Azure Local cluster
$zoneUid = "" # Zone UID of your resource location
$hostingConnectionName = "" # Name of the created hosting connection
<!--NeedCopy-->
创建托管式连接
asnp citrix*
[SecureString]$appClientSecretSecureString = $appClientSecret | ConvertTo-SecureString -AsPlainText -Force
$conn = New-Item -ConnectionType "Custom" -CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"><Property xsi:type=`"StringProperty`" Name=`"SubscriptionId`" Value=`"$azureSubscription`" /><Property xsi:type=`"StringProperty`" Name=`"ManagementEndpoint`" Value=`"https://management.azure.com/`" /><Property xsi:type=`"StringProperty`" Name=`"AuthenticationAuthority`" Value=`"https://login.microsoftonline.com/`" /><Property xsi:type=`"StringProperty`" Name=`"TenantId`" Value=`"$azureTenantId`" /></CustomProperties>" -HypervisorAddress @("https://management.azure.com/") -Path @("XDHyp:\Connections\$hostingConnectionName") -Persist -PluginId "AzureArcFactory" -Scope @() -SecurePassword $appClientSecretSecureString -UserName $appClientId -ZoneUid $zoneUid
New-BrokerHypervisorConnection -HypHypervisorConnectionUid $conn.HypervisorConnectionUid
Set-HypHypervisorConnectionMetadata -HypervisorConnectionUid $conn.HypervisorConnectionUid -Name Citrix_Orchestration_Hypervisor_Secret_Allow_Edit -Value true
Set-HypHypervisorConnectionMetadata -HypervisorConnectionUid $conn.HypervisorConnectionUid -Name Citrix_Orchestration_Hypervisor_Secret_Expiration_Date -Value $appClientSecretExpirationDateTimestamp
<!--NeedCopy-->
创建托管单元
您可以使用以下方式创建托管单元:
创建托管单元 使用 Web Studio
- 在 Web Studio 中,打开 托管 > 添加连接和资源。
-
在“连接”页面上:
-
要创建新的托管连接以及托管单元,请选择“创建新连接”,然后执行以下操作:
- 选择“创建新连接”。
- 选择 微软® Azure™ Arc 作为连接类型。
- 选择 Azure 环境。
- 选择一个区域。选项是您配置的所有资源位置。
- 选择 Citrix 预配工具(机器创建服务™ 或 Citrix 预配) 以创建虚拟机。
- 单击“下一步”。
-
要从现有主机连接创建托管单元,请选择“使用现有连接”,然后选择相关连接。
-
- 在“连接详细信息”页面上,按照向导中的指导输入连接详细信息。如果您使用现有 SPN,请确保该 SPN 已被授予订阅的参与者角色。
- 在“群集选择”页面上,浏览资源组并选择目标 Azure Local 群集。
- 在“存储选择”页面上,为每种支持的数据类型选择至少一个存储设备,然后才能继续向导中的下一页。有关存储选择的更多信息,请参阅主机存储。
- 在“网络”页面上,输入资源的名称。此名称将显示在 Studio 中,用于标识与连接关联的存储和网络组合。选择虚拟机使用的一个或多个网络。
- 在“摘要”页面上,检查详细信息并单击“完成”。
使用 PowerShell 创建托管单元
脚本的头部
请务必确保您提供了脚本头部中定义的正确参数值。
$resourceGroupName = "" # Azure resource group of your Azure Local cluster
$clusterName = "" # Name of your Azure Local cluster
$storagePathName = "" # Storage path in your Azure Local cluster that wants to be used in this hosting unit
$logicalNetworkName = "" # Logical network in your Azure Local cluster that wants to be used in this hosting unit
$zoneUid = "" # Zone UID of your resource location
$hostingConnectionName = "" # Name of the created hosting connection
$hostingUnitName = "" # Name of the created hosting unit
<!--NeedCopy-->
创建托管单元
asnp citrix*
$guid = (New-Guid).Guid
New-HypStorage -StoragePath @("XDHyp:\Connections\$hostingConnectionName\$region.region\$resourceGroupName.resourcegroup\cluster.folder\$clusterName.cluster\storage.folder\$storagePathName.storage") -StorageType "TemporaryStorage" -JobGroup $guid
New-Item -Path XDHyp:\HostingUnits -Name $hostingUnitName -HypervisorConnectionName $hostingConnectionName -RootPath "XDHyp:\Connections\$hostingConnectionName\$region.region\$resourceGroupName.resourcegroup\cluster.folder\$clusterName.cluster" -NetworkPath "XDHyp:\Connections\$hostingConnectionName\$region.region\$resourceGroupName.resourcegroup\cluster.folder\$clusterName.cluster\network.folder\$logicalNetworkName.network" -StoragePath "XDHyp:\Connections\$hostingConnectionName\$region.region\$resourceGroupName.resourcegroup\cluster.folder\$clusterName.cluster\storage.folder\$storagePathName.storage" -JobGroup $guid
<!--NeedCopy-->
所需的 Azure 本地权限
“参与者”角色拥有管理所有资源的完全访问权限,并提供最佳的未来兼容性,尽管它包含的权限超出了当前功能集所需。本节详细介绍了 Azure Local 所需的最低权限。
最低所需权限
电源管理 VM
"Microsoft.Resources/tenants/read",
"Microsoft.Resources/subscriptions/read",
"Microsoft.Resources/subscriptions/locations/read",
"Microsoft.Resources/subscriptions/resourceGroups/read",
"Microsoft.AzureStackHCI/VirtualMachines/Read",
"Microsoft.AzureStackHCI/virtualMachineInstances/Read",
"Microsoft.AzureStackHCI/LogicalNetworks/Read",
"Microsoft.AzureStackHCI/StorageContainers/Read",
"Microsoft.AzureStackHCI/Clusters/Read",
"Microsoft.AzureStackHCI/VirtualMachineInstances/start/action",
"Microsoft.AzureStackHCI/VirtualMachineInstances/stop/action",
"Microsoft.AzureStackHCI/VirtualMachineInstances/restart/action"
"Microsoft.ExtendedLocation/CustomLocations/Read",
"Microsoft.KubernetesConfiguration/extensions/read",
"Microsoft.HybridCompute/machines/read"
<!--NeedCopy-->
创建、更新或删除 VM
"Microsoft.Resources/tenants/read",
"Microsoft.Resources/subscriptions/read",
"Microsoft.Resources/subscriptions/locations/read",
"Microsoft.Resources/subscriptions/resourceGroups/read",
"Microsoft.Resources/subscriptions/resourceGroups/write",
"Microsoft.Resources/subscriptions/resourceGroups/delete",
"Microsoft.HybridCompute/machines/read",
"Microsoft.HybridCompute/machines/write",
"Microsoft.HybridCompute/machines/delete",
"Microsoft.AzureStackHCI/Clusters/Read",
"Microsoft.AzureStackHCI/VirtualMachines/Read",
"Microsoft.AzureStackHCI/VirtualMachines/Write",
"Microsoft.AzureStackHCI/VirtualMachines/Delete",
"Microsoft.AzureStackHCI/virtualMachineInstances/Read",
"Microsoft.AzureStackHCI/virtualMachineInstances/Write",
"Microsoft.AzureStackHCI/virtualMachineInstances/Delete",
"Microsoft.AzureStackHCI/VirtualMachineInstances/start/action",
"Microsoft.AzureStackHCI/VirtualMachineInstances/stop/action",
"Microsoft.AzureStackHCI/VirtualMachineInstances/restart/action",
"Microsoft.AzureStackHCI/LogicalNetworks/Read",
"Microsoft.AzureStackHCI/LogicalNetworks/join/action",
"Microsoft.AzureStackHCI/StorageContainers/Read",
"Microsoft.AzureStackHCI/StorageContainers/deploy/action",
"Microsoft.AzureStackHCI/GalleryImages/Read",
"Microsoft.AzureStackHCI/GalleryImages/Write",
"Microsoft.AzureStackHCI/GalleryImages/Delete",
"Microsoft.AzureStackHCI/GalleryImages/deploy/action",
"Microsoft.AzureStackHCI/NetworkInterfaces/Read",
"Microsoft.AzureStackHCI/NetworkInterfaces/Write",
"Microsoft.AzureStackHCI/NetworkInterfaces/Delete",
"Microsoft.AzureStackHCI/VirtualHardDisks/Read",
"Microsoft.AzureStackHCI/VirtualHardDisks/Write",
"Microsoft.AzureStackHCI/VirtualHardDisks/Delete",
"Microsoft.AzureStackHCI/VirtualHardDisks/upload/action",
"Microsoft.AzureStackHCI/marketplaceGalleryImages/deploy/action",
"Microsoft.ExtendedLocation/CustomLocations/Read",
"Microsoft.ExtendedLocation/customLocations/deploy/action",
"Microsoft.KubernetesConfiguration/extensions/read",
"Microsoft.Compute/disks/read",
"Microsoft.Compute/disks/write",
"Microsoft.Compute/disks/delete",
"Microsoft.Compute/disks/beginGetAccess/action",
"Microsoft.Compute/disks/endGetAccess/action",
"Microsoft.Compute/snapshots/read",
"Microsoft.Compute/snapshots/write",
"Microsoft.Compute/snapshots/delete",
"Microsoft.Compute/snapshots/beginGetAccess/action",
"Microsoft.Compute/snapshots/endGetAccess/action"
<!--NeedCopy-->
后续步骤
- 有关创建 Azure Local 计算机目录的信息,请参阅创建 Azure Local 计算机目录。
更多信息
连接到本地 Azure
已复制!
失败!