Облачные вычисления произвели революцию в способах масштабирования и инноваций компаний, но контроль затрат является одним из препятствий. По данным Precedence Research, размер рынка облачных вычислений увеличится до 1,6 триллиона долларов в 2030 году, что требует приоритетной оптимизации затрат, поскольку многие организации переходят на облачные вычисления.
В этом руководстве мы сосредоточимся на высокоэффективных действенных советах по оптимизации расходов на облачные вычисления с использованием реальных практических примеров. В этом руководстве мы будем ссылаться на поставщика облачных услуг Amazon Web Services (AWS), однако, пожалуйста, следуйте таблице ниже, чтобы применить те же советы для других крупных поставщиков облачных вычислений. Эти шаги легко выполнить разработчику, архитектору или специалисту по облачным вычислениям, и они помогут сократить расходы.
Избыточное выделение ресурсов в EC2 является одной из наиболее распространенных причин неэффективности расходов на облако. Большое количество организаций склонны переоценивать использование своих ресурсов, из-за чего они застревают с неиспользованными вычислениями и большими счетами.
• Анализируйте использование ЦП, памяти и диска на всех экземплярах с помощью AWS Compute Optimizer ; он предоставляет рекомендации по изменению размера до оптимальных типов экземпляров.
• Переключитесь на экземпляры с возможностью увеличения производительности, такие как T3, для рабочих нагрузок, в которых наблюдаются периодические всплески спроса.
• Автоматизируйте оптимизацию путем интеграции рекомендаций Compute Optimizer в ваш конвейер CI/CD.
aws ec2 modify-instance-attribute --instance-id instance-id --instance-type "{"Value": "t3.medium"}"
Innovaccer , компания, занимающаяся технологиями в сфере здравоохранения, оптимизировала свои экземпляры EC2 на основе данных Compute Optimizer и сократила расходы на облако на 33%. Они также смогли развернуть экземпляры T3 для рабочих нагрузок с внезапными пиками и соответственно снизить стоимость вычислений в режиме простоя. Подробнее
Вы сможете воспользоваться резервной вычислительной мощностью, доступной в AWS, и сэкономить до 90% от цен на инстансы по запросу, используя спотовые инстансы. Идеально подходит для гибких отказоустойчивых рабочих нагрузок без сохранения состояния, таких как пакетная обработка, непрерывная интеграция, непрерывное развертывание и большие данные.
• Определите допустимые к прерываниям рабочие нагрузки, такие как процессы ETL, рендеринг видео и испытательные стенды.
• Используйте EC2 Auto Scaling с политикой смешанных экземпляров для бесшовной балансировки спотовых и по требованию экземпляров для обеспечения надежности.
• Отслеживайте спотовые цены с помощью AWS Spot Instance Advisor и устанавливайте максимальный порог цены.
{ "LaunchTemplate": { "LaunchTemplateId": "lt-0abcd1234efgh5678", “version”: “1” }, "InstanceCount": 5, "Type": "request", "InstanceInterruptionBehavior": "terminate" }
National Australia Bank (NAB) сократил свои расходы на облачные вычисления на 20 % в 2022 году за счет использования спотовых инстансов для аналитических рабочих нагрузок и перехода на доступные вычисления на процессорах AWS Graviton. Подробнее .
Такие ресурсы, как среды разработки и среды подготовки, работают 24x7, даже когда никто не обращается к ресурсу. Если есть автоматизация этих ресурсов, чтобы выключать их в нерабочее время, это экономит им массу.
• Создавайте автоматизированные расписания для запуска и остановки ресурсов в предварительно настроенные временные окна с помощью AWS Instance Scheduler .
• Создайте решение для Lambda — для динамического обновления расписания на основе рабочей нагрузки или календаря праздников.
{ "InstanceId": "i-0abcd1234efgh5678", "Schedule": "office-hours" }
Логистическая фирма Archway сэкономила 40% в непроизводственной и 15% в производственной среде за счет автоматического отключения ресурсов с помощью AWS Instance Scheduler. Подробнее
AWS S3 невероятно гибок, но хранение всех данных в классе хранилища по умолчанию значительно увеличивает расходы. Правильная оптимизация классов хранения с частотой доступа является ключом к экономии средств.
• Включите интеллектуальное многоуровневое хранение данных S3 для объектов, шаблоны доступа к которым непредсказуемы.
• Настройте политики жизненного цикла S3 для автоматической передачи данных в Glacier для долгосрочного хранения через 30–60 дней.
• Анализируйте использование контейнера с помощью S3 Storage Lens , чтобы быстро определить возможности сокращения затрат.
{ "Rules": [ { "ID": "MoveToGlacier", "Prefix": "", "Status": "Enabled", "Transitions": [ { "Days": 30, "StorageClass": "GLACIER" } ] } ] }
Airbnb оптимизировала использование AWS S3, перенеся свои редко используемые данные в S3 Glacier и сократив расходы на хранение на 27%.Подробнее .
Для прогнозируемых рабочих нагрузок зарезервированные экземпляры (RI) и экономные планы предлагают экономию до 72% по сравнению с ценами по запросу.
• Проанализируйте постоянные рабочие нагрузки и выберите зарезервированные экземпляры сроком на 1 или 3 года.
• Размещайте планы экономии вычислительных ресурсов , когда требуется гибкость семейства экземпляров и региона.
• Отслеживайте использование с помощью AWS Cost Explorer , чтобы получить полную окупаемость инвестиций.
Телекоммуникационная фирма Hiya автоматизировала планы сбережений, увеличив эффективную норму сбережений на 22% в 2022 году, что сократило дополнительные расходы на 110 000 долларов в год. Подробнее
Передача данных — это стремительно растущая статья расходов для любой рабочей нагрузки, особенно если ваша рабочая нагрузка требует межрегионального трафика или доставки контента.
• Используйте AWS CloudFront для обслуживания часто используемых данных ближе к вашим клиентам, чтобы снизить затраты на исходящие данные.
• Распределяйте ресурсы в пределах одного региона, чтобы минимизировать межрегиональные комиссии за переводы.
• Воспользуйтесь преимуществами мониторинга использования с помощью AWS Cost Explorer и AWS Billing Dashboard .
Canva оптимизировала свою облачную инфраструктуру, что позволило сократить расходы на вычисления и передачу данных на 46% благодаря использованию CloudFront и эффективных сетевых стратегий. Подробнее
При использовании бессерверных платформ, таких как AWS Lambda, вы платите только по факту использования, то есть за используемое вычислительное время, что помогает исключить расходы, связанные с простоем.
• Реорганизуйте монолитные приложения в событийно-управляемые функции AWS Lambda .
• Оптимизируйте размер памяти и время выполнения с помощью AWS Lambda Power Tuning .
import boto3 lambda_client = boto3.client('lambda') response = lambda_client.update_function_configuration( FunctionName='MyFunction', MemorySize=128 )
Coca-Cola сократила операционные издержки на 65 % за счет миграции телеметрических сервисов торговых автоматов на AWS Lambda в 2022 году. Подробнее .
Если у кого-то нет видимости расходов ресурсов AWS, легко перерасходовать средства. AWS Budgets и Cost Anomaly Detection предоставляют действенные сведения с оповещениями.
• Установите бюджеты для определенных услуг или команд и настройте уведомления по электронной почте или в социальных сетях .
• Используйте функцию обнаружения аномалий расходов AWS , чтобы автоматически отмечать необычные схемы расходов.
{ "Budget": { "BudgetLimit": { "Amount": 1000, "Unit": "USD" }, "Notification": { "ComparisonOperator": "GREATER_THAN", "Threshold": 80, "Subscribers": [ { "SubscriptionType": "EMAIL", "Address": "[email protected]" } ] } } }
Zynga , игровая компания, ежегодно экономит миллионы, используя AWS Budgets для мониторинга своих расходов, чтобы контролировать расходы на неиспользуемые ресурсы. Подробнее
Хотя это руководство в первую очередь посвящено Amazon Web Services (AWS) , эти советы по экономии средств применимы и к другим крупным поставщикам облачных услуг, таким как Microsoft Azure, Google Cloud Platform (GCP) и т. д. Большинство поставщиков облачных услуг предлагают услуги вычислений, хранения данных, работы в сети и мониторинга.
Ниже приведена справочная таблица, сопоставляющая сервисы AWS с аналогичными предложениями GCP и Azure, что упрощает применение рассмотренных ранее советов и рекомендаций к GCP и Azure.
Функция/Услуга | АВС | Лазурный | Google Облако (GCP) |
---|---|---|---|
Оптимизация хранения | Политики жизненного цикла S3, интеллектуальное многоуровневое хранение | Управление жизненным циклом хранилища BLOB-объектов Azure | Политики жизненного цикла облачного хранилища |
Архивное Хранение | Ледник S3 | Уровень архива Azure Blob | Архив облачного хранилища |
Оптимизация вычислений | Экземпляры EC2, спотовые экземпляры | Виртуальные машины Azure, Spot VM | Compute Engine, вытесняемые виртуальные машины |
Инструменты правильного размера | Оптимизатор вычислений AWS | Azure Советник | GCP-рекомендатор |
Бессерверные вычисления | AWS Лямбда | Функции Azure | Облачные функции |
Автоматическое масштабирование | Группы автоматического масштабирования | Масштабные наборы виртуальных машин | Автоскалер |
Мониторинг и оповещения | CloudWatch, обозреватель затрат | Azure Monitor, управление затратами Azure | Мониторинг облака, оповещения о выставлении счетов |
Зарезервированные цены | Зарезервированные экземпляры, планы сбережений | Зарезервированные виртуальные машины | Скидки за обязательное использование |
Оптимизация передачи данных | CloudFront | Лазурная входная дверь | Облачный CDN |
Управление спотовым ценообразованием | Spot Instance Advisor | Советник Azure Spot | Рекомендация по прерывистой виртуальной машине |
Управление бюджетом | Бюджеты AWS, обнаружение аномалий | Бюджеты Azure | Оповещения о бюджетах и расходах |
Речь идет о создании среды эффективности и ответственности, а не просто о том, чтобы сэкономить. Посмотрите, как реализация этих высокоэффективных стратегий позволит вам сократить расходы AWS без снижения производительности.
Начните с основ: оптимизируйте размер экземпляров EC2 или автоматизируйте планирование ресурсов и масштабируйте свои усилия вплоть до продвинутых методов, используя спотовые экземпляры, бессерверные вычисления и планы сбережений.
Если у вас есть конкретная рабочая нагрузка или задача, давайте немного углубимся в некоторые индивидуальные решения, которые помогут сократить ваши расходы на облачные вычисления.