可持续性

可持续性 支柱包括 可持续性学科解决您的业务活动对环境、经济和社会的长期影响。联合国世界环境与发展委员会将可持续发展定义为“在不损害子孙后代满足其自身需求的能力的前提下,满足当前需求的发展”。 您的企业或组织可能会对环境产生负面影响,例如直接或间接的碳排放、不可回收的废弃物以及对清洁水等共享资源的破坏。

在构建云工作负载时,可持续性实践是了解所使用服务的影响,量化整个工作负载生命周期的影响,并应用设计原则和最佳实践来减少这些影响。可持续性支柱侧重于环境影响,尤其是能源消耗和效率,因为它们是构架师在直接采取行动以减少资源使用时依据的重要杠杆。

设计原则

云中的 可持续性 有 six 项设计原则:

定义

云中的 可持续性 有 six 个最佳实践领域:

架构会影响工作负载的可持续性。优化工作负载放置,并针对用户、软件、数据、硬件以及开发和部署模式优化您的架构,以提高能源效率。这些领域中的每一个都代表着采用最佳实践的机会,以便通过最大限度地提高利用率,尽可能减少浪费以及为支持您的工作负载而部署和使用的总资源数,来减少云工作负载的可持续性影响。

架构改进过程包括了解您拥有什么以及您可以采取哪些改进措施,选择改进目标,测试改进,采用成功的改进,量化您取得的成功并分享您学到的经验,以便可以在其他地方复制,然后重复该过程。

您的改进目标可以是:

在优化的早期阶段,首先关注存在浪费或利用率低的领域,然后转向更有针对性的优化,以适应您的特定工作负载。

监控资源消耗随时间的变化。确定累积变化导致资源消耗效率低下或显著增加的地方。确定改进需求以解决消费变化并实施您优先考虑的改进。

最佳实践

区域选择

根据您的业务需求和可持续发展目标,选择您将在其中实施工作负载的区域。

AWS 提供比任何其他云提供商都更为广泛的全球覆盖范围,为了支持其全球覆盖范围并确保为世界各地的客户提供服务,AWS 迅速开设新的区域。AWS 覆盖多个地理区域,包括北美、南美、欧洲、中国、亚太地区、南非和中东的各个区域。

以下问题主要针对 可持续性 的准备阶段。

SUS 1: 如何选择区域来支持您的可持续发展目标?

选择亚马逊可再生能源项目附近的区域和其电网公布的碳强度低于其他位置(或区域)的区域。

用户模式

用户使用您的工作负载和其他资源的方式可以帮助您确定改进措施,以实现可持续性目标。扩展基础设施以持续匹配用户负载,并确保仅部署支持用户所需的最少资源。使服务水平与客户需求保持一致。定位资源以限制用户使用它们所需的网络。移除现有的未使用资产。识别已创建但未使用的资产并停止生成它们。为您的团队成员提供满足其需求的设备,同时最大限度地减少对可持续性的影响。

借助 AWS,您可以使用托管式监控工具来分析用户模式,管理已部署资源的弹性伸缩,同时利用 AWS 全球基础设施来优化工作负载的地理位置。

以下问题主要针对 可持续性 的准备阶段。

SUS 2: 您如何利用用户行为模式来支持您的可持续发展目标?

考虑采用以下实践:

  • 确定利用率低或无利用率的时段,缩减资源以消除过剩容量并提高效率。
  • 定义和更新服务等级协议(SLA),例如可用性或数据留存期,以最大限度地减少支持工作负载所需的资源数量,同时继续满足业务需求。
  • 分析应用程序资产(例如预编制的报告、数据集和静态图像)和资产访问模式,以识别冗余、利用率低下的情况和潜在的淘汰目标。整合具有冗余内容的生成资产(例如,具有重叠或共用数据集和输出的月度报告),以消除重复输出时消耗的资源。淘汰未使用的资产(例如,已停售产品的图片)以释放消耗的资源,并减少用于支持工作负载的资源数量。
  • 分析网络访问模式以识别您的客户建立连接的地理位置。选择可减少网络流量必须传输的距离的区域和服务,以减少支持您的工作负载所需的总网络资源。
  • 优化提供给团队成员的资源,在支持其需求的同时最大程度地降低对可持续性的影响。例如,在利用率高的共享云桌面上,而不是在利用率不高的强力单用户系统上,执行渲染和编译等复杂的操作。

软件和架构模式

实施用于执行负载平滑和保持已部署资源始终如一的高利用率的模式,以最大限度地减少资源消耗。由于用户行为会随着时间的推移而发生变化,因此组件可能会因缺乏使用而变得空闲。修改模式和架构以整合未充分利用的组件,从而提高整体利用率。停用不再需要的组件。了解工作负载组件的性能,并优化消耗资源最多的组件。注意客户用来访问您服务的设备,并实施相应的模式以最大限度地减少设备升级需要。

借助 AWS,工作负载开发人员可以选择要使用的语言和技术,从而为给定问题选择最合适的技术。

以下问题主要针对 可持续性 的准备阶段。

SUS 3: 您如何利用软件和架构模式来支持您的可持续发展目标?

考虑采用以下实践:

  • 使用高效的软件设计和架构来尽可能减少每个工作单元所需的平均资源。实施可促成均匀的组件利用率的机制,以减少任务之间的空闲资源并最大限度地减少负载峰值的影响。
  • 监控工作负载活动以识别各个组件的利用率随时间的变化。移除未使用且不再需要的组件,并重构利用率低的组件,以限制资源浪费。
  • 监控工作负载活动以识别消耗最多资源的应用程序组件。优化在这些组件中运行的代码,以最大限度地减少资源使用和提高性能。
  • 了解客户用来使用您服务的设备、它们的预期生命周期,以及更换这些组件对财务和可持续性的影响。实施软件模式和架构,以最大限度地减少客户更换和升级设备的需求。例如,使用与旧硬件和操作系统版本向后兼容的代码实现新功能,或管理有效负载的大小,使其不超过目标设备的存储容量。
  • 了解数据在工作负载中的使用方式、用户使用数据的方式,以及数据的传输和存储方式。选择相应的技术以最大限度地减少数据处理和存储要求。

数据模式

实施数据管理实践以减少支持工作负载所需的预置存储,以及使用存储所需的资源。了解您的数据,并使用最能支持数据的商业价值及其使用方式的存储技术和配置。当需求减少时,将数据移到更高效、性能更低的存储中,并删除不再需要的数据。

借助 AWS,您可以标记和管理数据资产的生命周期,从而能够自动选择最适合您工作负载的存储类。

以下问题主要针对 可持续性 的准备阶段。

SUS 4: 您如何利用数据访问模式和使用模式来支持您的可持续发展目标?

考虑采用以下实践:

  • 对数据进行分类以了解其对业务成果的重要性。使用此信息来确定何时可以将数据移动到更节能的存储,或者何时可以安全删除数据。
  • 使用最能支持您的数据访问和存储方式的存储,以在支持您的工作负载的同时最大限度地减少预置资源。例如,固态硬盘(SSD)比磁性驱动器更耗能,应该仅用于活跃的数据使用场景。对不常访问的数据使用节能的存档级存储。
  • 管理所有数据的生命周期并自动执行删除时间表,以最大限度地减少工作负载的总存储需求。
  • 要尽可能减少总预置存储,请创建大小分配适合工作负载的数据块存储。随着数据的增长,使用弹性卷扩展存储,而无需调整附加到计算资源的存储大小。定期检查弹性卷并缩小过度配置的卷,以适应当前数据大小。
  • 仅在必要时复制数据,以最大程度地减少消耗的总存储空间。使用备份技术在文件和数据块级别进行重复数据删除。限制使用独立驱动器冗余阵列(RAID)配置,除非需要满足 SLA。
  • 采用共享存储和单一事实来源,以避免重复数据删除并降低工作负载的总存储需求。仅在需要时从共享存储中获取数据。分离未使用的卷以释放资源。最大限度地减少跨网络的数据移动:使用共享存储和访问区域数据存储中的数据,以最大限度地减少支持工作负载数据移动所需的总网络资源。
  • 为了最大限度地减少存储消耗,仅备份具有商业价值或满足合规性要求所必需的数据。检查备份策略并在恢复方案中排除没有价值的临时存储。

硬件模式

寻找机会,通过更改硬件管理实践来降低工作负载可持续性影响。最大限度地减少预置和部署所需的硬件数量,并为您的各项工作负载选择最高效的硬件。

借助 AWS,您可以选择最新的处理器、存储、网络产品和操作系统,以帮助您最好地满足工作负载和工具的需求,以自动扩缩和监控部署的资源。

以下问题主要针对 可持续性 的准备阶段。

SUS 5: 您的硬件管理和使用实践如何支持您的可持续发展目标?

考虑采用以下实践:

  • 通过使用云的功能,您可以对工作负载实施进行频繁更改。在需求变化时更新已部署的组件。
  • 持续监控新实例类型的发布并利用能效改进,包括那些旨在支持特定工作负载(例如机器学习训练和推理以及视频转码)的实例类型。
  • 托管式服务将维持已部署硬件的高平均利用率和可持续性优化的责任转移给 AWS。使用托管式服务将服务的可持续性影响分散到服务的所有租户,从而减少您的个人份额。
  • 图形处理单元(GPU)可能是高功耗的来源,许多 GPU 工作负载是高度可变的,例如渲染、转码以及机器学习训练和建模。仅在需要时运行 GPU 实例,并在不需要时自动停用它们,以最大限度地减少资源消耗。

开发和部署流程

寻找机会,通过对开发、测试和部署实践进行更改来降低可持续性影响。

借助 AWS,您可以使用自动化和 AWS 开发人员工具,来加速可持续性创新并最大限度地减少已部署资源的影响。

以下问题主要针对 可持续性 的准备阶段。

SUS 6: 您的开发和部署流程如何支持您的可持续发展目标?

考虑采用以下实践:

  • 在将潜在改进部署到生产环境之前对其进行测试和验证。在计算改进的潜在未来收益时,考虑测试成本。开发低成本的测试方法,以实现细微的改进。
  • 最新的操作系统、库和应用程序可以提高工作负载效率,并简化更高效技术的采用。最新的软件可能还包括更准确地衡量工作负载对可持续性的影响的功能,因为供应商提供的功能是为了满足其自身的可持续性目标。
  • 使用自动化功能和基础设施作为代码,在需要时启动预生产环境,并在不使用时将其关闭。一种常见模式是安排与开发团队成员的工作时间相吻合的可用时段。休眠是一个有用的工具,它可以保存状态,并且只在需要时才快速将实例上线。使用具有爆增容量的实例类型、竞价型实例、弹性数据库服务、容器和其他技术,使开发和测试能力与使用相一致。
  • 托管式设备场将硬件制造和资源使用的可持续性影响分散到多个租户。托管式设备场提供多种设备类型,使您能够支持不太受欢迎的较旧硬件,并避免不必要的设备升级对客户可持续性的影响。

资源

请参阅以下资源,详细了解有关 可持续性 的最佳实践。

AWS Well-Architected
AWS Architecture Center
Sustainability in the Cloud
AWS enables sustainability solutions
The Climate Pledge
United Nations Sustainable Development Goals
Greenhouse Gas Protocol