使用 WorkSpaces Cost Optimizer 自动优化 WorkSpaces 使用成本

Amazon WorkSpaces
0
0
<!--StartFragment--> ### **背景介绍** [Amazon WorkSpaces](https://aws.amazon.com/cn/ec2/?trk=cndc-detail) 是在亚马逊云科技上运行的完全托管、安全的桌面即服务(DaaS)解决方案。借助 [Amazon WorkSpaces](https://aws.amazon.com/cn/ec2/?trk=cndc-detail),您可以为团队成员轻松配置[云桌面](https://aws.amazon.com/cn/ec2/?trk=cndc-detail),使他们可以随时随地访问所需的文档、应用程序和资源。[Amazon WorkSpaces](https://aws.amazon.com/cn/ec2/?trk=cndc-detail) 提供两种不同的付费选项:AlwaysOn(按月计费)和 AutoStop(按小时计费,不使用一定时间自动关闭),每一台 [WorkSpaces](https://aws.amazon.com/cn/ec2/?trk=cndc-detail) 根据使用情况选择相应的付费选项会更加节省成本。 为了帮助不便预测 [WorkSpace](https://aws.amazon.com/cn/ec2/?trk=cndc-detail) 使用模式的客户监控 [WorkSpaces](https://aws.amazon.com/cn/ec2/?trk=cndc-detail) 使用情况并优化成本,亚马逊云科技提供了 Amazon WorkSpaces Cost Optimizer,来分析您所有 [WorkSpace ](https://aws.amazon.com/cn/ec2/?trk=cndc-detail)的使用情况数据,并自动将 [WorkSpace](https://aws.amazon.com/cn/ec2/?trk=cndc-detail) 转换为最具成本效益的计费选项(每小时或每月一次)。本文将向您介绍如何在亚马逊云科技中国区部署 [WorkSpaces](https://aws.amazon.com/cn/ec2/?trk=cndc-detail) 成本优化方案,以及这个方案的工作原理。   ### **架构与工作原理** #### **1.架构图与资源** 部署此解决方案将在亚马逊云科技中国区域中构建以下环境。\ [![](https://s3.cn-north-1.amazonaws.com.cn/awschinablog/use-workspaces-cost-optimizer-to-automatically-optimize-the-cost-of-using-workspaces1.png)](https://s3.cn-north-1.amazonaws.com.cn/awschinablog/use-workspaces-cost-optimizer-to-automatically-optimize-the-cost-of-using-workspaces1.jpg)   #### **2.架构描述** 本方案中 Amazon CloudFormation 模板会创建一个 [Amazon CloudWatch](https://aws.amazon.com/cn/cloudwatch/?trk=cndc-detail) 规则,然后定时触发 Amazon Lambda 调用包含 Python 脚本的 Amazon Fargate 遍历 Amazon Directory Service 寻找 [Amazon WorkSapces](https://aws.amazon.com/cn/ec2/?trk=cndc-detail) 及其用量,并根据规则调整每台 [WorkSpaces](https://aws.amazon.com/cn/ec2/?trk=cndc-detail) 的使用模式,将结果生成日志存放到 [Amazon S3](https://aws.amazon.com/cn/s3/?trk=cndc-detail) 中。整个过程皆采用无服务化架构,只在运行时收取小部分费用,每月的成本不到一块。   #### **3.服务细节解读** Amazon CloudFormation 模板会创建一个 [Amazon CloudWatch](https://aws.amazon.com/cn/cloudwatch/?trk=cndc-detail) 规则,这是一个定时任务,每24小时运行一次(默认是在 UTC+0 时间的每天23:55),调用 Amazon WorkSpaces Cost Optimize Amazon Lambda 函数。您可以在 CloudWatch Rules 页面中看到这个任务。 Lambda 函数利用 [Amazon Elastic Container Service](https://aws.amazon.com/cn/ecs/?trk=cndc-detail)([Amazon ECS](https://aws.amazon.com/cn/ecs/?trk=cndc-detail))创建 Amazon Fargate 任务,任务包含两个主要部分: 1. 轮询 Amazon Directory Service,来收集在每个亚马逊云科技区域中为 [Amazon WorkSpaces](https://aws.amazon.com/cn/ec2/?trk=cndc-detail) 注册的所有目录的列表。 2. 检查按小时计费模型的每个 WorkSpace 的总使用量。如果已达到每月使用量阈值,则将这个 WorkSpace 转换为按月计费。 Fargate 任务执行的结果会记录在 S3 存储桶 CostOptimizerBucket 中,包括统计的每个 WorkSpace 运行情况和执行转换的记录,便于您查询和分析。   #### **4.运行周期** * Lambda 函数:每天运行一次,定时由 CloudWatch 触发。 * Fargate 任务:每天运行一次,由 Lambda 函数启动;具体的转换任务根据判定结果执行。 * S3 结果日志:每天产生一个以日期命名的文件夹,其中每一个文件代表一个区域中的 WorkSpaces 扫描结果。   #### **5.成本优化策略** 针对每一台 WorkSpace: * 每天运行一次的 Fargate 任务都会检查这台 WorkSpace 的本月使用时间和付费模式,如果这台 WorkSpace 是按小时计费模式,并且使用率高于阀值(您可以修改设置的成本均衡点),这个解决方案会自动将这台 WorkSpace 从按小时计费(Auto-Stop)转换为按月计费(Always On)。监控数据和转换操作会被记录在 S3 中。 * 在每个月结束时,如果这台 WorkSpace 是按月计费模式,并且本月的用量没有达到阀值,这个解决方案会下个月月初时自动将这台 WorkSpace 从按月计费(Always On)转换为按小时计费(Auto-Stop)。 \* 以上自动执行的成本优化策略都是在【Dry Run Mode】设置为 No 的时候执行的,您也可以将【Dry Run Mode】设置为 Yes,监控一段时间,寻找您认为更合理的成本优化平衡点,更精细地控制成本。 \*您也可以使用标签键【Skip_Convert】和任何标签值将资源标签应用于指定的 WorkSpace,对于您标记的 WorkSpace,此解决方案也将只进行记录、不自动转换。   ### **快速部署 WorkSpaces 成本优化方案** 本文的步骤主要针对在亚马逊云科技中国区使用 [WorkSpaces](https://aws.amazon.com/cn/ec2/?trk=cndc-detail),您可以使用以下链接快速启动一个 CloudFormation 堆栈来部署和管理整个方案: <https://console.amazonaws.cn/cloudformation/home?region=cn-northwest-1#/stacks/new?stackName=WorkSpacesCostOptimizer&templateURL=https://aws-solutions-reference.s3.cn-north-1.amazonaws.com.cn/workspaces-cost-optimizer/v2.2/workspaces-cost-optimizer.template?trk=cndc-detail>   如果您在亚马逊云科技全球区使用 [WorkSpaces](https://aws.amazon.com/cn/ec2/?trk=cndc-detail),可以使用以下链接快速启动全球区的 CloudFormation 解决方案来实现全球各区域的 WorkSpaces 成本优化:<https://console.aws.amazon.com/cloudformation/home?region=us-east-1#/stacks/new?stackName=WorkSpacesCostOptimizer&templateURL=https:%2F%2Fs3.amazonaws.com%2Fsolutions-reference%2Fworkspaces-cost-optimizer%2Flatest%2Fworkspaces-cost-optimizer.template?trk=cndc-detail>,以及参考全球区方案的使用说明:<https://aws.amazon.com/cn/solutions/amazon-workspaces-cost-optimizer/?trk=cndc-detail> #### **1. 开始启动堆栈** 点击以上[中国区域](https://console.amazonaws.cn/cloudformation/home?region=cn-northwest-1#/stacks/new?stackName=WorkSpacesCostOptimizer\\&templateURL=https://aws-solutions-reference.s3.cn-north-1.amazonaws.com.cn/workspaces-cost-optimizer/v2.2/workspaces-cost-optimizer.template?trk=cndc-detail)链接,打开亚马逊云科技管理控制台(如果还没登录会先跳转到登录页面,登录后进入模板启动页面)。默认情况下,此模板在宁夏区启动,以节约成本,您同时可以使用控制台右上方的区域选择链接在其他的区域启动此方案。 [![](https://s3.cn-north-1.amazonaws.com.cn/awschinablog/use-workspaces-cost-optimizer-to-automatically-optimize-the-cost-of-using-workspaces2.jpg)](https://s3.cn-north-1.amazonaws.com.cn/awschinablog/use-workspaces-cost-optimizer-to-automatically-optimize-the-cost-of-using-workspaces2.jpg)   #### **2. 配置启动参数** 点击下一步,进入详细参数的配置页面,在这里,我们特别强调一下【Launch in Dry Run Mode】,Dry Run Mode(监控模式)代表只收集数据,不自动做调整,如果您希望使用本方案先观察一下您的 [WorkSpaces ](https://aws.amazon.com/cn/ec2/?trk=cndc-detail)资源使用情况,自己手动调整或在调整参数后改为自动调整模式的话,可以保留默认值 Yes。在第一次启动时,建议您将 **【Launch in Dry Run Mode? 】** 这个参数设置为 No,其他参数保留默认值,这样成本优化解决方案就会根据您的 [WorkSpaces](https://aws.amazon.com/cn/ec2/?trk=cndc-detail) 的使用情况结合自己的默认参数自动调整您的 [WorkSpaces](https://aws.amazon.com/cn/ec2/?trk=cndc-detail) 付费选项,来实现成本优化。 配置图例如下: [![](https://s3.cn-north-1.amazonaws.com.cn/awschinablog/use-workspaces-cost-optimizer-to-automatically-optimize-the-cost-of-using-workspaces3.jpg)](https://s3.cn-north-1.amazonaws.com.cn/awschinablog/use-workspaces-cost-optimizer-to-automatically-optimize-the-cost-of-using-workspaces3.jpg) [![](https://s3.cn-north-1.amazonaws.com.cn/awschinablog/use-workspaces-cost-optimizer-to-automatically-optimize-the-cost-of-using-workspaces4.jpg)](https://s3.cn-north-1.amazonaws.com.cn/awschinablog/use-workspaces-cost-optimizer-to-automatically-optimize-the-cost-of-using-workspaces4.jpg) [![](https://s3.cn-north-1.amazonaws.com.cn/awschinablog/use-workspaces-cost-optimizer-to-automatically-optimize-the-cost-of-using-workspaces5.jpg)](https://s3.cn-north-1.amazonaws.com.cn/awschinablog/use-workspaces-cost-optimizer-to-automatically-optimize-the-cost-of-using-workspaces5.jpg)   下表展示的是每一项参数的含义,这些参数随时可以更新。 ![image.png](https://dev-media.amazoncloud.cn/a677eeb305eb4cff823abe72b3ba3479_image.png "image.png")   参数设置完成后,点击下一步,并在下一步的配置堆栈选项保留默认,直接点击下一步。 #### **3. 授权 IAM 并创建堆栈** 在最后的审核页面中,勾选最下方的【我确认,Amazon CloudFormation 可能创建 IAM 资源。】选择框,因为这个解决方案需要调用 CloudWatch、Lambda、ECS Fargate 等资源,需要相应的 IAM 权限支持。接下来点击【创建堆栈】,开始堆栈的创建。 [![](https://s3.cn-north-1.amazonaws.com.cn/awschinablog/use-workspaces-cost-optimizer-to-automatically-optimize-the-cost-of-using-workspaces6.jpg)](https://s3.cn-north-1.amazonaws.com.cn/awschinablog/use-workspaces-cost-optimizer-to-automatically-optimize-the-cost-of-using-workspaces6.jpg)   #### **4. 等待堆栈创建成功** 您可以在 Amazon CloudFormation 控制台的【状态】列中查看堆栈的状态,并点击右上方的刷新按钮更新状态。 [![](https://s3.cn-north-1.amazonaws.com.cn/awschinablog/use-workspaces-cost-optimizer-to-automatically-optimize-the-cost-of-using-workspaces7.jpg)](https://s3.cn-north-1.amazonaws.com.cn/awschinablog/use-workspaces-cost-optimizer-to-automatically-optimize-the-cost-of-using-workspaces7.jpg)   大约五分钟内,您可以看到堆栈状态变为 CREATE_COMPLETE,此时堆栈创建成功。 [![](https://s3.cn-north-1.amazonaws.com.cn/awschinablog/use-workspaces-cost-optimizer-to-automatically-optimize-the-cost-of-using-workspaces8.jpg)](https://s3.cn-north-1.amazonaws.com.cn/awschinablog/use-workspaces-cost-optimizer-to-automatically-optimize-the-cost-of-using-workspaces8.jpg)     #### **5. 查看堆栈资源** 选中堆栈后短则【资源】标签,可以看到这个堆栈启动的所有资源,如果您感兴趣可以一一点进去查看,了解每一部分的功能。这里建议您查看的是 S3 存储桶中保存的日志,可以搜索 S3 看到两个存储桶,其中 CostOptimizerBucket 这个存储桶中存储每天扫描您的 [WorkSpaces](https://aws.amazon.com/cn/ec2/?trk=cndc-detail) 资源之后留下的分析结果,以及执行转换的记录,您可以点击链接跳转到存储桶页面,定期查看其中的内容,了解您 [WorkSpaces](https://aws.amazon.com/cn/ec2/?trk=cndc-detail) 资源的使用情况,已经此解决方案的执行记录。 [![](https://s3.cn-north-1.amazonaws.com.cn/awschinablog/use-workspaces-cost-optimizer-to-automatically-optimize-the-cost-of-using-workspaces9.jpg)](https://s3.cn-north-1.amazonaws.com.cn/awschinablog/use-workspaces-cost-optimizer-to-automatically-optimize-the-cost-of-using-workspaces9.jpg)   ### **小结** 综上所述,使用 Amazon WorkSpaces Cost Optimizer 解决方案,可以监控和自动管理您的所有中国区 [WorkSpaces](https://aws.amazon.com/cn/ec2/?trk=cndc-detail) 的付费选项,从而在轻松使用远程桌面产品的同时优化成本,让您的云上办公轻松而敏捷。   ### **参考资料** 1. Amazon WorkSpaces Cost Optimizer 方案介绍:<https://aws.amazon.com/cn/solutions/amazon-workspaces-cost-optimizer/?trk=cndc-detail> 2. Amazon WorkSpaces Cost Optimizer 文档:<https://docs.aws.amazon.com/solutions/latest/workspaces-cost-optimizer/welcome.html?trk=cndc-detail> 3. Amazon WorkSpaces 文档:<https://docs.aws.amazon.com/zh_cn/workspaces/latest/adminguide/amazon-workspaces.html?trk=cndc-detail> 4. Amazon CloudFormation 文档:\ <https://docs.aws.amazon.com/cloudformation/index.html?trk=cndc-detail> 5. Amazon Lambda 文档:\ <https://docs.aws.amazon.com/zh_cn/lambda/index.html?trk=cndc-detail> 6. [Amazon CloudWatch](https://aws.amazon.com/cn/cloudwatch/?trk=cndc-detail) 文档:<https://docs.aws.amazon.com/cloudwatch/index.html?trk=cndc-detail> 7. Amazon Fargate 介绍:\ <https://aws.amazon.com/cn/fargate/?trk=cndc-detail>   Remove term: 成本优化,DaaS 成本优化 <!--EndFragment-->
目录
亚马逊云科技解决方案 基于行业客户应用场景及技术领域的解决方案
联系亚马逊云科技专家
亚马逊云科技解决方案
基于行业客户应用场景及技术领域的解决方案
联系专家
0
目录
关闭