Методология проектирования устойчивых рабочих нагрузок на Azure

Для устойчивой рабочей нагрузки на Azure требуется преднамеренный инженерный подход. Облачные ресурсы потребляют энергию прямо пропорционально тому, как они подготавливаются и используются, а также архитектурные решения между приложениями, данными и уровнями инфраструктуры определяют эффективность использования и воздействие на окружающую среду.

Методология проектирования устойчивости предоставляет платформу для измерения, понимания и уменьшения этого влияния. Это помогает принимать обоснованные решения по проектированию, которые повышают эффективность углерода при удовлетворении основных требований к надежности, безопасности, производительности и затратам. Когда компромиссы становятся неясными в условиях реальных ограничений, вернитесь к этой методологии в качестве эталонной точки. Он сохраняет решения по проектированию, обоснованные в эффективности и гарантирует, что устойчивость постоянно рассматривается в каждом выборе архитектуры.

Создавайте приложения с учетом углеродного следа

Проектируйте приложения так, чтобы сокращать выбросы углерода за счёт минимизации энергопотребления и адаптации выполнения рабочих нагрузок к углеродной интенсивности используемого энергоснабжения.

Начните с того, чтобы приложение было энергоэффективным и имело низкий углеродный след. Это означает устранение ненужных вычислений, уменьшение перемещения данных и предотвращение неиспользуемой обработки, что позволяет каждой единице работы обеспечить значимое значение с минимальным потреблением энергии. Даже если рабочая нагрузка оптимизирована для затрат, она может по-прежнему потреблять чрезмерную энергию, если неэффективность остается в разработке приложений, обработке данных или шаблонах выполнения.

Расширьте это путем создания рабочих нагрузок с учетом условий углерода. Проектирование систем, которые могут реагировать на вариации энергетики путем смены или формирования спроса. Используйте смену спроса, чтобы переместить несрочные или пакетные рабочие нагрузки в периоды или регионы, где электроэнергия более чистая или более распространенная. Используйте формирование спроса для настройки поведения приложения в режиме реального времени, уменьшения интенсивности обработки или отсрочки дополнительных функций при высокой интенсивности углерода.

Классификация выбросов

Определите, где в вашей рабочей нагрузке образуются выбросы, используя устоявшиеся методологии, такие как Протокол по парниковым газам, который определяет выбросы категорий 1, 2 и 3. Область 1 охватывает прямые выбросы от ваших операций. Область 2 охватывает выбросы от потребляемой энергии. Категория 3 охватывает косвенные выбросы по всей цепочке создания стоимости услуги или продукта, включая воздействия на предшествующих этапах, такие как цепочка поставок и производство инфраструктуры, а также воздействия на последующих этапах, такие как использование продуктов клиентами и энергия, потребляемая в процессе их использования.

С точки зрения проектирования, сосредоточьтесь на том, как архитектурные решения в области вычислений, хранилища и сети влияют на выбросы на протяжении всего жизненного цикла рабочей нагрузки. Такая прозрачность помогает выявить неэффективности, оптимизировать использование ресурсов и сократить ненужное энергопотребление.

Например, чрезмерное использование пропускной способности сети или большие объёмы передаваемых данных увеличивают энергопотребление за пределами центра обработки данных, влияя на передачу данных по сети через несколько сетевых узлов и вплоть до устройств конечных пользователей. Таким образом, сокращение объёма передаваемых данных и повышение эффективности полезной нагрузки могут значительно снизить выбросы по всей цепочке доставки. Тот же принцип применяется к решениям об эффективности вычислений, проектировании хранилища и архитектуре приложений.

Измерение и отслеживание влияния на выбросы углерода

Создайте возможность измерения, оценки и непрерывного отслеживания их влияния на выбросы с помощью стандартных и прокси-моделей.

Следуйте отраслевым практикам, таким как модель Software Carbon Intensity (SCI), которая предлагает структурированный подход к количественной оценке выбросов на основе энергопотребления, углеродной интенсивности источников энергии и встроенного углерода во всей инфраструктуре.

Поскольку прямое измерение углерода может быть сложным, рабочие нагрузки также должны поддерживать модели оценки на основе прокси, использующие доступные сигналы затрат. Эти прокси-серверы позволяют командам приблизить влияние на выбросы углерода и выявлять неэффективные ситуации, даже если полные данные о выбросах недоступны.

Чтобы быть эффективным, измерение углерода должно распространяться только за рамки инфраструктуры. Он должен учитывать, как масштабируются приложения, насколько эффективно используются ресурсы, а также как характеристики производительности коррелируют с затратами и потреблением энергии. Плохое использование или непропорциональное увеличение затрат относительно производительности часто является индикатором ненужного использования энергии и избегаемого выбросов.

Приоритет ликвидации углерода перед компенсацией

Разработка рабочих нагрузок с четким пониманием снижения выбросов углерода, обеспечивая, что ликвидация всегда является основной стратегией перед рассмотрением подходов к компенсации.

Устойчивое проектирование программного обеспечения следует иерархии методов сокращения. Наиболее эффективным подходом является ликвидация, которая сосредоточена на предотвращении выбросов в источнике путем предотвращения ненужных вычислений, повышения эффективности ресурсов и устранения отходов в проектировании приложений и использовании инфраструктуры.

После минимизации выбросов путем ликвидации оставшиеся выбросы можно устранить с помощью нейтрализации или компенсации. Эти подходы не удаляют источник выбросов, а вместо этого балансирует их влияние через внешние механизмы.

Применение общей мысли об ответственности

Сокращение выбросов в облаке — это общая ответственность между поставщиком облачных служб и клиентом. Поставщик отвечает за эффективность базовой инфраструктуры и центров обработки данных, а клиент отвечает за то, насколько эффективно эти ресурсы используются с помощью проектирования, развертывания и операций приложения.

Существует три способа решения выбросов: предотвращение углерода, нейтрализация углерода и удаление углерода. Избегание углерода является основной целью устойчивого проектирования программного обеспечения, акцентируя внимание на предотвращении ненужных выбросов до их возникновения. Нейтрализация углерода смещает выбросы после их производства, в то время как удаление углерода направлено на активное удаление углерода из атмосферы.

Развертывание рабочих нагрузок на облачной платформе не гарантирует устойчивость. Даже в высокооптимизированных центрах обработки данных неэффективное проектирование приложений или плохое использование ресурсов может привести к ненужным выбросам. Например, выделение ресурсов в объёме, значительно превышающем фактическое использование, приводит к появлению незадействованных мощностей, которые всё равно потребляют энергию и ведут к выбросам.

Чтобы повысить экологичность, сосредоточьтесь на эффективном использовании выделенных ресурсов за счёт оптимального подбора их объёма, надлежащего масштабирования и повышения общей утилизации рабочих нагрузок. Цель состоит в том, чтобы обеспечить эффективное использование емкости инфраструктуры, а не оставить недоиспользуемой.

Повышение устойчивости в качестве меры успеха

Проектируйте и эксплуатируйте рабочие нагрузки так, чтобы экологическая устойчивость рассматривалась как один из ключевых показателей успеха наряду с надежностью, производительностью, безопасностью и стоимостью.

Устойчивость должна быть внедрена в инженерные и операционные цели, с четкой подотчетности и измеримыми результатами, такими как эффективность углерода, улучшение SCI и использование ресурсов. Команды должны быть стимулированы для оптимизации рабочих нагрузок для снижения воздействия на окружающую среду, а результаты устойчивого развития должны отслеживаться, проверяться и распознаваться как часть стандартных методик доставки.

Развитие практики устойчивости с помощью экосистемы

Разработка рабочих нагрузок и организационных методик для непрерывного улучшения путем обучения в области устойчивого проектирования программного обеспечения, инструментов и отраслевых стандартов.

Устойчивость развивается с помощью новых моделей измерения, возможностей платформы и технических методик. Команды должны активно инвестировать в обучение, делиться проверенными методами оптимизации и поддерживать цикл обратной связи по лучшим практикам между рабочими нагрузками. Это включает внедрение новых инструментов, обновление шаблонов проектирования и использование практических рекомендаций, разработанных такими организациями, как Green Software Foundation, по мере их развития.

Дальнейшие шаги

Ознакомьтесь с принципами проектирования для обеспечения устойчивости.

Ресурсы сообщества