成本优化 - 部署 Amazon AppStream 2.0 的最佳实践

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

成本优化

成本优化侧重于避免不必要的成本。关键主题包括了解和控制资金的使用去向,以及选择最合适、最正确的资源类型数量。分析一段时间内的支出并进行扩展,以便满足业务需求。以下 AppStream 2.0 资源需要按实际使用量付费:

  • Always-On 实例集实例

  • On-Demand 实例集实例

  • On-Demand 停止的实例费用

  • 映像生成器实例

  • 用户费用

有关当前定价信息,请参阅 AWS 网站上的 Amazon AppStream 2.0 定价

设计具有成本效益的 AppStream 2.0 部署

规划和设计 AppStream 2.0 部署的第一步是使用简单的定价工具来估算与 AWS 使用量相关的费用基准。提供您的用户总数、每小时的实际并发使用情况、实例类型和实例集利用率,定价工具会估算您的每用户价格。它还显示了使用 On-Demand 实例集相比使用 Always-On 实例集时预计可节省的价格。

客户喜欢 AppStream 2.0 的定价模式,是因为他们只需要为那些为了满足用户流式处理需求而配置的实例付费。这种模式与他们现有的应用程序流环境不同。这些配置通常基于峰值容量的配置,即使在夜间、周末和节假日负载较低时也是如此。Amazon AppStream 2.0 定价工具仅提供与您使用 AppStream 2.0 相关的 AWS 费用的估算值,不包括任何可能适用的税费。您的实际费用取决于各种因素,包括您对 AWS 服务的实际使用情况。

AppStream 2.0 定价工具以 Microsoft Excel 或 OpenOffice Calc 电子表格形式提供,让您可以输入有关实例集的基本信息,然后根据您的使用模式为 On-Demand 实例集和 Always-On 实例集提供 AppStream 2.0 环境的成本估算。您可以根据历史或预期的使用趋势来拟算成本。Elastic 实例集中内置了这些特征,管理员无需预测使用情况、创建、维护扩展策略和映像。在 Amazon Linux 2 上运行的 Elastic 实例集和实例(所有实例集类型)按流会话的持续时间(以秒为单位)计费,最少为 15 分钟。

通过选择实例类型来优化成本

对于实例集和映像生成器实例,您可以为应用程序选择一系列不同的实例系列和类型。

最终用户测试 — 下一步是向一组试点用户推出 AppStream 2.0 实例集进行测试,以验证我们选择的实例类型。请试点用户测试其所有常规和繁重的工作流程,以捕获有关内存、CPU 和显卡的指标,以便您可以捕获基准性能指标,这一点很重要。试点组应包含使用该应用程序的各种用户角色,以确保您在多个用户体验中对其进行测试。用户验收测试使您能够收集有关流会话体验的反馈。创建或更新堆栈时,可以选择使用自定义反馈 URL。用户选择“发送反馈”链接提交有关其应用程序流式处理体验的反馈后,会重定向到这个 URL。如果存在性能瓶颈,请使用 Windows 性能指标来分析资源限制。例如,如果当前实例集实例类型 stream.standard.medium 显示资源限制,则将该实例类型升级到 stream.standard.large。相反,如果性能指标显示资源远未得到充分利用,则可以考虑降级实例类型。

通过选择实例集类型来优化成本

在创建新的 AppStream 2.0 实例集时,开发者必须选择 Always-On 或 On-Demand 实例集类型。在从定价角度选择实例类型时,了解 AppStream 2.0 如何管理实例集实例非常重要。对于 Always-On 实例集,实例集实例将保持运行状态。因此,当用户尝试流式传输会话时,实例集实例随时准备开始流式传输会话。

对于 On-Demand 实例集,在启动实例集实例后,它们将保持停止状态。已停止的实例费用低于保持运行的实例费用,这有助于降低成本。On-Demand 实例集实例必须从停止状态启动。用户必须等待大约两分钟,他们的流会话才可用。

Elastic 实例集非常适合独立应用程序,可以将其安装在 Amazon Simple Storage Service (Amazon S3) 存储桶中的虚拟硬盘上。因为 Elastic 实例集只会在流式传输期间按秒计费,因此可以进一步降低某些使用案例的成本。价格取决于您在创建实例集时选择的实例类型和大小以及操作系统。

如果最终用户在工作时间需要实例集实例,则最好保持原来的流会话。这是因为实例集实例按小时收费,每次启动新的流会话时,都会产生另一笔实例集实例费用。

表 10 — AppStream 2.0 实例集类型比较

实例集类型

优点

注意事项

Always-On

减少流会话的等待时间

用户需要支付每小时的实例费,因为无法选择让实例保持停止状态。

On-Demand

由于实例保持停止状态,因此可以节省成本

流会话等待时间更长

Elastic

对于可以安装在虚拟硬盘上的应用程序有零星使用模式的使用案例,按秒计费可能很有用

随着应用程序虚拟硬盘的规模越来越大,将其安装到流实例所需的时间可能会很长

AppStream 2.0 会监控您的实例集利用率,并自动调整实例集容量,以尽可能低的成本满足用户的需求。容量调整是根据您定义的扩缩策略进行的,要么基于当前利用率,要么基于计划。定期审查实例集使用指标,以确认实例集扩缩策略的剩余容量不会过高。

扩缩策略

实例集自动扩缩能够让您优化实例集资源,无需过度使用资源等待用户登录。管理员可以根据各种利用率调整实例集的大小,满足用户需求。使用 CloudWatch AppStream 2.0 实例集指标或第三方监控工具来了解用户活动并配置扩缩策略,以便根据预期使用情况扩展或缩小 AppStream 2.0 实例集。用户日志是了解实际使用情况的重要机制。自动扩缩可以根据此见解动态更改实例集大小。

在许多情况下,AppStream 2.0 实例集是根据最大用户数量创建的,不会针对一天和一周中的不同时间(例如晚上和周末)进行调整。通常,流式处理的应用程序的并发用户数少于用户总数,尤其是在用户可以灵活地进行远程办公的情况下。在预测使用模式时,必须将这些因素考虑在内。过高估计会导致超额配置 AppStream 2.0 实例,从而产生额外成本。要获得最佳配置,您可能需要将一个或多个计划扩缩策略与扩展策略结合起来。

要了解有关实施扩缩策略的更多信息,请查看扩缩 Amazon AppStream 2.0 实例集

用户费用

用户通过 AppStream 2.0 实例集实例流式传输应用程序,按每个 AWS 区域 每月向每个用户收取用户费用。为 AppStream 2.0 用户生成的用户 ID 一致。连接到映像生成器时不收取用户费用。

学校、大学和某些公共机构可能有资格享受减免的 Microsoft RDS SAL 用户费,即每位用户每月 0.44 美元。有关资格要求,请参阅 Microsoft 许可条款和文档

如果您享有 Microsoft 许可证移动性权益,您可能有资格自带 Microsoft RDS 客户端访问许可证 (CAL) 并将其用于 Amazon AppStream 2.0。如果您在自己的许可证覆盖范围内,则无需支付月度用户费。有关是否可以将现有 Microsoft RDS CAL 许可证与 Amazon AppStream 2.0 一起使用的更多信息,请参阅许可证移动性指南或咨询您的 Microsoft 许可代表。AWS

映像生成器使用情况

AppStream 2.0 映像生成器实例按小时收费。映像生成器实例费用包括计算、存储和流式传输协议使用的任意网络流量。所有正在运行的映像生成器实例均需支付适用的运行实例费用。该费用根据实例类型和大小计算,即使在没有连接管理员的情况下也是如此。

作为优化成本的最佳实践,请在不使用映像生成器实例时将其关闭。CloudWatch Events 规则可用于安排日常作业,例如调用 Lambda 函数来停止映像生成器实例。

您可以使用托管 AppStream 2.0 图像更新来更新 AppStream 2.0 映像。此更新方法提供最新的 Windows 操作系统更新和驱动程序更新,以及最新的 AppStream 2.0 代理软件。使用此方法更新映像时,作为托管服务流程的一部分,映像生成器会自动启动和停止。