创建 AWS 目录
创建计算机目录介绍了创建计算机目录的向导。以下信息涵盖了 AWS 虚拟化环境的特定详细信息。
注意:
在创建 AWS 目录之前,您需要完成与 AWS 的连接创建。请参阅连接到 AWS。
映像准备期间的网络设置
在映像准备期间,将根据原始 VM 创建一个准备虚拟机 (VM)。此准备 VM 将与网络断开连接。要将准备 VM 与网络断开连接,将创建一个网络安全组以拒绝所有入站和出站流量。此网络安全组将持久存在并被重复使用。该网络安全组的名称为 Citrix.XenDesktop.IsolationGroup-GUID
,其中 GUID 是随机生成的。
AWS 租用
AWS 提供以下租用选项:
- 共享租用(默认类型)和专用租用。共享租用意味着来自不同客户的多个 Amazon EC2 实例可能驻留在同一物理硬件上。
- 专用租用意味着您的 EC2 实例仅在您已部署的其他实例所在的硬件上运行。其他客户不使用同一硬件。
预配到 AWS 主机的要求
- 导入的 BYOL(自带许可证)映像 (AMI)。使用专用主机时,请使用和管理您现有的许可证。
- 分配具有足够利用率的专用主机以满足预配请求。
- 启用自动放置。
配置 AWS 租用选项
- 使用共享硬件。此设置适用于大多数部署。多个客户共享硬件,即使他们之间不进行交互。使用共享硬件是运行 Amazon EC2 实例最经济的选择。
- 使用专用主机。Amazon EC2 专用主机是具有 EC2 实例容量的物理服务器,完全专用,允许您使用现有的按插槽或按 VM 软件许可证。专用主机具有基于实例类型的预设利用率。例如,单个分配的 C4 Large 实例类型的专用主机限制为运行 16 个实例。有关详细信息,请参阅 AWS 站点。 此设置适用于具有许可限制或安全要求的部署,这些部署需要您使用专用主机。使用专用主机,您拥有整个物理主机并按小时计费。拥有该主机可让您启动该主机允许的任意数量的 EC2 实例,而无需额外付费。
- 使用专用实例。此设置更适用于具有特定安全或合规性要求的部署。使用专用实例,您仍然可以享受拥有独立于其他 AWS 客户的主机的好处,但无需支付整个主机的费用。您无需担心主机的容量,但实例的收费更高。
注意:
如果没有正在进行的目录创建或映像更新任务,您可以删除任何可用的准备身份磁盘。
要使用 Studio 配置 AWS 租用,请参阅使用 Studio 创建目录;要使用 PowerShell 配置 AWS 租用,请参阅使用 PowerShell 配置 AWS 专用主机租用。
标记 AWS 操作资源
Amazon Machine Image (AMI) 表示一种虚拟设备类型,用于在 Amazon 云环境(通常称为 EC2)中创建虚拟机。您可以使用 AMI 部署使用 EC2 环境的服务。当您创建目录以使用 MCS for AWS 预配计算机时,您选择 AMI 作为该目录的黄金映像。
重要:
使用计算机配置文件和启动模板创建目录是使用操作资源标记所必需的。
要创建 AWS 目录,您必须首先为您希望作为黄金映像的实例创建 AMI。MCS 从该实例读取标签并将其合并到启动模板中。然后,启动模板标签将应用于在您的 AWS 环境中创建的所有 Citrix® 资源,包括:
- 虚拟机
- VM 磁盘
- VM 网络接口
- S3 存储桶
- S3 对象
- 启动模板
- AMI
您可以在创建目录时使用 Studio 和 PowerShell 标记操作资源。对于 Studio,请参阅使用 Studio 创建目录(“映像”页面)。对于 PowerShell,请参阅使用 PowerShell 标记操作资源。
创建目录
您可以使用以下方式创建目录:
使用 Studio 创建目录
- 在左侧导航窗格中单击“计算机目录”。
- 单击“创建计算机目录”。将显示“计算机目录设置”页面。
- 在“计算机类型”页面上,为目录选择计算机类型,例如多会话操作系统。
-
在“计算机管理”页面上,选择以下设置:
- 选择电源管理的计算机(例如,虚拟机或刀片式 PC)。
- 选择“Citrix 预配技术”。然后,选择“Citrix Machine Creation Services™”。
- 在“资源”字段中,选择您在创建主机连接时配置的资源(可用区),然后单击“下一步”。
- 在“桌面体验”页面上,选择用户登录时所需的随机或静态桌面。
-
在“映像”页面上:
- 选择要用作目录中所有计算机主映像的计算机模板。
- 如果您希望目录中的 VM 继承计算机配置文件中的配置,请选择一个计算机配置文件。默认情况下,已选中“使用计算机配置文件”复选框。要将计算机配置文件源更改为另一个 VM 或启动模板版本,请单击编辑按钮。
- 选中“将计算机标签应用于操作资源”复选框,将计算机标签应用于操作资源。此选项控制是否将计算机标签应用于在您的 AWS 环境中创建的每个有助于预配计算机的项目。操作资源是目录创建的副产品。它们包括临时资源和持久资源,例如准备 VM 实例和 AMI。
注意:
“安全”页面仅在您创建计算机目录时未分配计算机配置文件的情况下显示。
-
在“虚拟机”页面上:
- 输入目录的 VM 数量。
- 将显示默认计算机规范,该规范基于计算机配置文件。要更改它,请选择编辑图标并选择计算机规范。
- 配置 AWS 租用。请参阅配置 AWS 租用选项。
-
“安全”页面仅在您创建计算机目录时未分配计算机配置文件的情况下显示。使用“安全”页面配置 VM 的安全组。这在编辑和克隆现有计算机目录时也适用。
如果您创建基于计算机配置文件的计算机目录,则安全组配置将从计算机配置文件继承,“安全”页面不会显示。
- 在“NIC”页面中,选择 VM 的 NIC(或 ENI)。
- 在“磁盘设置”页面上,选择是否启用回写缓存。
- 在“计算机身份”页面上,通过选择域并为将在此计算机目录中创建的 VM 创建新的 AD 帐户,为目录中的计算机配置本地 Active Directory 或混合 Azure Active Directory。预配的 VM 将加入所选域。指定为将为 VM 创建的新 AD 帐户的帐户命名方案。单击“下一步”。
- 在“域凭据”页面上,单击“输入凭据”以提供所选域的凭据。出现提示时输入管理员级别的用户名和密码。如果您之前已按照我们的产品文档保存了域凭据,也可以使用服务帐户。
- 继续浏览其余页面,直到“摘要”页面。输入计算机目录的名称,然后选择“完成”以创建计算机目录。
使用 PowerShell 创建目录
使用 PowerShell 配置 AWS 专用主机租用
或者,您可以通过 PowerShell 预配 AWS 专用主机。使用 New-ProvScheme
cmdlet,并将参数 TenancyType
设置为 Host
。
使用 PowerShell 标记操作资源
要使用 PowerShell 标记资源:
- 从 DDC 主机打开 PowerShell 窗口。
- 运行命令
asnp citrix
以加载 Citrix 特定的 PowerShell 模块。
要为预配的 VM 标记资源,请使用自定义属性 AwsOperationalResourcesTagging
。例如:
New-ProvScheme -ProvisioningSchemeName test
-CustomProperties “AwsOperationalResourcesTagging,true”
-MachineProfile "XDHyp:\HostingUnits\xxxx-ue1a\machineprofiletest (lt-01xxxxx).launchtemplate\lt-01xxxxx (1).launchtemplateversion"
... <Other <standard provscheme parameters>
<!--NeedCopy-->
启用 MCSIO 的目录
MCS 存储优化 (MCSIO) 通过将磁盘操作缓存在内存或小型高速磁盘中来提高 VM 的性能。您可以使用 PowerShell 命令创建启用 MCSIO 的非持久目录。要创建此类目录,您必须在 AMI 实例准备期间安装或升级 VDA 时安装 MCSIO 驱动程序。默认情况下,该驱动程序未安装。
准备好 MCSIO AMI 后(在安装 VDA 时,选择在安装中包含 MCSIO 驱动程序的选项),您可以创建启用 MCSIO 的非持久目录。
注意:
使用 Studio 仅配置磁盘缓存(无内存缓存)的 MCSIO 选项已在所有虚拟机管理程序和云服务环境中删除。
创建启用 MCSIO 的目录
添加到 New-ProvScheme PowerShell 命令的四个参数是:
-
UseWriteBackCache
:为给定预配方案启用缓存(回写缓存) -
WriteBackCacheDiskSize
:指定用于缓存的临时磁盘的大小(以 GB 为单位) -
WriteBackCacheMemorySize
:指定用于缓存的内存量(以 MB 为单位)。这是一个可选参数。
注意:
WriteBackCacheDiskSize
的值必须大于零,因为至少需要 1 GB 的缓存磁盘存储。缓存磁盘大小不得大于操作系统磁盘大小。WriteBackCacheMemorySize
的值必须是非零且小于计算机目录内存大小。
影响 MCSIO 的自定义属性是:
-
WBCDiskStorageType
:定义卷类型,用于 AWS 中的临时磁盘。此参数采用volume-type[:iops][:throughput]
格式的字符串参数。以下是卷类型:- gp2:此卷类型不使用 iops 和吞吐量参数
- gp3:此卷类型使用 iops 和吞吐量参数
- io1:此卷类型仅使用 iops 参数
- io2:此卷类型仅使用 iops 参数
默认卷类型为 gp2。
-
PersistWBC
:控制在 AWS 实例关闭时是保留还是丢弃缓存磁盘。如果设置为true
,则保留缓存磁盘。如果设置为false
(默认值),则仅在 AMI 实例通电时创建并保留缓存磁盘。 -
PersistOSDisk
:控制在 AWS 实例关闭时是保留还是丢弃操作系统磁盘。如果设置为true
,则保留操作系统磁盘。如果设置为false
(默认值),则仅在 AMI 实例通电时创建并保留操作系统磁盘。
在 PowerShell 窗口中执行以下步骤以创建启用 MCSIO 的非持久目录:
- 打开 PowerShell 窗口。
- 运行
asnp citrix*
以加载 Citrix 特定的 PowerShell 模块。 - 创建代理目录和身份池。
-
创建预配方案。例如:
$HostingUnitUid = '0xxxx1d9-bbfc-xxxf-bxxb-exxxxxe008b2' $MasterImageVM = 'XDHyp:\HostingUnits\ctx-test\aws-apollo-non-persistent-multi-mcsio-vda-win2022 (ami-0bf1810488acbxxxb).template' $NetworkMap = @{ 'NetworkPath' = 'XDHyp:\HostingUnits\ctx-test\us-east-1a.availabilityzone\10.0.128.0`/17 (vpc-0fa6e41d72507fxxx).network' } $SecurityGroup = $( 'XDHyp:\HostingUnits\ctx-test\us-east-1a.availabilityzone\private.securitygroup' ) $ServiceOffering = 'XDHyp:\HostingUnits\ctx-test\T3 Medium Instance.serviceoffering' $CustomProperties = 'WBCDiskStorageType,gp3:6000:250;PersistWBC,false' $provScheme = New-ProvScheme -ProvisioningSchemeName $CatalogName -HostingUnitUid $HostingUnitUid ` -IdentityPoolUid $acctPool.IdentityPoolUid -CleanOnBoot ` - MasterImageVM $MasterImageVM ` -NetworkMap $NetworkMap ` -ServiceOffering $ServiceOffering ` -SecurityGroup $SecurityGroup ` -CustomProperties $CustomProperties ` -UseWriteBackCache -WriteBackCacheDiskSize 16 -WriteBackCacheMemorySize 256 <!--NeedCopy-->
- 将 VM 添加到目录。
使用 MCSIO 提高启动性能
如果您启用 MCSIO 并将 PersistWBC
和 PersistOSDisk
自定义属性设置为 true
,则可以提高 VM 的启动性能。通过此设置,VM 可以更快地启动,因为它们无需初始化新的缓存磁盘或从其模板重新创建根磁盘。
使用 PowerShell 创建基于计算机配置文件的计算机目录
您可以使用计算机配置文件从 EC2 实例 (VM) 或启动模板版本捕获硬件属性,并将其应用于预配的计算机。捕获的属性可以包括例如 EBS 卷属性、实例类型、EBS 优化、CPU 选项、租用类型、休眠功能、安全组以及其他受支持的 AWS 配置。
您可以使用 AWS EC2 实例 (VM) 或 AWS 启动模板版本作为计算机配置文件输入。
注意:
EBS 卷属性仅从计算机配置文件派生。
重要注意事项
创建 MCS 计算机目录时的重要注意事项:
- 如果您在
New-ProvScheme
和Set-ProvScheme
命令中添加计算机硬件属性参数,则参数中提供的值将覆盖计算机配置文件中的值。 - 如果您将
AwsCaptureInstanceProperties
设置为true
且未设置MachineProfile
属性,则仅捕获 IAM 角色和标签。 -
您不能同时设置
AwsCaptureInstanceProperties
和MachineProfile
。注意:
AwsCaptureInstanceProperties
已弃用。 -
如果未提供计算机配置文件,则必须明确提供以下属性的值:
- 安全组
- ENI 或虚拟网络
- 仅当您启用
AwsCaptureInstanceProperties
或指定计算机配置文件时,才能启用AwsOperationalResourcesTagging
。
创建 MCS 计算机目录后的重要注意事项是:
- 您无法将目录从基于计算机配置文件的目录更改为非基于计算机配置文件的目录。
在计算机配置文件输入中配置安全组
您可以创建一个 MCS 计算机目录,其中预配的 VM 按 ENI(网络接口)分配安全组。为此,请使用具有不同安全组映射到不同 ENI 的计算机配置文件输入(EC2 实例或启动模板)。例如,如果计算机配置文件输入具有 ENI A 和 SG 1 以及 ENI B 和 SG 2,则预配的 VM 也必须具有 ENI A 和 SG 1 以及 ENI B 和 SG 2。
检索网络接口详细信息
运行以下命令以获取网络接口数据记录列表,包括接口 SubnetId、分配的安全组和分配的网络。
(Get-HypInventoryItem -LiteralPath 'XdHyp:\HostingUnits\cvad-test' – ResourceType vm). AdditionalData
<!--NeedCopy-->
注意:
MCS 目前不允许每个网络接口有多个网络。
使用计算机配置文件创建计算机目录
要使用计算机配置文件创建计算机目录:
- 打开 PowerShell 窗口。
- 运行
asnp citrix*
以加载 Citrix 特定的 PowerShell 模块。 -
如果尚未创建身份池,请创建一个。例如,
New-AcctIdentityPool -IdentityPoolName idPool -NamingScheme ms## -Domain abcdf -NamingSchemeType Numeric <!--NeedCopy-->
-
运行 New-ProvScheme 命令。例如:
New-ProvScheme -ProvisioningSchemeName demet-test-1 -HostingUnitUid aa633238-9xxd-4cf6-80e8-232a758a1xx1 -IdentityPoolUid 34d5b088-e312-416f-907d-16573xxxxxc4 -CleanOnBoot -MasterImageVM 'XDHyp:\HostingUnits\cvad-test-scalestress\citrix-demet-ami.0 (ami-0ca813xxxxxx061ef).template' -MachineProfile 'XdHyp:\HostingUnits\cvad-test-scalestress\us-east-1a.availabilityzone\machine-profile-instance i (i-0xxxxxxxx).vm' <!--NeedCopy-->
- 完成目录创建。
更新计算机配置文件
要更新最初使用计算机配置文件预配的目录上的计算机配置文件,请执行以下操作。您还可以在编辑 MCS 计算机目录时更改计算机配置文件源的租用类型和休眠功能。
-
运行
Set-ProvScheme
命令。例如,Set-ProvScheme ` -ProvisioningSchemeUid "<ID" ` -MachineProfile "XDHyp:\HostingUnits\abc\us-east-1a.availabilityzone\citrix-cvad-machineprofile-instance (i-0xxxxxxxx).vm" <!--NeedCopy-->
使用 PowerShell 创建具有启动模板版本的目录
您可以创建以启动模板版本作为计算机配置文件输入的 MCS 计算机目录。您还可以将计算机配置文件目录的输入从 VM 更新为启动模板版本,以及从启动模板版本更新为 VM。
在 AWS EC2 控制台上,您可以提供启动模板的实例配置信息以及版本号。当您在创建或更新计算机目录时将启动模板版本指定为计算机配置文件输入时,该版本启动模板的属性将复制到预配的 VDA VM。
以下属性可以使用计算机配置文件输入提供,也可以在 New-ProvScheme
或 Set-ProvScheme
命令中明确作为参数提供。如果它们在 New-ProvScheme
或 Set-ProvScheme
命令中提供,则它们优先于这些属性的计算机配置文件值。
- 服务产品
- 网络
- 租用类型
注意:
如果在计算机配置文件启动模板中或作为
New-ProvScheme
命令中的参数未提供服务产品,则会收到相应的错误。
要使用启动模板版本作为计算机配置文件输入创建目录:
- 打开 PowerShell 窗口。
- 运行
asnp citrix*
以加载 Citrix 特定的 PowerShell 模块。 -
获取启动模板的启动模板版本列表。例如:
XDHyp:\HostingUnits\test\test-mp-sard (lt-01xxxxx).launchtemplate> ls | Select FullPath <!--NeedCopy-->
-
如果尚未创建身份池,请创建一个。例如:
New-AcctIdentityPool ` -IdentityPoolName "abc11" ` -NamingScheme "abc1-##" ` -NamingSchemeType Numeric ` -Domain "citrix-xxxxxx.local" ` -ZoneUid "xxxxxxxx" ` <!--NeedCopy-->
-
创建以启动模板版本作为计算机配置文件输入的预配方案。例如:
New-ProvScheme ` -ProvisioningSchemeName "MPLT1" ` -HostingUnitUid "c7f71f6a-3f45-4xxx-xxxx-xxxxxxxxxx" ` -IdentityPoolUid "bf3a6ba2-1f80-4xxx-xxxx-xxxxxxxxx" ` -MasterImageVM "XDHyp:\HostingUnits\xxxd-ue1a\apollo-non-persistent-vda-win2022 (ami-0axxxxxxxxxxx).template" ` -CleanOnBoot ` -MachineProfile "XDHyp:\HostingUnits\xxxx-ue1a\machineprofiletest (lt-01xxxxx).launchtemplate\lt-01xxxxx (1).launchtemplateversion" <!--NeedCopy-->
-
将预配方案注册为代理目录。例如:
New-BrokerCatalog -Name "MPLT1" ` -AllocationType Random ` -Description "Machine profile catalog" ` -ProvisioningSchemeId fe7df345-244e-4xxxx-xxxxxxxxx ` -ProvisioningType Mcs ` -SessionSupport MultiSession ` -PersistUserChanges Discard <!--NeedCopy-->
- 完成目录创建。
更新计算机配置文件源
您还可以将计算机配置文件目录的输入从 VM 更新为启动模板版本,以及从启动模板版本更新为 VM。例如:
-
要将计算机配置文件目录的输入从 VM 更新为启动模板版本:
Set-ProvScheme -ProvisioningSchemeName "CloudServiceOfferingTest" ` -MachineProfile "XDHyp:\HostingUnits\xxxx-ue1a\machineprofiletest (lt-0bxxxxxxxxxxxx).launchtemplate\lt-0bxxxxxxxxxxxx (1).launchtemplateversion" <!--NeedCopy-->
-
要将计算机配置文件目录的输入从启动模板版本更新为 VM:
Set-ProvScheme -ProvisioningSchemeName "CloudServiceOfferingTest" ` -MachineProfile "XDHyp:\HostingUnits\sard-ue1a\us-east-1a.availabilityzone\apollo-non-persistent-vda-win2022-2 (i-08xxxxxxxxx).vm" <!--NeedCopy-->
加密操作系统和身份磁盘
您可以创建持久和非持久的 VM 目录,其中包含可用于加密操作系统磁盘和身份磁盘 (ID) 的 AWS KMS 密钥(客户管理密钥和 AWS 管理密钥)。
- AWS 管理密钥每年自动轮换。
- 客户管理密钥可选择自动轮换,也可手动管理。
有关 KMS 密钥的更多信息,请参阅以下 AWS 文档:
对于操作系统和身份磁盘的加密,请配置以下其中一项:
- 使用已加密的主映像(例如,从包含使用 KMS 密钥加密的 EBS 根卷的实例或快照创建的 AMI)
- 使用包含加密 EBS 根卷的计算机配置文件源(VM 或启动模板)。
限制
请考虑以下限制:
- MCS 目前仅支持主映像 AMI 上的一个磁盘。
-
您不能直接加密现有未加密的 EBS 卷或快照,或修改现有加密卷的 KMS 密钥。为此,您必须:
- 创建该卷的新快照。
- 从该快照创建新卷
- 加密新卷。
请参阅以下 AWS 文档:
- 加密未加密的资源
- EBS 卷自动或默认加密的限制:自动加密现有和新的 Amazon EBS 卷。
创建具有磁盘加密的目录
您可以使用以下方式创建具有磁盘加密的 MCS 计算机目录:
- 主映像
- 计算机配置文件
使用计算机配置文件输入时的注意事项是:
- 计算机配置文件输入的 KMS 密钥优先于主映像的 KMS 密钥。
- 如果未提供计算机配置文件输入,则使用主映像 AMI 的 KMS 密钥加密目录 VM 的磁盘。
- 如果计算机配置文件存在块设备映射,则主映像模板 (AMI) 和计算机配置文件中存在的块设备必须匹配。例如,如果 AMI 在
/dev/sda1
上定义了设备,则计算机配置文件也必须在/dev/sda1
上定义设备。 - 如果计算机配置文件源中没有密钥且主映像未加密,则目录 VM 的磁盘不会加密。
- 当主映像加密时,计算机配置文件源 VM 或启动模板必须具有加密的根卷才能被视为有效输入。
修改现有目录
您可以使用 Set-ProvScheme
PowerShell 命令修改现有目录,使其具有:
- 包含新 KMS 密钥的卷的计算机配置文件输入。
- 使用新 KMS 密钥加密的主映像模板 AMI。
重要注意事项:
- 添加到目录的新 VM 的卷将使用新的 KMS 密钥加密。
- 要在存在现有计算机配置文件时更新加密设置,请使用新的计算机配置文件运行
Set-ProvScheme
。 - 您无法将现有目录从加密卷修改为未加密卷。 您无法从加密的主 AMI 更新到未加密的主 AMI。
为 VM 实例启用 NitroTPM 和 UEFI 安全启动
创建目录时,您现在可以选择启用 NitroTPM 和/或 UEFI 安全启动的主映像 (AMI)。因此,目录中预配的 VM 也将启用 NitroTPM 和/或 UEFI 安全启动。此实现可确保 VM 的安全性和可信度。有关 NitroTPM 和 UEFI 安全启动的更多信息,请参阅 Amazon 文档。
限制
- 目前,您可以在除中国以外的所有 AWS 区域(包括 AWS GovCloud (US) 区域)中使用 NitroTPM 和安全启动。
- 您无法在现有目录上启用 NitroTPM 和 UEFI 安全启动。如果您想要一个启用 NitroTPM 和 UEFI 安全启动的目录,请创建一个新目录。
关键步骤
- 设置您的 AWS 环境。
- 创建与 AWS 的连接。
- 创建启用 NitroTPM 和/或 UEFI 安全启动的主映像 (AMI)。
- 通过在 Web Studio 目录创建菜单中选择启用 NitroTPM 和 UEFI 安全启动的主映像,或在使用 PowerShell 命令创建预配方案时,创建计算机目录。
添加到所创建目录的 VM 已启用 NitoTPM 和 UEFI 安全启动。
创建支持 NitroTPM 和 UEFI 安全启动的 AMI
-
您可以从已启用 NitroTPM 和/或 UEFI 安全启动的 VM 创建 AMI。
- 使用 AWS Marketplace 映像创建实例。例如,在 aws-marketplace 上搜索
TPM-Windows_Server-2022-English-Full-Base
。 - 下载单会话或多会话 VDA。
- 从该 VM 创建 AMI。
- 使用 AWS Marketplace 映像创建实例。例如,在 aws-marketplace 上搜索
-
使用 register-image 命令:
--boot-mode (string) --tpm-support (string) <!--NeedCopy-->
有关详细信息,请参阅 register-image。
请参阅以下 AWS 文档:
您可以从 Delivery controller™ 主机打开 PowerShell 窗口,以检查特定项是否:
-
服务产品支持 NitroTPM 或 UEFI 安全启动
(Get-Item -Path “XDHyp:\HostingUnits\aws\T3 Medium Instance.serviceoffering”).AdditionalData.BootMode (Get-Item -Path “XDHyp:\HostingUnits\aws\T3 Medium Instance.serviceoffering”).AdditionalData.NitroTpmSupportVersions <!--NeedCopy-->
-
模板支持 NitroTPM 或 UEFI 安全启动
(Get-HypInventoryItem -LiteralPath “XDHyp:\HostingUnits\aws” -ResourceType “template -Id “ID”).AdditionalData.BootMode (Get-HypInventoryItem -LiteralPath “XDHyp:\HostingUnits\aws” -ResourceType “template -Id “ID”).AdditionalData.TpmSupport <!--NeedCopy-->
更新现有目录的服务产品
您可以使用 Set-ProvScheme
更改现有目录的服务产品。此更改适用于新添加的 VM。但是,在以下情况下会收到错误:
AMI 启动模式 | AMI 支持 Nitro TPM? | 服务产品支持 NitroTPM 和 UEFI 安全启动? |
---|---|---|
UEFI | 否 | 否 |
传统 BIOS | 是 | 否 |
UEFI | 是 | 否 |
UEFI 首选 | 是 | 否 |
复制 VM 上的标签
您可以将计算机配置文件中指定的 NIC 和磁盘(身份磁盘、回写缓存磁盘和操作系统磁盘)上的标签复制到 MCS 计算机目录中新创建的 VM。您可以在任何计算机配置文件源(AWS VM 实例或 AWS 启动模板版本)中指定这些标签。此功能适用于持久和非持久计算机目录和 VM。
注意:
- 在 AWS EC2 控制台上,您无法在“启动模板版本资源标签”下看到“标签网络接口”值。但是,您可以运行 PowerShell 命令
aws ec2 describe-launch-template-versions --launch-template-id lt-0bb652503d45dcbcd --versions 12
来查看标签规范。- 如果计算机配置文件源(VM 或启动模板版本)有两个网络接口(eni-1 和 eni-2),并且 eni-1 具有标签 t1,eni-2 具有标签 t2,则 VM 将获得这两个网络接口的标签。
使用 PowerShell 筛选 VM 实例
您用作计算机配置文件 VM 的 AWS VM 实例必须兼容,以便计算机目录能够正确创建和运行。要列出可用作计算机配置文件输入 VM 的 AWS VM 实例,您可以使用 Get-HypInventoryItem
命令。该命令可以分页和筛选托管单元上可用的 VM 清单。
分页
Get-HypInventoryItem 支持两种分页模式:
- 分页模式使用
-MaxRecords
和-Skip
参数返回项目集:-
-MaxRecords
:默认值为 1。这控制要返回的项目数量。 -
-Skip
:默认值为 0。这控制从虚拟机管理程序列表中绝对开头(或绝对结尾)跳过的项目数量。
-
- 滚动模式使用
-MaxRecords
、-ForwardDirection
和-ContinuationToken
参数来允许记录滚动:-
-ForwardDirection
:默认值为 True。这与-MaxRecords
一起使用,以返回下一组匹配记录或上一组匹配记录。 -
-ContinuationToken
:返回紧随其后(如果ForwardDirection
为 false,则为之前)但不包括ContinuationToken
中给定项的项目。
-
分页示例:
-
要返回名称最低的计算机模板的单个记录。
AdditionalData
字段包含TotalItemsCount
和TotalFilteredItemsCount
:Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx-test" -ResourceType template <!--NeedCopy-->
-
要返回名称最低的计算机模板的 10 条记录:
Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx-test" -ResourceType template -MaxRecords 10 | select Name <!--NeedCopy-->
-
要返回以最高名称结尾的记录数组:
Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx-test" -ResourceType template -ForwardDirection $False -MaxRecords 10 | select Name <!--NeedCopy-->
-
要返回从与给定
ContinuationToken
关联的计算机模板开始的记录数组:Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx-test" -ResourceType template -ContinuationToken "ami-07xxxxxxxxxx" -MaxRecords 10 <!--NeedCopy-->
筛选
支持以下附加可选参数用于筛选。您可以将这些参数与分页选项结合使用。
-
-ContainsName "my_name"
:如果给定字符串与 AMI 名称的一部分匹配,则该 AMI 将包含在Get
结果中。例如:Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx-test" -ResourceType template -MaxRecords 100 -ContainName ‘apollo’ | select Name <!--NeedCopy-->
-
-Tags '{ "Key0": "Value0", "Key1": "Value1", "Key2": "Value2" }'
:如果 AMI 至少具有其中一个标签,则该 AMI 将包含在Get
结果中。例如:Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx-test" -ResourceType template -MaxRecords 100 -Tags '{"opex owner": "Not tagged"}' | select Name <!--NeedCopy-->
注意:
支持两种标签值。未标记标签值匹配其标签列表中没有给定标签的项目。所有值标签值匹配具有标签的项目,无论标签的值如何。否则,仅当项目具有标签且值等于筛选器中给定的值时,才发生匹配。
-
-Id "ami-0a2d913927e0352f3"
:如果 AMI 与给定 ID 匹配,则该 AMI 将包含在Get
结果中。例如:Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx-test" -ResourceType template -Id ami-xxxxxxxxxxxxx <!--NeedCopy-->
在 AdditionalData 参数上进行筛选
AdditionalData
筛选器参数根据模板或 VM 的功能、服务产品或 AdditionalData 中的任何属性列出模板或 VM。例如:
(Get-HypInventoryItem -ResourceType "launchtemplateversion" -LiteralPath "XDHyp:\HostingUnits\aws" -MaxRecords 200).AdditionalData
<!--NeedCopy-->
您还可以添加 -Warn
参数以指示不兼容的 VM。VM 将包含一个名为“Warning”的 AdditionalData
字段。例如:
(Get-HypInventoryItem -ResourceType "launchtemplateversion" -LiteralPath "XDHyp:\HostingUnits\aws" -MaxRecords 200 -Template "ami-015xxxxxxxxx" -Warn $true).AdditionalData
<!--NeedCopy-->
VM 的备份 SKU 列表
公共云有时可能会耗尽特定 EC2 实例类型(“主 SKU”)的容量。如果主 VM 配置不可用,则 VM 无法启动,从而导致时间损失和业务中断。为解决此类情况,请提供一个备份 EC2 实例类型(“备份 SKU”)列表,以便 MCS 在出现容量相关问题时可以回退到这些类型。
在创建或更新 MCS 计算机目录时,使用自定义属性 BackupVmConfiguration
提供备份 EC2 实例类型列表(“备份 SKU 列表”)。
如果主 EC2 实例失败,MCS 会尝试按照您指定的顺序回退到备份 EC2 实例类型。如果 MCS 无法回退到任何提供的备份 EC2 实例类型,则会显示错误消息。然后,您可以尝试再次启动主 EC2 实例。如果失败,MCS 会重试备份 EC2 实例类型。
备份 SKU 列表可以包含按需实例。
此功能适用于持久和非持久 MCS 计算机目录。
重要注意事项
- 您可以在备份 SKU 列表中提供多个备份 EC2 实例类型。
- 备份 SKU 列表必须是唯一的。
- 备份 EC2 实例不能与主 EC2 实例相同。
- 备份 EC2 实例必须是有效的 AWS 实例类型。
- 不要指定重复的服务产品。例如:
BackupVmConfiguration,t2.small|t3.small|t2.small
无效。 - 列表中指定的服务产品必须与计算机目录配置兼容。例如,如果目录使用 UEFI 且备份列表中指定的服务产品不支持它,则目录创建或更新将在预检期间失败。
- 您可以使用
Set-ProvScheme
PowerShell 命令修改现有目录的备份 SKU 列表。您可以使用Set-ProvVM
和Set-ProvVMUpdateTimeWindow
PowerShell 命令修改现有 VM。
配置备份 EC2 实例
- 打开 PowerShell 窗口。
- 运行
asnp citrix\*
以加载 Citrix 特定的 PowerShell 模块。 - 创建代理目录。
- 创建身份池。
-
使用自定义属性
BackupVmConfiguration
添加备份 EC2 实例列表并创建预配方案。例如:$serviceOffering = "XDHyp:\HostingUnits\$hostingUnitName\T3 Medium Instance.serviceoffering" $customProperties = "AwsCaptureInstanceProperties,false;AwsOperationalResourcesTagging,false;BackupVmConfiguration,t2.small|t2.large|t3.small|t3.large;" $createdProvScheme = New-ProvScheme -ProvisioningSchemeName $provisioningSchemeName -HostingUnitName $hostingUnitName -IdentityPoolName $provisioningSchemeName -NetworkMapping $networkMapping -SecurityGroup $securityGroupPath -ServiceOffering $serviceOffering -MasterImageVM $masterImageVm -CustomProperties $customProperties <!--NeedCopy-->
- 使用预配方案的唯一 ID 更新 BrokerCatalog。
- 创建 VM 并将其添加到目录。