Сводка
Ниже приведены некоторые ключевые моменты этого модуля об эластичности:
- Виртуальные машины и другие облачные ресурсы редко испытывают постоянные нагрузки. Обычно нагрузки бывают переменными и могут меняться по величине или со временем.
- Изменение вычислительной мощности в соответствии с пиками нагрузки обеспечивает качество обслуживания (QoS), но приводит к увеличению расходов и энергозатрат.
- Эластичность означает возможность добавлять ресурсы для обработки более высоких нагрузок и удалять ресурсы при снижении нагрузки.
- Эластичность достигается в облаке путем масштабирования ресурсов, таких как виртуальные машины и базы данных.
- Горизонтальное масштабирование означает увеличение и уменьшение количества ресурсов, выделенных для задачи, например увеличение количества виртуальных машин, обслуживающих пользователей веб-сайтов, с 10 до 15.
- Вертикальное масштабирование означает замену существующих ресурсов более или менее мощными, например замена виртуальной машины веб-сервера с двумя ядрами и 4 ГБ ОЗУ на 4 ядра и 8 ГБ ОЗУ.
- Масштабирование ресурсов в зависимости от спроса обеспечивает относительно постоянную степень использования ресурсов, снижает затраты и оптимизирует энергопотребление.
- Автомасштабирование позволяет выполнять масштабирование на основе правил или политик, установленных администратором облака. Правила или политики могут быть основаны на времени, метриках или обоих показателях. Пример автоматического масштабирования на основе метрик — подключение дополнительных экземпляров, когда средняя загрузка ЦП достигает установленного порога, например 70 %.
- Автомасштабирование на основе времени, также известное как автомасштабирование по расписанию, наиболее подходит для циклической и прогнозируемой нагрузки.
- Автомасштабирование на основе метрик может работать как с прогнозируемыми, так и с непредсказуемыми нагрузками.
- Эффективная балансировка нагрузки крайне важна для реализации масштабируемых облачных служб.
- Подсистемы балансировки нагрузки используют различные типы алгоритмов для распределения нагрузки, в том числе алгоритмы с циклическим перебором и хэшированием.
- Некоторые подсистемы балансировки нагрузки пытаются повысить эффективность запросов, используя такие метрики, как время выполнения запросов и загрузка ЦП на каждом узле.
- Подсистемы балансировки нагрузки также увеличивают доступность, отслеживая работоспособность внутренних ресурсов и распознавая недоступность этих ресурсов.
- Поскольку одна подсистема балансировки нагрузки представляет собой единую точку отказа, подсистемы балансировки нагрузки часто развертываются парами.
- Бессерверные вычисления предлагают преимущества, включая цены на основе потребления, автоматическую масштабируемость и сокращение расходов на администрирование.
- Пример бессерверных вычислений — бессерверные функции, которые позволяют передавать код в облако и определять время его выполнения.
- Еще один пример — бессерверные рабочие процессы, которые позволяют определять бизнес-процессы (обычно с помощью графических конструкторов без написания кода) и указывать время их выполнения.
- Бессерверные вычисления также распространяются до баз данных, которые масштабируются в соответствии со спросом.