管理用户应用程序设置的 VHD - Amazon WorkSpaces

管理用户应用程序设置的 VHD

Amazon S3 存储桶存储

启用应用程序设置持久性时,用户的应用程序自定义项和 Windows 设置将自动保存到一个虚拟硬盘(VHD)文件中,该文件存储在您 AWS 账户中创建的 Amazon S3 存储桶中。对于每个 AWS 区域,WorkSpaces Pools 会在您的账户中创建一个对于您的账户和该区域而言是唯一的存储桶。用户所配置的所有应用程序设置都将存储在该区域的这个存储桶中。

您不需要执行任何配置任务来管理这些 S3 存储桶;它们完全由 WorkSpaces Pools 服务托管。存储在每个存储桶中的 VHD 文件在传输中使用 Amazon S3 的 SSL 端点进行加密,在静态期间使用 AWS 托管的 CMK 进行加密。存储桶以特定格式命名,如下所述:

wspool-app-settings-<region-code>-<account-id-without-hyphens>-<random-identifier>
region-code

这是在其中创建具有应用程序设置持久性的目录的 AWS 区域代码。

account-id-without-hyphens

您的 AWS 账户 ID 随机标识符确保与该区域中的其他存储桶不发生冲突。存储桶名称的第一部分 wspool-app-settings 不随账户或区域而改变。

例如,如果您为位于美国西部(俄勒冈州)(us-west-2)区域,账号为 123456789012 的目录启用应用程序设置持久性,则 WorkSpaces Pools 会在您账户的该区域中创建一个具有如下所示名称的 Amazon S3 存储桶。只有具有足够权限的管理员才能删除此存储桶。

wspool-app-settings-us-west-2-1234567890123-abcdefg

禁用应用程序设置持久性不会删除存储在 S3 存储桶中的任何 VHD。要永久删除设置 VHD,您或具备足够权限的管理员必须使用 Amazon S3 控制台或 API 执行此操作。WorkSpaces Pools 添加了一个存储桶策略,以防止意外删除存储桶。

启用应用程序设置持久性后,将为每个设置组创建一个唯一的文件夹来存储设置 VHD。S3 存储桶中该文件夹的层次结构取决于用户启动流式传输会话的方式,如下面一节所述。

存储在您账户的 S3 存储桶中的设置 VHD 所在的文件夹路径使用以下结构:

bucket-name/Windows/prefix/settings-group/access-mode/user-id-SHA-256-hash
bucket-name

存储用户应用程序设置的 S3 存储桶的名称。该名称格式如本节中前面所述。

(前缀:)

Windows 版本特定的前缀。例如,Windows Server 2012 R2 的 v4。

settings-group

设置组值。此值将应用于共享相同应用程序设置的一个或多个目录。

access-mode

用户的标识方式:custom 表示 WorkSpaces Pools API 或 CLI,federated 表示 SAML,userpool 表示用户池用户。

user-id-SHA-256-hash

用户特定的文件夹名称。此名称是使用从用户 ID 生成的小写 SHA-256 哈希十六进制字符串创建的。

下面的示例文件夹结构应用于一个流式传输会话,将使用用户 ID 为 testuser@mydomain.com、AWS 账户 ID 为 123456789012 的 API 或 CLI 及美国西部(俄勒冈)区域(us-west-2)中的 test-stack 设置组访问该会话:

wspool-app-settings-us-west-2-1234567890123-abcdefg/Windows/v4/test-stack/custom/a0bcb1da11f480d9b5b3e90f91243143eac04cfccfbdc777e740fab628a1cd13

您可以通过网站或网上提供的开源编码库生成用户 ID 的小写 SHA-256 哈希值,并据此确定特定用户的文件夹。

重置用户的应用程序设置

要重置用户的应用程序设置,您必须从 AWS 账户中的 S3 存储桶找到并删除 VHD 及关联的元数据文件。请确保在用户的活动流式传输会话期间不执行此操作。在您删除用户的 VHD 文件及元数据文件之后,下次用户从启用了应用程序设置持久性的流实例启动会话时,WorkSpaces Pools 会为该用户创建一个新的设置 VHD。

重置用户的应用程序设置
  1. 通过以下网址打开 Amazon S3 控制台:https://console.aws.amazon.com/s3/

  2. Bucket name (存储桶名称) 列表中,选择包含要重置的应用程序设置 VHD 的 S3 存储桶。

  3. 找到该 VHD 所在的文件夹。有关如何导航 S3 存储桶文件夹结构的更多信息,请参阅本主题前面的 Amazon S3 存储桶存储

  4. Name (名称) 列表中,选中该 VHD 和 REG 旁的复选框,选择 More (更多),然后选择 Delete (删除)

  5. Delete objects (删除对象) 对话框中,验证 VHD 和 REG 已列出,然后选择 Delete (删除)

下次用户从启用了应用程序设置持久性并带有适用设置组的池进行流式传输时,将创建一个新的应用程序设置 VHD。此 VHD 将在会话结束时保存到 S3 存储桶中。

启用 Amazon S3 对象版本控制和恢复用户的应用程序设置

当您的用户更改其应用程序设置时,您可以使用 Amazon S3 对象版本控制和生命周期策略来管理这些设置。通过 Amazon S3 对象版本控制,您可以保留、检索和还原设置 VHD 的每个版本。这使您可以从意外用户操作和应用程序故障进行恢复。如果启用了版本控制,每个流式传输会话之后,应用程序设置 VHD 的新版本将同步到 Amazon S3。新版本不会覆盖早期版本,因此如果您的用户设置发生问题,可以恢复到 VHD 的上一个版本。

注意

应用程序设置 VHD 的每个版本都将作为一个单独对象保存到 Amazon S3 中,并且需要支付相应费用。

默认情况下在 S3 存储桶中不启用对象版本控制,因此您必须显式启用它。

为应用程序设置 VHD 启用对象版本控制
  1. 通过以下网址打开 Amazon S3 控制台:https://console.aws.amazon.com/s3/

  2. Bucket name (存储桶名称) 列表中,选择要启用对象版本控制的应用程序设置 VHD 所在的 S3 存储桶。

  3. 选择属性

  4. 依次选择 Versioning (版本控制)Enable versioning (启用版本控制),然后选择 Save (保存)

要终止应用程序设置 VHD 的较旧版本,您可以使用 Amazon S3 生命周期策略。有关信息,请参阅《Amazon Simple Storage Service 用户指南》中的如何为 S3 存储桶创建生命周期策略?

恢复用户的应用程序设置 VHD

通过从适用的 S3 存储桶删除 VHD 的较新版本,您可以恢复到用户应用程序设置 VHD 的早期版本。当用户是否具有活动的流式传输会话时,请不要执行此操作。

  1. 通过以下网址打开 Amazon S3 控制台:https://console.aws.amazon.com/s3/

  2. Bucket name (存储桶名称) 列表中,选择要恢复到的用户应用程序设置 VHD 版本所在的 S3 存储桶。

  3. 找到并选择该 VHD 所在的文件夹。有关如何导航 S3 存储桶文件夹结构的信息,请参阅本主题前面的 Amazon S3 存储桶存储

    选择该文件夹时,即会显示设置 VHD 及关联的元数据文件。

  4. 要显示 VHD 及元数据文件版本的列表,请选择 Show (显示)

  5. 找到要恢复到的 VHD 版本。

  6. Name (名称) 列表中,选中该 VHD 及关联元数据文件的较新版本旁的复选框,选择 More (更多),然后选择 Delete (删除)

  7. 确认要恢复到的应用程序设置 VHD 及关联的元数据文件是这些文件的最新版本。

下次用户从启用了应用程序设置持久性并带有适用设置组的池进行流式传输时,将显示用户设置的已恢复版本。

增加应用程序设置 VHD 的大小

对于池,默认 VHD 最大大小为 5 GB。如果用户需要额外的应用程序设置空间,您可以将适用的应用程序设置 VHD 下载到 Windows 计算机以对其进行扩展。然后,将 S3 存储桶中的当前 VHD 替换为更大的一个 VHD。当用户是否具有活动的流式传输会话时,请不要执行此操作。

注意

要减小虚拟硬盘(VHD)的物理大小,请在结束会话之前清除回收站。这还能减少上传和下载时间,并改善整体用户体验。

增加应用程序设置 VHD 的大小
注意

必须先下载完整 VHD,然后用户才能流式传输应用程序。增加应用程序设置 VHD 的大小可能会增加用户启动应用程序流式传输会话所需的时间。

  1. 通过以下网址打开 Amazon S3 控制台:https://console.aws.amazon.com/s3/

  2. Bucket name (存储桶名称) 列表中,选择包含要扩展的应用程序设置 VHD 的 S3 存储桶。

  3. 找到并选择该 VHD 所在的文件夹。有关如何导航 S3 存储桶文件夹结构的信息,请参阅本主题前面的 Amazon S3 存储桶存储

    选择该文件夹时,即会显示设置 VHD 及关联的元数据文件。

  4. Profile.vhdx 文件下载到 Windows 计算机上的一个目录中。下载完成后,请勿关闭您的浏览器,因为稍后您将再次使用浏览器上传扩展的 VHD。

  5. 要使用 Diskpart 将 VHD 的大小增加到 7 GB,请以管理员身份打开命令提示符,并键入以下命令。

    diskpart
    select vdisk file="C:\path\to\application\settings\profile.vhdx"
    expand vdisk maximum=7000
  6. 然后,键入以下 Diskpart 命令找到和附加该 VHD,并显示卷列表:

    elect vdisk file="C:\path\to\application\settings\profile.vhdx"
    attach vdisk
    list volume

    在输出中,记下标签为“AwsEucUsers”的卷编号。在下一步中,您将选择此卷,以便可将其扩大。

  7. 键入以下命令,其中,<volume-number> 是列表卷输出中的编号。

    select volume <volume-number>
  8. 键入以下命令:

    extend
  9. 键入以下命令,确认 VHD 上该分区的大小是否已按预期增加(在此示例中为 7 GB):

    diskpart
    select vdisk file="C:\path\to\application\settings\profile.vhdx"
    list volume
  10. 键入以下命令分离 VHD,以便可将其上传:

    detach vdisk
  11. 返回带有 Amazon S3 控制台的浏览器,依次选择上传添加文件,然后选择扩大的 VHD。

  12. 选择上传

上传 VHD 后,下次用户从启用了应用程序设置持久性并带有适用设置组的池进行流式传输时,可以使用更大的应用程序设置 VHD。