Поделиться через


Рекомендации по настройке сторожевых расходов

Применяется к этой рекомендации по оптимизации затрат Azure Well-Architected Framework:

CO:04 Установите сторожевые ограничения расходов. Guardrails должен включать шлюзы выпуска, политики управления, ограничения ресурсов и элементы управления доступом. Приоритет автоматизации платформы по сравнению с ручным процессом.

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

Определения

Термин Определение
Политики управления Набор правил, которые обеспечивают соответствие требованиям и обеспечивают аудит ресурсов рабочей нагрузки.
Система управления Набор политик, процессов и элементов управления, которые помогают обеспечить эффективное управление рабочей нагрузкой, безопасное и соответствие требованиям организации и нормативным требованиям.
Инфраструктура как код (IaC) Описательная модель для определения и развертывания инфраструктуры, включая сети, виртуальные машины, подсистемы балансировки нагрузки и топологии подключений.
Выпуск шлюза Условие или контрольная точка в конвейере выпуска, которые должны быть удовлетворены до продолжения развертывания. Шлюз выпуска помогает обеспечить соответствие определенным критериям перед выпуском программного обеспечения.

Основные стратегии проектирования

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

Использование политик управления

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

  • Ограниченные типы ресурсов: политики могут указывать, какие типы ресурсов разрешены или запрещены в организации. Например, организация может иметь политику, которая ограничивает использование определенных дорогостоящих типов ресурсов для управления затратами.

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

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

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

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

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

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

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

Настройка элементов управления доступом

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

  1. Определите необходимый элемент управления. Определите ресурсы и службы, которые нуждаются в элементах управления доступом.

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

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

  4. Управление доступом на основе ролей (RBAC). Настройте RBAC для назначения ролей и разрешений пользователям на основе их обязанностей. Использование RBAC позволяет эффективно управлять доступом к ресурсам.

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

Использование шлюзов выпуска

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

  1. Установите условия шлюза выпуска. Установите условия или критерии, которые должны быть выполнены перед выпуском или развертыванием ресурсов. Включите такие факторы, как ограничения расходов, пороговые значения использования ресурсов или вехи проекта.

  2. Включить шлюзы выпуска. Включите шлюзы выпуска в конвейер развертывания. Вы можете использовать средства автоматизации или пользовательские скрипты, чтобы обеспечить соответствие развертываний ресурсов определенным критериям.

  3. Отслеживайте расходы. Непрерывно отслеживайте расходы и использование ресурсов в соответствии с определенными критериями. Если организация превышает пороговые значения расходов, шлюзы выпуска должны предотвратить дальнейшие развертывания, пока проблема не будет устранена.

Настройка оповещений о затратах

Важно настроить оповещения для бюджетов, аномалий затрат и использования плана на основе обязательств для оптимизации затрат. Эти оповещения обеспечивают видимость облачных расходов и обеспечивают упреждающее управление затратами. Будьте осторожны, чтобы управлять получателями уведомлений для оповещений и поддерживать список получателей в актуальном состоянии с текущими обязанностями и доступом. Некоторые оповещения, которые можно создать для оптимизации затрат, включают:

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

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

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

Использование IaC

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

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

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

  2. Магазин шаблонов. Храните шаблоны IaC в системе управления версиями для отслеживания изменений и управления различными версиями. Вы можете использовать управление версиями для поддержания истории конфигураций инфраструктуры и обеспечения совместной работы между участниками группы.

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

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

  5. Используйте средства IaC. Используйте средства и платформы IaC для автоматизации развертывания и настройки ресурсов инфраструктуры. Используйте автоматизацию для последовательного и надежного развертывания ресурсов в соответствии с определенными политиками.

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

Упрощение функций Azure

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

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

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

  • Определите неиспользуемые или неиспользуемые ресурсы. Используйте Помощник по Azure для оптимизации и уменьшения общих затрат Azure, определяя неактивные и неиспользуемые ресурсы. Получение рекомендаций по затратам из раздела затрат на панели мониторинга помощника.

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

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

Использование шлюзов выпуска: используйте управление выпусками Azure Pipelines для определения и принудительного применения шлюзов выпуска. Вы можете настроить вручную или автоматизированные контрольные точки, чтобы обеспечить соответствие определенным критериям, таким как проверки безопасности, требования к соответствию требованиям и пороговые значения затрат.

Использование инфраструктуры в качестве кода. Средства и службы Azure можно использовать для развертывания ресурсов инфраструктуры и управления ими с помощью кода. С помощью таких средств, как шаблоны Azure Resource Manager (ARM), Azure Bicep и Azure DevOps, можно определять и развертывать ресурсы инфраструктуры декларативно. Azure содержит шаблоны Bicep, Azure Resource Manager и Terraform для каждого ресурса Azure.

Используйте Azure Pipelines или другие средства непрерывной интеграции и непрерывной доставки (CI/CD) для автоматизации процессов сборки, тестирования и развертывания. Teams может использовать конвейеры для определения ряда шагов и действий, которые выполняются автоматически при внесении изменений в базу кода. Автоматизируйте эти процессы, чтобы сократить усилия вручную, обеспечить согласованность и ускорить доставку программного обеспечения.

Рекомендуется использовать ресурсы с более низкими затратами для временных или непроизводственных сред для оптимизации затрат. Azure предоставляет различные ценовые категории для ресурсов. Цены На Azure DevTest Labs и резервирования Azure — это методы экономии затрат, которые можно изучить для временных сред.

Репозитории Git, такие как Azure Repos и GitHub, предоставляют возможности управления версиями для управления конфигурациями кода и инфраструктуры. Teams и разработчики могут использовать автоматизированные репозитории для совместной работы, отслеживания изменений и поддержания истории базы кода.

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

Интерфейс командной строки разработчика Azure — это средство с открытым кодом, которое ускоряет время, необходимое для получения приложения из локальной среды разработки в Azure. Интерфейс командной строки разработчика Azure предлагает понятные для разработчиков команды, которые сопоставляются с ключевыми этапами рабочего процесса, независимо от того, работаете ли вы в терминале, интегрированной среде разработки (IDE) или CI/CD.

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

Соответствие структуре организации

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

Мы призываем организацию принимать защищенную политикой защиту. Пример реализации см. в разделе "Внедрение защищений, управляемых политикой".

Контрольный список оптимизации затрат

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