Google Cloud Well-Architected Framework 中的可持续性核心提供了一些建议,可帮助您在 Google Cloud中设计、构建和管理节能且具有碳意识的工作负载。
本文档的目标受众群体包括在 Google Cloud中设计、构建、部署和维护工作负载的决策者、架构师、管理员、开发者和运维人员。
架构和运营决策对云端工作负载产生的能源使用、水资源影响和碳足迹有重大影响。每个工作负载,无论是小型网站还是大规模机器学习模型,都会消耗能源,并导致碳排放和水资源强度增加。将可持续性融入云架构和设计流程后,您构建的系统不仅高效、经济实惠,而且对环境可持续性有利。可持续架构具有弹性和优化性,可形成更高效率、更低成本和更低环境影响的正反馈环。
可持续设计:全面的业务成果
可持续发展与其他核心业务目标并不冲突;可持续发展实践有助于加速实现其他业务目标。优先考虑低碳资源和运营的架构选择有助于您构建更快、更便宜、更安全的系统。此类系统被视为在设计上具有可持续性,其中针对可持续性进行优化可对性能、成本、安全性、弹性和用户体验产生整体积极成果。
性能优化
针对性能进行优化的系统本身使用的资源较少。高效的应用可以更快地完成任务,因此所需的计算资源时间更短。因此,底层硬件消耗的千瓦时 (kWh) 能量更少。优化后的性能还可缩短延迟时间,提升用户体验。资源不会因等待低效流程而浪费时间和精力。当您使用专用硬件(例如 GPU 和 TPU)、采用高效算法并最大限度地提高并行处理能力时,您不仅可以提高性能,还可以减少云工作负载的碳足迹。
费用优化
云运营支出取决于资源用量。由于这种直接相关性,当您持续优化成本时,您也会减少能源消耗和碳排放。当您合理调整虚拟机规模、实施积极的自动扩缩、归档旧数据并消除闲置资源时,您会减少资源用量和云费用。您还可以减少系统的碳足迹,因为数据中心消耗更少的能源来运行工作负载。
安全性和弹性
安全和可靠是可持续云环境的先决条件。遭到入侵的系统(例如,受拒绝服务攻击 [DoS] 攻击或未经授权的数据泄露影响的系统)可能会大幅增加资源消耗。这些事件可能会导致流量激增,产生失控的计算周期以进行缓解,并需要进行耗时、高能耗的操作来进行取证分析、清理和数据恢复。强大的安全措施有助于防止资源用量出现不必要的激增,从而使您的运营保持稳定、可预测且高效利用能源。
用户体验
优先考虑效率、性能、无障碍功能和最少数据使用的系统有助于减少最终用户的能源消耗。如果应用加载较小的模型或处理较少的数据,从而更快地提供结果,则有助于减少网络设备和最终用户设备消耗的能源。这种能耗降低对带宽有限或使用旧设备的用户尤其有利。此外,可持续架构有助于最大限度地减少对地球的危害,并展示您对社会责任技术的承诺。
迁移到云的可持续发展价值
将本地工作负载迁移到云端有助于减少组织的环境足迹。与典型的本地部署相比,过渡到云基础设施可将能耗和相关排放量减少 1.4 到 2 倍。云数据中心是经过定制设计的现代化设施,旨在实现高能效 (PUE)。较旧的本地数据中心通常缺乏必要的规模,无法证明在先进的冷却和配电系统方面的投资是合理的。
责任共担和命运共同体
Google Cloud的共担责任和命运共同体介绍了云工作负载的安全性是 Google 与您(客户)之间的共担责任。这种责任共担模型也适用于可持续发展。
Google 负责 Google Cloud的可持续发展,这意味着我们的数据中心、基础设施和核心服务要高效利用能源和可持续水管理。我们持续投资于可再生能源、气候友好型冷却技术和硬件优化。如需详细了解 Google 的可持续发展策略和进展,请参阅 Google 可持续发展 2026 环保报告。
作为客户,您负责云中的可持续发展,这意味着您需要优化工作负载,实现高效利用能源。例如,您可以调整资源大小、使用可缩减到零的无服务器服务,以及有效管理数据生命周期。
我们还倡导命运共同体模型:可持续发展不仅仅是任务分工,更是您与 Google 之间的协作伙伴关系,旨在减少整个生态系统的环境足迹。
利用 AI 提升业务影响力
Well-Architected Framework 的可持续性核心(本文档)包含相关指南,可帮助您设计可持续的 AI 系统。然而,全面的可持续发展策略不仅限于 AI 工作负载对环境的影响。该策略应包括如何使用 AI 优化运营和创造新的业务价值。
AI 能够将海量数据集转化为富有实用价值的分析洞见,从而推动可持续发展。它使组织能够从被动合规转变为主动优化,例如在以下领域:
- 运营效率:通过改进库存管理、供应链优化和智能能源管理来简化运营。
- 透明度和风险:利用数据实现精细的供应链透明度、监管合规性和气候风险建模。
- 价值和增长:在可持续金融和二手电商领域开发新的收入来源。
Google 提供以下产品和功能,帮助您从数据中获取数据洞见,并为可持续发展的未来构建功能:
- Google Earth AI:使用全球级地理空间数据分析环境变化并监控供应链影响。
- WeatherNext:提供先进的天气预报和气候风险分析,帮助您增强应对气候波动的能力。
- 利用 Google 地球获取地理空间数据洞见:使用地理空间数据为位置添加丰富的情境数据,从而实现更智能的选址、资源规划和运营。
- Google 地图路线优化:优化物流和配送路线,以提高效率并减少燃料消耗和交通碳排放。
与合作伙伴和客户的协作
Google Cloud 和 TELUS 携手合作,通过将工作负载迁移到 Google 的碳中和基础设施并利用数据分析优化运营,推动云端可持续发展。此次合作通过智慧城市技术等举措带来了社会和环境效益,该技术利用实时数据减少加拿大各城市的交通拥堵和碳排放。如需详细了解此次合作,请参阅 Google Cloud 和 TELUS 携手合作,共促可持续发展。
使用智能体技能评估工作负载
如需让 AI 智能体根据此支柱中的原则和建议评估您的云工作负载,请使用 google-cloud-waf-sustainability 技能,该技能可在 GitHub 的 Google Agent Skills 代码库中找到。
如需安装技能,请在代理的客户端或终端中运行以下命令:
npx skills add google/skills --skill google-cloud-waf-sustainability
出现提示时,指定要为哪些 AI 智能体安装技能,并设置安装范围(项目或全局)。
如果您已安装该技能,则可以运行以下命令将其更新到最新版本:
npx skills update
核心原则
Well-Architected Framework 的可持续性核心中的建议与以下核心原则相对应:
- 使用消耗低碳能源的区域
- 优化 AI 和机器学习工作负载,提高能效
- 优化资源使用,实现可持续发展
- 开发节能软件
- 优化数据和存储,实现可持续发展
- 持续衡量和改进可持续性
- 推广可持续发展文化
- 使可持续发展实践与行业准则保持一致
贡献者
作者:Brett Tackaberry | 首席架构师
其他贡献者:
- Adrien Feudjio | | 碳足迹产品经理
- Alex Stepney | 首席架构师
- Daniel Lees | 云安全架构师
- Denise Pearl | 全球可持续发展营销主管
- Kumar Dhanagopal | 跨产品解决方案开发者
- Laura Hyatt | 客户工程师,FSI
- Nicolas Pintaux | 客户工程师,应用现代化改造专家
- Radhika Kanakam | Google Cloud Well-Architected Framework 项目主管
使用消耗低碳能源的区域
Google Cloud Well-Architected Framework 可持续发展核心中的这一原则提供了相关建议,可帮助您为 Google Cloud中的工作负载选择低碳区域。
原则概览
当您计划在 Google Cloud中部署工作负载时,一个重要的架构决策是为工作负载选择 Google Cloud 区域。此决策会影响工作负载的碳足迹。为了最大限度地减少碳足迹,您的区域选择策略必须包含以下元素:
- 数据驱动型选择:如需确定区域并确定其优先级,请考虑
低 CO2 指示器和无碳能源 (CFE) 指标。
- 基于政策的治理:使用 Organization Policy Service 中的资源位置限制条件,将资源创建限制在环境最佳的位置。
- 运营灵活性:使用时间转移和碳感知调度等技术,在电网碳强度最低的时段运行批量工作负载。
用于为云中的应用和工作负载供电的电力是影响您选择 Google Cloud 区域的重要因素。此外,请考虑以下因素:
- 数据驻留和主权:您需要存储数据的位置是决定您选择 Google Cloud区域的基本因素。此选择会影响是否符合当地数据驻留要求。
- 最终用户的延迟时间:最终用户与您部署应用的区域之间的地理距离会影响用户体验和应用性能。
- 费用: Google Cloud 资源的价格可能因区域而异。
Google Cloud 区域选择器工具可帮助您根据对碳足迹、费用和延迟时间的要求选择最佳 Google Cloud 区域。您还可以使用 Cloud Location Finder,根据您对邻近性、无碳能源 (CFE) 使用情况和其他参数的要求,在 Google Cloud 和其他提供商中查找云位置。
建议
如需在低碳区域部署云工作负载,请考虑以下各部分中的建议。这些建议基于 Google Cloud 区域 Google Cloud 的无碳能源 中的指导 。
了解云区域的碳强度
Google Cloud 区域中的数据中心使用该区域所在电网的能源。Google 使用 CFE 指标(每小时计算一次)来衡量区域的碳影响。CFE 表示一小时内消耗的总能源中无碳能源所占的百分比。CFE 指标取决于两个因素:
- 在给定时间段内为电网供电的发电厂类型。
- Google 归因的清洁能源。
如需了解每个Google Cloud 区域的汇总平均每小时 CFE%,请参阅 Google Cloud 区域的无碳能源。您还可以从 GitHub 中的 Google Cloud 区域的无碳能源代码库和 BigQuery 公共数据集中获取机器可读格式的这些数据。
将 CFE 纳入您的位置选择策略
请考虑以下建议:
- 为您的应用选择最清洁的区域。如果您计划长时间运行应用,请在 CFE% 最高的区域中运行。对于批处理工作负载,您可以更灵活地选择区域,因为您可以预测工作负载何时必须运行。
- 选择低碳区域。 Google Cloud 网站中的某些页面和 Google Cloud 控制台中的位置选择器会针对碳影响最低的区域显示
二氧化碳排放量低指示图标。
- 使用资源位置组织政策限制条件,将资源的创建限制在特定的低碳 Google Cloud区域。例如,如需仅允许在美国境内的低碳区域创建资源,请创建指定
in:us-low-carbon-locations值组的限制条件。
在为 Google Cloud 资源选择位置时,还应考虑区域选择的最佳实践,包括数据驻留要求、最终用户延迟时间、应用冗余、服务可用性和价格等因素。
使用时段安排
电网的碳强度在一天中可能会有很大差异。这种变化取决于为电网供电的能源组合。您可以安排工作负载(尤其是灵活或非紧急的工作负载)在电网由较高比例的 CFE 供电时运行。
例如,许多电网在非高峰时段或太阳能和风能等可再生能源向电网供应更多电力时,CFE 百分比会更高。通过在 CFE 较高的时段安排模型训练和大规模批量推理等计算密集型任务,您可以显著减少相关的碳排放,而不会影响性能或成本。这种方法称为时间转移,即利用电网碳强度的动态特性来优化工作负载,以实现可持续发展。
优化 AI 和机器学习工作负载,提高能效
Google Cloud Well-Architected Framework 可持续性核心中的这一原则提供了优化 AI 和机器学习工作负载以减少其能耗和碳足迹的建议。
原则概览
为了优化 AI 和机器学习工作负载以实现可持续性,您需要采用整体方法来设计、部署和运行工作负载。选择合适的模型和专用硬件(例如张量处理单元 [TPU]),在低碳区域运行工作负载,进行优化以减少资源用量,并应用运营最佳实践。
优化 AI 和机器学习工作负载的成本和性能的架构和运营实践,本质上会减少能源消耗并降低碳足迹。Well-Architected Framework 中的 AI 和机器学习视角介绍了设计、构建和管理 AI 和机器学习工作负载的原则和建议,这些工作负载可满足您的运营、安全、可靠性、费用和效果目标。此外,Cloud 架构中心还提供了 Google Cloud中 AI 和机器学习工作负载的详细参考架构和设计指南。
建议
如需优化 AI 和机器学习工作负载以提高能效,请考虑以下各部分中的建议。
使用 TPU 构建高能效架构
AI 和机器学习工作负载可能是计算密集型。AI 和机器学习工作负载的能源消耗是可持续发展的一个关键考虑因素。TPU 可让您显著提高 AI 和机器学习工作负载的能效和可持续性。
TPU 是专为 AI 和机器学习工作负载而定制设计的加速器。TPU 的专用架构使其在处理大规模矩阵乘法(深度学习的基础)时非常高效。与 CPU 或 GPU 等通用处理器相比,TPU 可以更高效地大规模执行复杂任务。
TPU 可直接带来以下可持续发展优势:
- 能源消耗更低:TPU 旨在实现最佳能效。它们每消耗一瓦特能量,就能提供更高的计算能力。 其专用架构可显著降低大规模训练和推理任务的功耗,从而降低运营成本并减少能源消耗。
- 更快的训练和推理:TPU 的卓越性能让您可以在数小时(而非数天)内训练复杂的 AI 模型。总计算时间的大幅减少直接有助于减少环境足迹。
- 减少冷却需求:TPU 采用先进的液冷技术,可提供高效的热管理,并显著减少用于冷却数据中心的能源。
- 优化 AI 生命周期:通过集成硬件和软件,TPU 可在整个 AI 生命周期(从数据处理到模型部署)中提供优化的解决方案。
遵循 4M 资源选择最佳实践
Google 建议采用一系列最佳实践,以显著降低 AI 和机器学习工作负载的能耗和碳排放。我们将这些最佳实践称为 4M:
- 模型:对于专业应用场景,请选择专用模型,这些模型使用的计算资源比通用大型模型少。
- 机器:选择针对机器学习训练进行了优化的处理器和系统。与通用处理器相比,这些处理器可将性能和能源效率提高 2 到 5 倍。
- 机械化:在云端部署计算密集型工作负载。与本地部署相比,您的工作负载消耗的能源更少,排放量也降低了 1.4 到 2 倍。云数据中心使用经过定制设计的新型仓库,这些仓库专为高效利用能源而打造,具有较高的能效 (PUE) 比。本地数据中心通常较陈旧且规模较小,因此投资节能型冷却和电力分配系统可能不经济。
- 地图:选择 Google Cloud 使用最清洁能源的位置。这种方法有助于将工作负载的总碳足迹减少 5-10 倍。如需了解详情,请参阅 Google Cloud 区域的无碳能源数据。
如需详细了解 4M 最佳实践和效率指标,请参阅以下研究论文:
优化 AI 模型和算法,以进行训练和推理
AI 模型的架构以及用于训练和推理的算法对能源消耗有重大影响。请考虑以下建议。
选择高效的 AI 模型
选择更小、更高效且满足性能要求的 AI 模型。不要选择最大的可用模型作为默认选择。例如,与 BERT 等较大模型相比,DistilBERT 等较小的蒸馏模型版本可以提供类似的性能,但计算开销显著降低,推理速度更快。
使用特定领域的高效解决方案
选择专用机器学习解决方案,这些解决方案可提供更好的性能,并且所需的计算能力明显低于大型基础模型。这些专用解决方案通常经过预训练和高度优化。它们可以显著减少训练和推理工作负载的能源消耗和研究工作量。以下是特定于网域的专用解决方案示例:
- Earth AI 是一种高效利用能源的解决方案,可综合大量全球地理空间数据,提供及时、准确且富有实用价值的分析洞见。
- 与传统的基于物理的方法相比,WeatherNext 可生成更快、更高效且高度准确的全球天气预报。
应用适当的模型压缩技术
以下是可用于模型压缩的技术示例:
- 剪枝:从神经网络中移除不必要的参数。这些参数对模型的性能没有显著贡献。此方法可缩减模型大小,并减少推理所需的计算资源。
- 量化:降低模型参数的精度。例如,将精度从 32 位浮点数降低到 8 位整数。此技术有助于显著减少内存占用和功耗,而不会明显降低准确率。
- 知识蒸馏:训练较小的学生模型,以模仿较大、较复杂的教师模型的行为。学生模型可以用更少的参数和更少的能耗实现高水平的性能。
使用专用硬件
如遵循 4M 资源选择最佳实践中所述,请选择针对机器学习训练进行了优化的处理器和系统。与通用处理器相比,这些处理器可将性能和能效提高 2-5 倍。
使用参数高效微调
使用低秩适应 (LoRA) 等参数高效微调 (PEFT) 方法,而不是调整模型的所有数十亿个参数(全面微调)。使用此方法时,您需要冻结原始模型的权重,并仅训练少量新的轻量级层。这种方法有助于降低成本和能源消耗。
遵循 AI 和机器学习运维的最佳实践
运营实践会显著影响 AI 和机器学习工作负载的可持续性。请考虑以下建议。
优化模型训练流程
使用以下方法优化模型训练过程:
- 早停法:监控训练过程,当您发现模型在验证集上的性能没有进一步提升时,停止训练。此方法有助于您避免不必要的计算和能耗。
- 高效的数据加载:使用高效的数据流水线,确保 GPU 和 TPU 始终得到利用,而不会等待数据。此技术有助于最大限度地提高资源利用率并减少能源浪费。
- 优化的超参数调优:如需更高效地找到最佳超参数,请使用贝叶斯优化或强化学习等技术。避免进行详尽的网格搜索,因为这可能是资源密集型操作。
提高推理效率
如需提高 AI 推理任务的效率,请使用以下方法:
- 批处理:将多个推理请求分组,并利用 GPU 和 TPU 上的并行处理。此方法有助于降低每次预测的能耗。
- 高级缓存:实施多层缓存策略,包括用于自回归生成的键值对 (KV) 缓存和用于应用响应的语义提示缓存。此技术有助于绕过冗余的模型计算,并可显著减少能耗和碳排放。
衡量和监控
监控和衡量以下参数:
- 用量和费用:使用适当的工具跟踪 AI 工作负载的 token 用量、能源消耗和碳足迹。这些数据可帮助您发现优化机会,并报告可持续发展目标的进展情况。
- 性能:持续监控模型在生产环境中的性能。识别数据偏移等问题,这些问题可能表明模型需要再次微调。如果您需要重新训练模型,可以使用原始微调模型作为起点,从而节省大量时间、资金和精力。
- 如需跟踪效果指标,请使用 Cloud Monitoring。
- 如需将模型更改与效果指标的改进相关联,请使用事件注释。
如需详细了解如何实施持续改进,请参阅持续衡量和改进可持续性。
实现碳感知型调度
将机器学习流水线作业设计为在能源结构最清洁的区域运行。 使用碳足迹报告确定碳密集度最低的区域。在本地电网具有较高比例的无碳能源 (CFE) 的时段,将资源密集型任务安排为批量作业。
优化数据流水线
机器学习运维和微调需要干净、高质量的数据集。在启动机器学习作业之前,请使用代管式数据处理服务高效地准备数据。例如,使用 Dataflow 进行流处理和批处理,使用 Managed Service for Apache Spark 运行托管式 Spark 和 Hadoop 流水线。经过优化的数据流水线有助于确保微调工作负载无需等待数据,从而最大限度地提高资源利用率,并减少能源浪费。
采用 MLOps
如需自动执行和管理整个机器学习生命周期,请实施机器学习运维 (MLOps) 实践。这些做法有助于确保模型得到持续监控、验证和高效重新部署,从而避免不必要的训练或资源分配。
使用托管式服务
使用 Gemini Enterprise Agent Platform 等代管式云服务,而不是管理自己的基础设施。云平台会处理底层资源管理,让您可以专注于微调过程。使用包含内置超参数调优、模型监控和资源管理工具的服务。
后续步骤
- Google 的 AI 会消耗多少能源?我们算了一笔账
- Ironwood:面向推理时代的首款 Google TPU
- Google 可持续发展 2025 环保报告
- 利用 GLaM 实现更高效的上下文学习
- 上下文缓存概览
优化资源使用,实现可持续发展
Google Cloud Well-Architected Framework 可持续发展核心中的这一原则提供了相关建议,可帮助您优化 Google Cloud中工作负载的资源用量。
原则概览
优化资源用量对于提高云环境的可持续性至关重要。从计算周期到数据存储区,每项预配的资源都会直接影响能耗、水资源消耗强度和碳排放。为了减少工作负载的环境足迹,您需要在预配、管理和使用云资源时做出明智的选择。
建议
如需优化资源用量,请考虑以下各部分中的建议。
实现自动化和动态伸缩
自动化和动态伸缩可确保资源使用达到最佳状态,这有助于防止因基础设施闲置或过度预配而造成能源浪费。能源浪费的减少意味着成本和碳排放量的降低。
使用以下方法实现自动化和动态可伸缩性。
使用横向伸缩
对于大多数云优先应用,横向伸缩是首选的伸缩技术。您无需增加每个实例的大小(称为纵向伸缩),而是通过添加实例来分配负载。例如,您可以使用托管式实例组 (MIG) 自动扩容一组 Compute Engine 虚拟机。横向扩缩的基础设施更具弹性,因为实例故障不会影响应用的可用性。对于负载水平可变的应用,横向伸缩也是一种资源高效的技术。
配置适当的伸缩政策
根据工作负载的要求配置自动扩缩设置。 定义特定于应用行为的自定义指标和阈值。 除了 CPU 利用率之外,还应考虑异步任务的队列深度、请求延迟时间和自定义应用指标等指标。为防止频繁、不必要的伸缩或抖动,请定义明确的伸缩政策。例如,对于您在 Google Kubernetes Engine (GKE) 中部署的工作负载,请配置适当的集群自动扩缩政策。
结合使用被动式和主动式伸缩
采用被动伸缩时,系统会根据实时负载变化进行伸缩。 此方法适用于负载出现不可预测峰值的应用。
主动伸缩适用于具有可预测模式的工作负载,例如固定的每日营业时间和每周报告生成。对于此类工作负载,请使用计划自动扩缩来预配资源,以便它们可以处理预期的负载水平。此技术可防止资源争用,并确保更顺畅的用户体验和更高的效率。此方法还可帮助您主动规划已知的负载高峰,例如重大特惠活动和重点营销活动。
Google Cloud GKE Autopilot、Cloud Run 和 MIG 等托管式服务和功能会通过学习您的工作负载模式,自动管理主动伸缩。默认情况下,当 Cloud Run 服务未收到任何流量时,它会缩容到零个实例。
设计无状态应用
为了让应用能够横向扩缩,其组件应为无状态。 这意味着特定用户的会话或数据不会与单个计算实例相关联。当您将会话状态存储在计算实例之外(例如 Memorystore for Redis 中)时,任何计算实例都可以处理来自任何用户的请求。这种设计方法可实现无缝且高效的横向伸缩。
使用调度和批处理
批处理非常适合大规模、非紧急的工作负载。批量作业有助于优化工作负载,提高能效并降低成本。
使用以下方法实现调度和批量作业。
在碳强度较低时段充电
将批量作业安排在低碳区域以及当地电网清洁能源比例较高的时段运行。如需确定某个区域一天中碳排放量最低的时间,请使用碳足迹报告。
将 Spot 虚拟机用于非关键工作负载
Spot 虚拟机可让您以极高的折扣利用未使用的 Compute Engine 容量。Spot 虚拟机可能会被抢占,但它们提供了一种经济高效的方式来处理大型数据集,而无需专用、常年运行的资源。Spot 虚拟机非常适合非关键、容错型批量作业。
整合和并行化作业
为了减少启动和关闭单个作业的开销,请将类似作业分组到一个大型批处理中。在 Batch 等服务上运行这些高容量工作负载。该服务会自动预配和管理必要的基础设施,这有助于确保最佳资源利用率。
使用托管式服务
Batch 和 Dataflow 等托管式服务会自动处理资源预配、调度和监控。云平台负责资源优化。您可以专注于应用逻辑。例如,Dataflow 会根据流水线中的数据量自动扩缩工作器数量,因此您无需为空闲资源付费。
根据工作负载要求匹配虚拟机机器家族
您可以用于 Compute Engine 虚拟机的机器类型分为机器家族,这些机器家族针对不同的工作负载进行了优化。根据工作负载的要求选择合适的机器家族。
| 机器家族 | 推荐的工作负载类型 | 可持续性指南 |
|---|---|---|
| 通用实例:这些实例提供均衡的 CPU 与内存比率。 | Web 服务器、微服务、中小型数据库和开发环境。 | E2 系列可动态分配资源,因此具有极高的成本效益和能效。C4A、N4A 和 Tau T2A 系列使用基于 Arm 的处理器,对于大规模工作负载,这些处理器通常具有更高的单位性能能效。 |
| 计算优化型实例:这些实例提供较高的 vCPU 与内存比率以及较高的每核心性能。 | 高性能计算 (HPC)、批处理、游戏服务器和基于 CPU 的数据分析。 | 借助计算优化实例,您可以更快地完成 CPU 密集型任务,从而减少作业的总计算时间和能源消耗。 |
| 内存优化型实例:这些实例专为需要大量内存的工作负载而设计。 | 大型内存中数据库和数据仓库,例如 SAP HANA 或内存中分析。 | 内存优化实例可将内存密集型工作负载整合到更少的物理节点上。与使用多个较小的实例相比,这种整合可减少所需的总能耗。高性能内存可缩短数据访问延迟时间,从而减少 CPU 处于活跃状态的总时间。 |
| 存储优化型实例:这些实例提供高吞吐量、低延迟的本地 SSD 存储。 | 数据仓储、日志分析以及 SQL、NoSQL 和向量数据库。 | 存储优化型实例在本地处理海量数据集,这有助于消除跨位置网络数据出站流量所消耗的能源。如果您将本地存储空间用于高 IOPS 任务,则可以避免过度预配多个标准实例。 |
| 加速器优化实例:这些实例专为 GPU 和 TPU 加速的工作负载(例如 AI、机器学习和 HPC)而构建。 | 机器学习模型训练和推理,以及科学模拟。 | TPU 旨在实现最佳能效。它们可提供更高的每瓦计算量。 与仅使用 CPU 的替代方案相比,配备 NVIDIA H100 GPU 的 A3 系列等 GPU 加速实例在训练大型模型时能效显著提高。虽然 GPU 加速实例的名义功耗较高,但任务完成速度要快得多。 |
升级到最新机器类型
使用最新的机器类型可能有助于提高可持续性。机器类型更新后,通常会更节能,并提供更高的性能功耗比。使用最新机器类型的虚拟机可能会以更低的功耗完成相同的工作量。
CPU、GPU 和 TPU 通常受益于芯片架构的技术进步,例如:
- 专用核心:处理器方面的进步通常包括针对常见工作负载的专用核心或指令。例如,CPU 可能具有用于矢量运算的专用核心或集成式 AI 加速器。当这些任务从主 CPU 分流时,任务的完成效率更高,消耗的能源更少。
- 改进的电源管理:芯片架构的进步通常包括更复杂的电源管理功能,例如根据工作负载动态调整电压和频率。这些电源管理功能使芯片能够以最高效率运行,并在空闲时进入低功耗状态,从而最大限度地减少能源消耗。
芯片架构的技术改进在可持续性和成本方面带来了以下直接优势:
- 更高的性能功耗比:这是衡量可持续性的关键指标。例如,在能源消耗相同的情况下,C4 虚拟机的性价比比 C3 虚拟机高 40%。与同类 x86 处理器相比,C4A 处理器的能效高出 60%。这些性能功能可让您更快地完成任务,或在相同负载下使用更少的实例。
- 降低总能耗:借助改进的处理器,计算资源在执行给定任务时使用的时间更短,从而降低了总体能耗和碳足迹。对于短期、计算密集型工作负载(例如批量作业和机器学习模型训练),碳影响尤其高。
- 最佳资源利用率:最新的机器类型通常更适合现代软件,并且与云平台的高级功能更兼容。这些机器类型通常可以提高资源利用率,从而减少过度预配的需求,并有助于确保每一瓦电力都得到有效利用。
部署容器化应用
您可以使用基于容器的全托管式服务(例如 GKE 和 Cloud Run)作为可持续云计算策略的一部分。这些服务有助于优化资源利用率并自动执行资源管理。
利用 Cloud Run 的缩减至零功能
Cloud Run 提供了一个代管式无服务器环境,当服务没有传入流量或作业完成时,该环境会自动将实例缩减至零。自动扩缩有助于消除闲置基础设施的能源消耗。资源仅在主动处理请求时才会消耗电量。此策略对于间歇性或事件驱动型工作负载非常有效。对于 AI 工作负载,您可以将 GPU 与 Cloud Run 搭配使用,这样您只需在使用 GPU 时才消耗 GPU 并为其付费。
使用 GKE 自动优化资源
GKE 是一个容器编排平台,可确保应用仅使用所需的资源。为了帮助您自动优化资源,GKE 提供了以下技术:
- 装箱:GKE Autopilot 会智能地将多个容器打包到可用节点上。装箱可最大限度地提高每个节点的利用率,并减少空闲或未充分利用的节点数量,从而有助于降低能源消耗。
- Pod 横向自动扩缩 (HPA):借助 HPA,系统会根据预定义的指标(例如 CPU 使用率或特定于应用的自定义指标)自动调整容器副本 (Pod) 的数量。例如,如果您的应用遇到流量高峰,GKE 会添加 Pod 来满足需求。当流量减少时,GKE 会减少 Pod 数量。这种动态伸缩可防止资源预配过量,因此您无需为不必要的计算容量付费或启动不必要的计算容量。
- Pod 纵向自动扩缩 (VPA):您可以将 GKE 配置为自动调整各个容器的 CPU 和内存分配及限制。此配置可确保容器不会分配到超出其需求的资源,这有助于防止资源过度预配。
- GKE 多维 Pod 自动扩缩:对于复杂的工作负载,您可以同时配置 HPA 和 VPA,以优化 Pod 数量和每个 Pod 的大小。此方法有助于确保在达到所需性能的前提下尽可能降低能耗。
- 拓扑感知调度 (TAS):TAS 根据数据中心基础设施的物理结构放置 Pod,从而提高 GKE 中 AI 和机器学习工作负载的网络效率。TAS 会策略性地将工作负载并置,以最大限度地减少网络跃点。这种共置有助于降低通信延迟时间和能源消耗。通过优化节点和专用硬件的物理对齐,TAS 可加快任务完成速度,并最大限度地提高大规模 AI 和机器学习工作负载的能效。
配置碳感知调度
在 Google,我们会不断将工作负载转移到提供最清洁电力的位置和时间。我们还会对旧设备进行再利用或回收,以用于其他应用场景。您可以使用这种碳感知型调度策略,确保容器化工作负载使用清洁能源。
如需实现碳感知调度,您需要了解实时为某个区域的数据中心供电的能源组合。您可以从 GitHub 中的 Google Cloud 区域的无碳能源代码库或 BigQuery 公共数据集中获取机器可读格式的这些信息。 用于计算 Google 年度碳数据集的每小时电网组合和碳强度数据来自 Electricity Maps。
如需实现碳感知型调度,我们建议您采用以下方法:
- 地理位置转移:安排工作负载在可再生能源比例较高的区域运行。这种方法可让您使用更清洁的电网。
- 时间转移:对于非关键、灵活的工作负载(例如批处理),请将工作负载配置为在非高峰时段或可再生能源最充足时运行。这种方法称为时间转移,有助于在有更清洁的能源可用时利用这些能源,从而减少总体碳足迹。
设计高能效的灾难恢复方案
为灾难恢复 (DR) 做准备通常涉及在次要区域中预配冗余资源。但是,空闲或利用率不足的资源可能会导致严重的能源浪费。选择可最大限度提高资源利用率并最大限度减少碳影响,同时不影响恢复时间目标 (RTO) 的灾难恢复策略。
优化冷启动效率
使用以下方法最大限度地减少或消除次要(灾难恢复)区域中的活跃资源:
- 优先考虑冷灾难恢复:使灾难恢复区域中的资源保持关闭或缩减至零的状态。这种方法有助于消除闲置计算资源的碳足迹。
- 利用无服务器故障切换:使用 Cloud Run 等代管式无服务器服务作为灾难恢复端点。Cloud Run 在不使用时会缩减至零,因此您可以维护一个在流量转移到灾难恢复区域之前不消耗任何能量的灾难恢复拓扑。
- 使用基础设施即代码 (IaC) 自动执行恢复:不要让灾难恢复网站中的资源保持运行(温备),而是使用 Terraform 等 IaC 工具仅在需要时快速预配环境。
平衡冗余和利用率
资源冗余是能源浪费的主要原因。如需减少冗余,请使用以下方法:
- 优先选择主动-主动,而非主动-被动:在主动-被动设置中,被动网站中的资源处于空闲状态,这会导致能源浪费。规模经过优化的双活架构可确保两个区域中预配的所有资源都主动处理流量。这种方法有助于最大限度地提高基础设施的能效。
- 适当的冗余:仅在需要满足高可用性或灾难恢复要求时,才跨区域复制数据和服务。每增加一个副本,都会增加永久性存储和网络出站流量的能耗。
开发高能效软件
Google Cloud Well-Architected Framework 可持续性核心中的这一原则提供了相关建议,可帮助您编写能最大限度减少能源消耗和服务器负载的软件。
原则概览
遵循最佳实践构建云应用时,您可以优化云基础设施资源(AI、计算、存储和网络)所利用的能源。您还可以帮助减少数据中心的水资源需求,以及最终用户设备在访问您的应用时消耗的能源。
如需构建节能软件,您需要将可持续性考虑因素融入整个软件生命周期,从设计和开发到部署、维护和归档。如需详细了解如何使用 AI 构建可最大限度减少云工作负载对环境影响的软件,请参阅 Google Cloud 电子书以可持续发展的方式构建软件。
建议
本部分中的建议分为以下重点领域:
- 尽量减少计算工作:优先采用精简、专注的代码,消除冗余逻辑,避免不必要的计算或功能膨胀。
- 使用高效的算法和数据结构:选择时间效率和内存效率高的算法,以减少 CPU 负载并最大限度地降低内存用量。
- 优化计算和数据操作:在开发时,应以高效使用所有可用资源(包括 CPU、内存、磁盘 I/O 和网络)为目标。例如,当您将忙碌循环替换为事件驱动型逻辑时,可以避免不必要的轮询。
- 实施前端优化:如需减少最终用户设备消耗的电量,请对图片和资源使用缩减、压缩和延迟加载等策略。
最大限度减少计算工作
如需编写节能软件,您需要最大限度地减少应用执行的计算工作总量。每条不必要的指令、冗余循环和额外功能都会消耗能源、时间和资源。请遵循以下建议来构建执行最少计算的软件。
编写精简、专注的代码
如需编写实现所需结果所必需的最少代码,请使用以下方法:
- 消除冗余逻辑和功能膨胀:编写仅执行基本功能的代码。避免使用会增加计算开销和复杂性,但不会为用户提供可衡量价值的功能。
- 重构:为了长期提高能效,请定期审核您的应用,以找出未使用的功能。请采取措施,酌情移除或重构此类功能。
- 避免不必要的操作:在需要结果之前,请勿计算值或运行操作。使用延迟求值等技术,将计算延迟到应用中的依赖组件需要输出时。
- 优先考虑代码的可读性和可重用性:编写可读且可重用的代码。这种方法可最大限度地减少重复,并遵循不要重复 (DRY) 原则,这有助于减少软件开发和维护产生的碳排放。
使用后端缓存
后端缓存可确保应用不会重复执行相同的工作。缓存命中率越高,每个请求的能耗几乎呈线性下降。如需实现后端缓存,请使用以下方法:
- 缓存频繁访问的数据:将经常访问的数据存储在临时的高性能存储位置。例如,使用 Memorystore 等内存中缓存服务。当应用从缓存中检索数据时,数据库查询和磁盘 I/O 操作的数量会减少。因此,后端数据库和服务器上的负载会减少。
- 缓存 API 响应:为避免冗余且成本高昂的网络调用,请缓存频繁发出的 API 请求的结果。
- 优先考虑内存缓存:为了消除缓慢的磁盘 I/O 操作和复杂的数据库查询,请将数据存储在高速内存 (RAM) 中。
- 选择适当的缓存写入策略:
- 透写策略可确保数据同步写入缓存和永久性存储区。此策略可提高缓存命中率,从而减少持久性存储区收到的耗能读取请求。
- 回写(延迟写入)策略可提升写入密集型应用的性能。数据会先写入缓存,稍后数据库会异步更新。此策略可减少较慢数据库的即时写入负载。
- 使用智能逐出政策:保持缓存精简高效。如需移除过时或低效数据,并最大限度地增加可用于频繁请求的数据的空间,请使用存留时间 (TTL)、最近最少使用 (LRU) 和最不经常使用 (LFU) 等政策。
使用高效的算法和数据结构
您选择的算法和数据结构决定了软件的原始计算复杂度。选择适当的算法和数据结构后,您便可以最大限度地减少完成任务所需的 CPU 周期数和内存操作数。更少的 CPU 周期和内存操作可降低能耗。
选择可实现最佳时间复杂度的算法
优先选择能在最短时间内达到所需结果的算法。这种方法有助于缩短资源使用时长。如需选择可优化资源使用情况的算法,请使用以下方法:
- 专注于降低复杂性:如需评估复杂性,请超越运行时指标,考虑算法的理论复杂性。例如,与冒泡排序相比,归并排序可显著减少大型数据集的计算负载和能源消耗。
- 避免重复工作:在所选编程语言或框架中使用内置的优化函数。这些函数通常使用 C 或 C++ 等更底层、更节能的语言实现,因此与自定义编码函数相比,它们针对底层硬件进行了更好的优化。
选择高效的数据结构
您选择的数据结构决定了数据的检索、插入或处理速度。此速度会影响 CPU 和内存用量。如需选择高效的数据结构,请使用以下方法:
- 针对搜索和检索进行优化:对于检查项是否存在或检索特定值等常见操作,请首选针对速度进行了优化的数据结构。例如,哈希映射或哈希集可实现近乎恒定的时间查找,这是一种比通过数组进行线性搜索更节能的方法。
- 最大限度地减少内存占用:高效的数据结构有助于减少应用的总体内存占用。减少内存访问和管理可降低功耗。此外,更精简的内存配置文件可让进程更高效地运行,从而让您推迟资源升级。
- 使用专用结构:使用专为特定问题构建的数据结构。例如,使用 trie 数据结构进行快速字符串前缀搜索,并在只需要高效访问最高值或最低值时使用优先级队列。
优化计算和数据操作
开发软件时,请专注于在整个技术栈中高效且按比例使用资源。将 CPU、内存、磁盘和网络视为有限的共享资源。认识到高效利用资源可以切实降低成本和能源消耗。
优化 CPU 利用率和空闲时间
为了最大限度地减少 CPU 在不执行有意义的工作的情况下处于活跃、耗能状态的时间,请使用以下方法:
- 优先使用事件驱动型逻辑,而不是轮询:将资源密集型忙碌循环或持续检查(轮询)替换为事件驱动型逻辑。事件驱动型架构可确保应用的组件仅在由相关事件触发时才运行。这种方法支持按需处理,从而无需进行资源密集型轮询。
- 防止持续高频运行:编写不会强制 CPU 持续以最高频率运行的代码。为了最大限度地降低能耗,处于闲置状态的系统应能够进入低功耗状态或睡眠模式。
- 使用异步处理:为防止线程在空闲等待期间被锁定,请使用异步处理。这种方法可以释放资源,并提高整体资源利用率。
高效管理内存和磁盘 I/O
内存和磁盘使用效率低下会导致不必要的处理和功耗增加。如需高效管理内存和 I/O,请使用以下方法:
- 严格的内存管理:采取行动主动释放未使用的内存资源。避免在内存中保留大型对象的时间超过必要时间。这种方法可以防止性能瓶颈,并减少内存访问所消耗的电量。
- 优化磁盘 I/O:减少应用与永久性存储资源的读写交互频率。例如,使用中间内存缓冲区来存储数据。以固定间隔或在缓冲区达到特定大小时将数据写入永久性存储。
- 批量操作:将频繁的小型磁盘操作整合为更少、更大的批量操作。与许多单独的小型事务相比,批处理操作消耗的能量更少。
- 使用压缩:通过应用合适的数据压缩技术,减少写入磁盘或从磁盘读取的数据量。例如,如需压缩存储在 Cloud Storage 中的数据,您可以使用解压缩转码。
尽可能减少网络流量
网络资源在数据传输操作期间会消耗大量能源。 如需优化网络通信,请使用以下方法:
- 尽可能减小载荷大小:设计 API 和应用,使其仅传输请求所需的数据。如果只需要几个字段,请避免提取或返回大型 JSON 或 XML 结构。确保返回的数据结构简洁。
- 减少往返次数:如需减少完成用户操作所需的网络往返次数,请使用更智能的协议。例如,优先选择 HTTP/3 而非 HTTP/1.1,选择 GraphQL 而非 REST,使用二进制协议,以及整合 API 调用。减少网络调用量后,服务器和最终用户设备的能耗都会降低。
实施前端优化
前端优化可最大限度地减少最终用户必须下载和处理的数据,这有助于减少最终用户设备资源的负载。
精简代码和资源
当最终用户需要下载和处理更小、结构更高效的资源时,其设备消耗的电量会更少。为了最大限度地减少最终用户设备上的下载量和处理负载,请使用以下方法:
- 精简和压缩:对于 JavaScript、CSS 和 HTML 文件,请使用适当的精简工具移除不必要的字符(例如空格和注释)。确保图片等文件经过压缩和优化。您可以使用 CI/CD 流水线自动执行 Web 资源的最小化和压缩。
- 延迟加载:仅在实际需要时(例如,当这些元素滚动到网页的视口中时)加载图片、视频和非关键素材资源。这种方法可减少初始数据传输量和最终用户设备上的处理负载。
- 更小的 JavaScript 软件包:使用现代模块打包器和摇树优化等技术,从 JavaScript 软件包中消除未使用的代码。这种方法可以减小文件大小,从而加快加载速度并减少服务器资源的使用。
- 浏览器缓存:使用 HTTP 缓存标头指示用户的浏览器在本地存储静态资源。浏览器缓存有助于防止在后续访问中重复下载和产生不必要的网络流量。
优先考虑轻量级用户体验 (UX)
界面的设计可能会对渲染前端内容的计算复杂性产生重大影响。如需构建提供轻量级用户体验的前端界面,请使用以下技术:
- 高效渲染:避免频繁进行资源密集型文档对象模型 (DOM) 操作。编写可最大限度降低渲染复杂性并消除不必要重新渲染的代码。
- 轻量级设计模式:在适当的情况下,首选静态网站或渐进式 Web 应用 (PWA)。此类网站和应用加载速度更快,所需的服务器资源更少。
- 无障碍性和性能:响应迅速、加载速度快的网站通常更具可持续性,也更易于访问。经过优化、简洁明了的设计可减少内容呈现时消耗的资源。经过性能和速度优化的网站有助于提高收入。根据德勤和 Google 的一项研究《Milliseconds Make Millions》(毫秒之差,百万之别),网站速度提升 0.1 秒(100 毫秒),零售网站的转化次数就会增加 8.4%,平均订单价值也会增加 9.2%。
优化数据和存储,实现可持续发展
Google Cloud Well-Architected Framework 可持续性核心中的这一原则提供了相关建议,可帮助您优化 Google Cloud中存储资源的能效和碳足迹。
原则概览
存储的数据不是被动资源。在数据的整个生命周期中,都会消耗能源并产生碳排放。每存储 1 GB 的数据,都需要物理基础设施持续供电、冷却和管理。为了实现可持续的云架构,请将数据视为有价值但会造成环境成本的资产,并优先考虑主动数据治理。
您在数据保留、质量和位置方面的决策可以帮助您大幅降低云费用和能源消耗。尽量减少存储的数据,优化存储数据的位置和方式,并实施自动删除和归档策略。减少数据杂乱后,您可以提高系统性能,并从根本上减少数据的长期环境足迹。
建议
如需优化数据生命周期和存储资源以实现可持续性,请考虑以下部分中的建议。
优先考虑高价值数据
存储的未使用、重复或过时的数据会继续消耗能源,为底层基础设施供电。如需减少与存储相关的碳足迹,请使用以下方法。
识别并消除重复
制定政策,防止在多个 Google Cloud 项目或服务中不必要地复制数据集。使用 BigQuery 数据集或 Cloud Storage 存储桶等中央数据存储库作为单一事实来源,并向这些存储库授予适当的访问权限。
移除影子数据和暗数据
暗数据是指用途或所有者未知的数据。影子数据是指未经授权的数据副本。使用 Knowledge Catalog 等数据发现和编目解决方案扫描存储系统,查找暗数据和影子数据。定期审核这些发现结果,并实施适当的流程来归档或删除暗数据和影子数据。
最大限度地减少 AI 工作负载的数据量
仅存储模型训练和应用所需的特征和处理后的数据。尽可能使用数据抽样、汇总和合成数据生成等技术,在不依赖海量原始数据集的情况下实现模型性能。
集成数据质量检查
在数据注入时,使用 Managed Service for Apache Spark、Dataflow 或 Knowledge Catalog 等服务实现自动数据验证和数据清理流水线。低质量数据会导致存储空间浪费。此外,当这些数据后续用于分析或 AI 训练时,还会导致不必要的能源消耗。
查看数据的价值密度
定期检查日志和 IoT 数据流等高容量数据集。确定是否可以对任何数据进行汇总、聚合或下采样,以保持所需的信息密度并减少物理存储量。
严格评估备份需求
评估是否需要备份那些只需极少工作量即可重新生成的数据。此类数据的示例包括中间 ETL 结果、临时缓存以及从稳定、永久来源派生的训练数据。仅保留唯一或重新创建成本高昂的数据的备份。
优化存储生命周期管理
实现存储生命周期自动化,以便在数据效用下降时,将数据移至高效利用能源的存储类别或视情况停用。请使用以下方法。
选择适当的 Cloud Storage 类别
使用对象生命周期管理,根据访问频率自动将 Cloud Storage 中的数据转换为碳排放量较低的存储类别。
- 仅对活跃使用的数据集(例如当前生产模型)使用 Standard Storage。
- 将较旧的 AI 训练数据集或访问频率较低的备份等数据转换为 Nearline 或 Coldline Storage。
- 对于长期保留,请使用 Archive Storage,该存储类别经过优化,可大规模提高能效。
实施积极的数据生命周期政策
为非必要数据(例如日志文件、临时模型工件和过时的中间结果)定义明确、自动化的存留时间 (TTL) 政策。使用生命周期规则在指定时间段后自动删除此类数据。
强制执行资源标记
强制要求为所有 Cloud Storage 存储桶、BigQuery 数据集和永久性磁盘使用一致的资源标记和标签。创建用于指明数据所有者、数据用途和保留期限的标签。使用 Organization Policy Service 限制条件,确保将所需标记(例如保留期限)应用于资源。借助标记,您可以自动执行生命周期管理、创建精细的 FinOps 报告以及生成碳排放报告。
合理调整计算存储空间并取消预配
定期审核挂接到 Compute Engine 实例的永久性磁盘,并确保这些磁盘未过度预配。仅在需要备份时使用快照。删除旧的、未使用的快照。对于数据库,请使用数据保留政策来缩减底层永久性磁盘的大小。
优化存储格式
对于服务于分析工作负载的存储,应优先选择 Parquet 或经过优化的 Avro 等压缩列式格式,而不是 JSON 或 CSV 等基于行的格式。列式存储可显著降低物理磁盘可用空间要求并提高读取效率。这种优化有助于降低相关计算和 I/O 操作的能源消耗。
优化区域性和数据移动
数据的物理位置和移动会影响网络资源的消耗以及存储所需的能源。使用以下方法优化数据区域性。
选择低碳存储区域
根据您的合规性要求,将数据存储在 Google Cloud 使用较高比例无碳能源 (CFE) 或电网碳强度较低的区域。使用资源位置组织政策限制条件,限制在高碳区域创建存储桶。如需了解 Google Cloud 区域的 CFE 和碳强度数据,请参阅 Google Cloud 区域的无碳能源。
最大限度减少复制
仅在满足强制性灾难恢复 (DR) 或高可用性 (HA) 要求时,才跨区域复制数据。跨区域和多区域复制操作会显著增加数据的能源成本和碳足迹。
优化数据处理位置
为了减少网络数据传输的能源消耗,请在数据源所在的区域中部署 AI 训练和 BigQuery 处理等计算密集型工作负载。
为合作伙伴和客户优化数据移动
如需在云服务、位置和提供商之间移动大量数据,请鼓励您的合作伙伴和客户使用 Storage Transfer Service 或数据共享 API。避免大量数据转储。对于公共数据集,请使用请求者付款存储桶,将数据传输和处理费用以及环境影响转移给最终用户。
持续衡量并提升可持续性
Google Cloud Well-Architected Framework 可持续发展核心中的这一原则提供了相关建议,可帮助您衡量并持续改进 Google Cloud中工作负载的可持续性。
原则概览
为确保云工作负载的可持续性,您需要准确且透明的指标。可验证的指标让您能够将可持续发展目标转化为行动。您在云端创建的每项资源都有一个关联的碳足迹。如需构建和维护可持续的云架构,您必须将碳数据测量集成到运营反馈环中。
本部分中的建议提供了一个框架,用于使用碳足迹量化碳排放、识别碳热点、实施有针对性的工作负载优化,以及验证优化工作的成果。借助此框架,您可以高效地将成本优化目标与可验证的碳减排目标保持一致。
碳足迹报告方法
碳足迹可提供透明、可审核且全球一致的云相关排放报告。该报告遵循国际标准,主要采用温室气体 (GHG) 核算体系进行碳排放报告和核算。碳足迹报告采用基于位置和基于市场的核算方法。按位置统计的核算方法基于本地电网的排放因子。按市场统计的核算方法会考虑 Google 购买的无碳能源 (CFE)。这种双重方法可帮助您了解 Google Cloud中工作负载对物理电网的影响和碳效益。
如需详细了解碳足迹报告的准备方式(包括使用的数据源、范围 3 包含的内容和客户分配模型),请参阅碳足迹报告方法。
建议
如需使用碳测量进行持续改进,请考虑以下部分中的建议。这些建议按成熟度阶段进行组织,旨在帮助您实现可持续设计的云运营:
第 1 阶段:建立基准
在此阶段,您需要设置必要的工具,并确保数据可访问且已正确集成。
- 授予权限:向 FinOps、SecOps 和平台工程等团队授予权限,以便他们可以访问 Google Cloud 控制台中的碳足迹信息中心。在 Identity and Access Management (IAM) 中为相应结算账号授予 Carbon Footprint Viewer 角色 (
roles/billing.carbonViewer)。 - 自动导出数据:在导出数据之前,请确保您的Google Cloud 资源层次结构(文件夹和项目)以及资源注释(标记和标签)准确反映了业务单位的组织结构。由于碳足迹数据是在项目级汇总的,因此明确定义的层次结构对于正确归因排放至关重要。配置自动将碳足迹数据导出到 BigQuery。通过导出的数据,您可以执行深度分析、将碳数据与费用和用量数据相关联,以及生成自定义报告。
- 定义与碳相关的关键绩效指标 (KPI):建立将碳排放与业务价值联系起来的指标。例如,碳强度是衡量每位客户、每笔交易或每个收入单位的二氧化碳当量千克数的指标。
第 2 阶段:确定碳热点
通过分析碳足迹报告中的精细数据,确定对环境影响最大的方面。请使用以下方法进行分析:
- 按范围确定优先级:如需快速确定最大的总碳排放源,请按项目、区域和服务分析信息中心内的数据。
- 使用双重核算:在评估某个区域的碳影响时,请同时考虑按位置统计的排放量(本地电网对环境的影响)和按市场统计的排放量(Google CFE 投资带来的效益)。
- 与费用相关联:将 BigQuery 中的碳数据与结算数据联接,并评估优化措施对可持续性和费用的影响。虽然成本和碳排放量通常具有相同的趋势,但您只能将成本作为初始指标。例如,在无碳能源 (CFE) 得分较高的区域,工作负载的成本可能较高,但基于市场的排放量较低。始终根据基于位置的实际指标和基于市场的指标验证优化假设。
- 为数据添加注释以衡量工作回报率 (ROE):使用特定事件(例如调整资源大小或停用大型服务)为 BigQuery 中的碳数据添加注释。通过这些注释,您可以将碳排放量和成本的降低归因于特定的优化举措,从而衡量和展示每项举措的成果。
第 3 阶段:实施有针对性的优化
这是实施可持续设计云运维的执行阶段。您可以使用以下策略来优化您确定为费用和碳排放的主要驱动因素的特定资源:
- 停用无人使用的项目:作为 IT 服务管理 (ITSM) 工作流的一部分,请定期检查与碳足迹数据集成的无人使用的项目 Recommender。为了立即、切实地减少碳排放和费用,请通过跟踪工程工单,自动审核并最终移除未使用的项目。
- 合理调整资源量:使用 Active Assist 合理调整资源量建议器(例如针对 Compute Engine 虚拟机的机器类型建议),使预配的资源容量与实际利用率相匹配。对于计算密集型任务和 AI 工作负载,请使用最高效的机器类型和 AI 模型。
- 采用碳感知型调度:对于时间不紧急的批处理工作负载,请将区域 CFE 数据集成到调度逻辑中。在可行的情况下,使用 Organization Policy Service 中的资源位置限制条件,将新资源的创建限制在低碳区域。
- 减少数据蔓延:实施数据治理政策,确保不常访问的数据转换为适当的冷存储类别(Nearline、Coldline 或 Archive)或被永久删除。此策略有助于降低存储资源的能源成本。
- 优化应用代码:修复导致资源使用过多或不必要计算的代码级低效问题。
详情请参阅以下内容:
第 4 阶段:将可持续发展实践和报告制度化
在此阶段,您需要将碳排放量测量纳入治理框架。此方法有助于确保您的组织具备持续改进可持续性和提供可验证报告所需的能力和控制措施。
- 实施 GreenOps 治理:建立正式的 GreenOps 职能或工作组,将碳足迹数据与 Cloud Billing 数据集成。将每月 BigQuery 碳排放导出直接集成到现有的 FinOps 信息中心(例如 Looker)中。在单个界面中呈现碳和费用数据有助于确保可持续性成为标准运营审核周期的一部分。此职能必须明确各项目的碳减排目标责任,使成本优化与可持续发展目标保持一致,并实施报告机制来跟踪碳效率与支出的关系。
- 使用碳足迹数据进行报告和合规性:使用 BigQuery 中经过验证、可审核的碳足迹数据来创建正式的环境、社会和治理 (ESG) 披露。通过这种方法,您可以满足利益相关方对透明度的要求,并有助于确保遵守强制性和自愿性法规。
- 投资于培训和意识提升:为相关技术和非技术团队实施强制性可持续发展培训。您的团队需要了解如何访问和解读碳足迹数据,以及如何在日常工作流和设计选择中应用优化建议。如需了解详情,请参阅提供基于角色的可持续发展培训。
- 定义碳排放要求:在应用新部署的验收标准中,将碳排放指标作为非功能性要求 (NFR) 纳入其中。这种做法有助于确保架构师和开发者从应用开发生命周期开始就优先考虑低碳设计选项。
- 自动化 GreenOps:使用脚本、模板和基础设施即代码 (IaC) 流水线,自动实施 Active Assist 建议。这种做法可确保团队在整个组织中一致且快速地应用建议。
推广可持续发展文化
Google Cloud Well-Architected Framework 可持续性核心中的这一原则提供了相关建议,可帮助您打造一种文化,让组织中的团队了解并熟练掌握可持续性实践。
原则概览
若要应用可持续发展实践,您不仅需要工具和技术,您需要通过教育和问责制来推动文化转变。您的团队需要了解可持续发展问题,并且必须熟练掌握可持续发展实践。
- 可持续性意识是指每个架构和运营决策都会对可持续性产生切实影响的情境知识。团队必须认识到,云不是虚拟资源的抽象集合,而是由消耗能源并产生碳排放的物理资源驱动的。
- 熟练掌握可持续发展实践,包括解读碳排放数据的知识、实施云可持续发展治理的经验,以及重构代码以提高能效的技术技能。
为了使可持续发展实践与组织目标保持一致,您的团队需要了解云基础设施和软件的能源使用情况如何影响组织的碳足迹。精心规划的培训有助于确保所有利益相关方(从开发者和架构师到财务专业人员和运营工程师)了解其日常工作的可持续发展背景。这种共同理解使团队能够从被动合规转向主动优化,从而使您的云工作负载在设计上具有可持续性。 可持续性成为核心非功能性要求 (NFR),就像对安全性、成本、性能和可靠性的其他要求一样。
建议
为了提高对可持续发展问题的认识并熟练掌握可持续发展实践,请考虑以下各部分中的建议。
提供业务背景信息,并与组织目标保持一致
可持续发展不仅仅是一项技术工作,还需要进行文化转变,使个人行动与组织的环保使命保持一致。当团队了解可持续发展计划背后的原因时,他们更有可能将这些计划作为核心原则,而不是可选任务。
连接到大局
帮助您的团队了解各项架构选择(例如选择低碳区域或优化数据流水线)如何助力组织实现整体可持续发展承诺。明确传达这些选择对当地社区和行业的影响。将抽象的碳指标转化为实现企业社会责任 (CSR) 目标的切实进展指标。
例如,以下消息会告知团队,将工作负载迁移到低碳区域并使用节能机器类型的决策取得了积极成果,并得到了高管的认可。该消息引用了二氧化碳当量,这有助于您的团队了解碳减排措施的影响。
“通过将数据分析引擎迁移到 us-central1
低二氧化碳区域,并将集群升级到基于 C4A Axion 的实例,我们从根本上改变了碳足迹。这一转变使我们数据分析引擎的碳强度降低了 75%,相当于本季度减少了 12 公吨二氧化碳当量。这次迁移对我们的业务目标产生了重大影响,并已纳入我们向董事会发布的第四季度简报中。”
传达财务和可持续发展目标
透明度对于使可持续发展实践与目标保持一致至关重要。在可行的情况下,在整个组织内广泛分享可持续发展目标和进展。在年度财务报表中突出显示可持续发展进展。这种沟通可确保技术团队将自己的工作视为组织面向公众的承诺和财务健康状况的重要组成部分。
拥抱命运共同体理念
向团队宣传云可持续发展的协作性质。Google 负责云的可持续性,包括基础设施和数据中心的效率。您(客户)负责云中资源和工作负载的可持续性。如果您将这种协作视为命运共同体,就会进一步强化这样一种认识:贵组织和 Google 携手合作,共同实现最佳环境成果。
提供基于角色的可持续发展培训
为确保可持续发展是一项实用技能,而不是理论概念,请根据具体工作角色量身定制可持续发展培训。数据科学家可以使用的可持续发展工具和技术与 FinOps 分析师可以使用的工具和技术截然不同,如下表所述:
| 角色 | 训练重点 |
|---|---|
| 数据科学家和机器学习工程师 | 计算的碳强度:展示在旧系统与专用 AI 加速器上运行 AI 训练作业的差异。重点说明参数较少的模型如何以显著降低的能源消耗实现所需的准确率。 |
| 开发者 | 代码效率和资源消耗:说明高延迟代码或低效循环如何直接导致 CPU 运行时间延长和能源消耗增加。强调轻量级容器的重要性,以及优化应用性能以减少软件环境足迹的必要性。 |
| 架构师 | 可持续设计:专注于区域选择和工作负载放置。展示选择可再生能源比例较高的northamerica-northeast1)如何在您编写一行代码之前从根本上改变整个应用堆栈的碳排放情况。 |
| 平台工程师和运维工程师 | 最大限度提高利用率:强调闲置资源和过度预配的环境成本。展示自动伸缩和适当调整规模的场景,以确保高效使用云资源。说明如何创建和跟踪与可持续发展相关的指标(例如利用率),以及如何将计算时间等指标转换为等效的碳排放指标。 |
| FinOps | 碳单位经济效益:重点关注财务支出与环境影响之间的关系。演示 GreenOps 实践如何让组织跟踪每笔交易的碳排放量,从而使可持续性成为与成本和利用率等传统 KPI 一样重要的关键绩效指标 (KPI)。 |
| 产品经理 | 可持续性作为一项功能:演示如何将碳减排目标纳入产品路线图。展示简化的用户体验历程如何帮助减少云资源和最终用户设备的能源消耗。 |
| 商业领袖 | 战略一致性和报告:重点关注云可持续性如何影响环境、社会和治理 (ESG) 得分以及公众声誉。说明可持续发展选择如何帮助降低监管风险并履行对社区和行业的承诺。 |
倡导可持续发展并认可成功
为了维持长期进展,您需要超越内部技术修复,并开始影响您的合作伙伴和行业。
让管理人员能够倡导可持续发展
为管理者提供所需的数据和权限,以便他们像对待上市速度和成本等其他业务指标一样,优先考虑环境影响。当管理者掌握这些数据后,他们就会开始将可持续性视为质量和效率标准,而不是会拖慢生产速度的锦上添花的功能。他们积极倡导云服务商推出新功能,例如提供更精细的碳数据,以及在特定区域部署更环保的新型处理器。
与行业标准和框架保持一致
为确保您的可持续发展工作可信且可衡量,请使内部实践与公认的全球和区域标准保持一致。如需了解详情,请参阅使可持续发展实践与行业准则保持一致。
激励可持续发展
为了确保可持续性成为工程文化中经久不衰的一部分,团队必须认识到优先考虑可持续性的价值。从高层目标过渡到具体、可衡量的 KPI,以奖励改进和效率。
定义碳 KPI 和 NFR
将可持续性视为一项核心技术要求。当您定义碳 KPI(例如每百万次请求的二氧化碳当量克数或每次 AI 训练运行的碳强度)时,您就可以让对可持续性的影响变得可见且可操作。例如,将可持续性纳入每个新项目的 NFR 中。换句话说,正如系统必须满足特定的延迟时间或可用性目标一样,系统也必须保持在定义的碳排放预算范围内。
衡量投入回报率
帮助您的团队确定高影响、低工作量的可持续发展成果(例如将批量作业转移到其他区域),而不是可能提供极少收益的复杂代码重构练习。让您清楚了解投入回报率 (ROE)。当团队选择更高效的处理器系列时,他们必须确切知道,相对于迁移到新处理器所需的时间和精力,他们避免了多少碳排放。
认可和庆祝碳减排
可持续发展影响往往隐藏在基础设施的幕后。为了在可持续发展方面取得进展,请让整个组织都能看到成功。例如,在监控信息中心内使用注释来标记团队何时部署了特定的可持续性优化。这种可见性使团队能够指出信息中心内的数据,并为其成功赢得认可。
使可持续发展实践与行业准则保持一致
Google Cloud Well-Architected Framework 可持续性核心中的这一原则简要介绍了您在开展可持续性工作时应遵循的行业准则和框架。
原则概览
为确保您的可持续发展举措建立在获得全球认可的衡量、报告和验证方法的基础之上,我们建议您使自己的举措与以下行业准则保持一致:
当您将可持续发展计划与这些共享的外部准则保持一致时,您的计划将获得投资者、监管机构和其他外部利益相关方所要求的可信度和可审核性。您还需在工程团队中培养责任感,将可持续发展融入员工培训,并成功将云运营整合到企业范围的环境、社会和治理 (ESG) 报告承诺中。
W3C Web 可持续发展指南
W3C Web 可持续发展指南 (WSG) 是由 W3C 工作组制定的新兴最佳实践框架,旨在解决数字产品和服务对环境的影响。这些准则涵盖了数字解决方案的整个生命周期,包括业务和产品策略、用户体验 (UX) 设计、Web 开发、托管、基础设施和系统。WSG 的核心目标是让开发者和架构师能够构建更节能、更环保的网站和 Web 应用,并减少网络流量、客户端处理和服务器端资源消耗。这些准则可作为关键参考点,帮助您将应用级可持续性与云级架构决策相结合。
Green Software Foundation
Green Software Foundation (GSF) 专注于围绕可持续软件构建行业生态系统。其使命是推动创建旨在最大限度减少碳足迹的软件。GSF 制定了软件碳强度 (SCI) 规范,该规范为衡量任何软件的碳排放率提供了通用标准。与 GSF 保持一致有助于开发者将应用的效率直接与云环境的碳影响联系起来。
温室气体核算体系
温室气体 (GHG) 协议是一套广泛使用的标准,用于测量、管理和公开报告温室气体排放量。该协议由世界资源研究所 (WRI) 和世界可持续发展工商理事会 (WBCSD) 合作制定。GHG 协议为企业气候核算提供了基本框架。碳足迹报告提供与云使用相关的排放范围的数据。如需了解详情,请参阅碳足迹报告方法。
遵守 GHG 协议有助于确保您的可持续发展计划具有可信度,并且外部方可以审核您的碳排放数据。您还可以帮助防止漂绿,并满足投资者、监管机构和外部利益相关方的尽职调查要求。经过验证和审核的数据有助于您的组织证明其责任感,并建立对面向公众的可持续发展承诺的信任。