Jump to content

Автомасштабирование

Автомасштабирование , также называемое автоматическим масштабированием или автомасштабированием , иногда также называемое автоматическим масштабированием , — это метод, используемый в облачных вычислениях , который динамически регулирует количество вычислительных ресурсов в ферме серверов — обычно измеряемое количеством активных серверов — автоматически на основе нагрузка на ферму. Например, количество серверов, на которых работает веб-приложение, может автоматически увеличиваться или уменьшаться в зависимости от количества активных пользователей на сайте. Поскольку такие показатели могут резко меняться в течение дня, а серверы представляют собой ограниченный ресурс, эксплуатация которого требует денег даже во время простоя, часто существует стимул запускать серверы, «достаточные» для поддержки текущей нагрузки, сохраняя при этом возможность поддерживать внезапные и большие всплески активности. Автомасштабирование полезно для таких нужд, поскольку оно позволяет уменьшить количество активных серверов при низкой активности и запускать новые серверы при высокой активности. Автомасштабирование тесно связано с идеей балансировка нагрузки . [1] [2]

Преимущества

[ редактировать ]

Автомасштабирование дает следующие преимущества:

  • Для компаний, использующих собственную инфраструктуру веб-серверов, автоматическое масштабирование обычно означает, что некоторые серверы могут переходить в спящий режим во время низкой нагрузки, что позволяет сэкономить на расходах на электроэнергию (а также на расходах на воду, если вода используется для охлаждения машин). [3]
  • Для компаний, использующих инфраструктуру, размещенную в облаке, автоматическое масштабирование может означать более низкие счета, поскольку большинство поставщиков облачных услуг взимают плату на основе общего использования, а не максимальной мощности. [4]
  • Даже для компаний, которые не могут уменьшить общую вычислительную мощность, которую они используют или за которую платят в любой момент времени, автомасштабирование может помочь, позволяя им выполнять менее срочные рабочие нагрузки на машинах, которые освобождаются в результате автоматического масштабирования в периоды низкого трафика. [5]
  • Решения автомасштабирования, такие как предлагаемые Amazon Web Services, также могут позаботиться о замене неработоспособных экземпляров и, следовательно, в некоторой степени защитить от сбоев оборудования, сети и приложений. [6]
  • Автомасштабирование может обеспечить более продолжительное время безотказной работы и большую доступность в тех случаях, когда производственные рабочие нагрузки являются переменными и непредсказуемыми.

Автомасштабирование отличается от фиксированного ежедневного, еженедельного или годового цикла использования сервера тем, что оно реагирует на фактические модели использования и, таким образом, снижает потенциальный недостаток, связанный с наличием слишком малого или слишком большого количества серверов для нагрузки трафика. Например, если в полночь трафик обычно ниже, то решение статического масштабирования может запланировать спящий режим некоторых серверов в ночное время, но это может привести к простоям в ночное время, когда люди будут больше пользоваться Интернетом (например, из-за вирусной инфекции). новостное мероприятие). С другой стороны, автомасштабирование позволяет лучше справляться с неожиданными скачками трафика. [3] [7]

Терминология

[ редактировать ]

В приведенном ниже списке мы используем терминологию Amazon Web Services (AWS). [8] Однако отмечены альтернативные имена, и для названий не используется терминология, специфичная для названий сервисов Amazon.

Имя (используется в AWS, [8] если не указано иное) Значение Альтернативные имена (используются в Google Cloud Platform, [9] Microsoft Azure, [10] или другие платформы)
Пример Один сервер или машина, входящая в группу машин, подлежащих автомасштабированию.
Группа автомасштабирования Коллекция экземпляров, подлежащих автомасштабированию, вместе со всеми связанными политиками и информацией о состоянии. Группа управляемых экземпляров (Google Cloud Platform)
Размер Количество экземпляров, входящих в настоящее время в группу автомасштабирования.
Желаемая мощность (или желаемый размер) Число экземпляров, которое должна иметь группа автомасштабирования в любой момент времени. Если размер меньше желаемого, группа автомасштабирования попытается запустить (предоставить и подключить) новые экземпляры. Если размер превышает желаемый, группа автомасштабирования попытается удалить (отсоединить и завершить) экземпляры.
Минимальный размер Количество экземпляров, ниже которого не допускается падение желаемой мощности
Максимальный размер Количество экземпляров, выше которого не допускается повышение желаемой мощности.
Метрика Измерение (например, загрузка ЦП, использование памяти, использование сети), связанное с группой автомасштабирования, для которого регулярно генерируется временной ряд точек данных. Пороговые значения для метрик можно использовать для установки политик автоматического масштабирования. Метрики могут основываться на совокупности метрик для экземпляров группы автомасштабирования или на основе балансировщиков нагрузки, связанных с группой автомасштабирования.
Политика масштабирования (или политика автомасштабирования) Политика, которая определяет изменение желаемой емкости группы автомасштабирования (или иногда ее минимального и максимального размера) в ответ на превышение показателей определенных пороговых значений. Политики масштабирования могут иметь связанные с ними периоды восстановления, которые предотвращают выполнение дополнительных действий по масштабированию сразу после определенного действия по масштабированию. Изменения желаемой мощности могут быть постепенными (увеличение или уменьшение на определенное число) или могут указывать новое значение желаемой мощности. Политики, которые увеличивают желаемую мощность, называются политиками «масштабирования» или «масштабирования», а политики, которые уменьшают желаемую мощность, называются политиками «масштабирования» или «сокращения».
Проверка здоровья Способ, с помощью которого группа автомасштабирования может определить, правильно ли функционируют подключенные к ней экземпляры. Проверка работоспособности может основываться на том, существует ли экземпляр и доступен ли он, или на том, зарегистрирован ли экземпляр и обслуживается ли он соответствующим балансировщиком нагрузки.
Запустить конфигурацию Описание параметров и скриптов, используемых при запуске нового экземпляра. Сюда входят тип инстанса, варианты приобретения (например, спотовый или по требованию в случае AWS), возможные зоны доступности для запуска, образ машины и сценарии для запуска при запуске. Шаблон экземпляра (Google Cloud Platform)
Ручное масштабирование Действие масштабирования, выполняемое вручную
Масштабирование по расписанию Политика масштабирования, которая выполняется в определенное время, например время дня, недели, месяца или года. см. в разделе #Масштабирование по расписанию. Дополнительную информацию

Упражняться

[ редактировать ]

Веб-сервисы Amazon (AWS)

[ редактировать ]
Автомасштабирование
Auto-scaling

Amazon Web Services запустила сервис Amazon Elastic Compute Cloud (EC2) в августе 2006 года, который позволил разработчикам программно создавать и завершать экземпляры (машины). [11] [12] На момент первого запуска AWS не предлагал автомасштабирование, но возможность программного создания и закрытия экземпляров давала разработчикам возможность писать собственный код для автомасштабирования.

Стороннее программное обеспечение для автомасштабирования для AWS начало появляться примерно в апреле 2008 года. В их число входили инструменты Scalr. [13] и РайтСкейл. RightScale использовалась компанией Animoto, которая смогла обрабатывать трафик Facebook за счет автоматического масштабирования. [14] [15]

18 мая 2009 года Amazon запустила собственную функцию автомасштабирования вместе с Elastic Load Balancing в рамках Amazon Elastic Compute Cloud . [16] Автомасштабирование теперь является неотъемлемым компонентом предложения Amazon EC2. [2] [17] [18] Автомасштабирование в Amazon Web Services осуществляется через веб-браузер или инструмент командной строки. [19] В мае 2016 года автомасштабирование также было предложено в сервисе AWS ECS. [20]

Поставщик видео по запросу Netflix задокументировал использование автоматического масштабирования с Amazon Web Services для удовлетворения весьма изменчивых потребительских потребностей. Они обнаружили, что агрессивное увеличение масштаба с задержкой и осторожное уменьшение лучше всего служат их целям бесперебойной работы и скорости реагирования. [7]

В статье для TechCrunch Зев Ладерман, соучредитель и генеральный директор Newvem, сервиса, помогающего оптимизировать облачную инфраструктуру AWS, рекомендовал стартапам использовать автомасштабирование, чтобы снизить затраты на Amazon Web Services. [4]

Различные руководства по передовому опыту использования AWS предлагают использовать функцию автомасштабирования даже в тех случаях, когда нагрузка не является переменной. Это связано с тем, что автомасштабирование предлагает два других преимущества: автоматическую замену любых инстансов, которые по какой-либо причине стали неработоспособными (например, из-за сбоя оборудования, сбоя сети или ошибки приложения), и автоматическую замену спотовых инстансов, которые прерываются по причинам цены или емкости, что делает целесообразнее использовать спотовые экземпляры в производственных целях. [6] [21] [22] Внутренние лучшие практики Netflix требуют, чтобы каждый экземпляр находился в группе автомасштабирования, а его обезьяна соответствия завершает работу любого экземпляра, не входящего в группу автомасштабирования, чтобы обеспечить соблюдение этой передовой практики. [23]

Windows Azure от Microsoft

[ редактировать ]

27 июня 2013 года Microsoft объявила, что добавляет поддержку автоматического масштабирования в свою платформу облачных вычислений Windows Azure . [24] [25] [26] Документация по этой функции доступна в Microsoft Developer Network . [10] [27]

Oracle Облако

[ редактировать ]

Oracle Cloud Platform позволяет экземплярам серверов автоматически масштабировать кластер путем определения правила автоматического масштабирования. [28] Эти правила основаны на использовании ЦП и/или памяти и определяют, когда добавлять или удалять узлы.

Облачная платформа Google

[ редактировать ]

17 ноября 2014 г. Google Compute Engine объявила о публичной бета-версии своей функции автоматического масштабирования для использования в Google Cloud Platform . приложениях [29] [30] [31] [32] По состоянию на март 2015 года инструмент автомасштабирования все еще находится в стадии бета-тестирования. [9]

В своем блоге в августе 2014 года инженер Facebook сообщил, что компания начала использовать автоматическое масштабирование, чтобы снизить затраты на электроэнергию. В сообщении в блоге сообщается о снижении потребления энергии на 27% в часы с низким трафиком (около полуночи) и о снижении потребления энергии на 10-15% в течение типичного 24-часового цикла. [3] [33]

Горизонтальное автомасштабирование подов Kubernetes

[ редактировать ]

Kubernetes Horizontal Pod Autoscaler автоматически масштабирует количество модулей в контроллере репликации , развертывании или наборе реплик на основе наблюдаемой загрузки ЦП (или, при наличии бета-поддержки, на некоторых других показателях, предоставляемых приложением ). [34]

Альтернативные подходы к принятию решений по автомасштабированию

[ редактировать ]

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

Запланированный подход к автомасштабированию

[ редактировать ]

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

Прогнозирующее автомасштабирование

[ редактировать ]

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

Netflix обнаружил, что Scryer, их система прогнозной аналитики, дает лучшие результаты в отношении частей своей инфраструктуры и конкретных рабочих нагрузок, чем подход реактивного автомасштабирования Amazon. В частности, это было лучше для: [36] [33]

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

20 ноября 2018 г. AWS объявила, что прогнозное масштабирование будет доступно как часть ее предложения по автомасштабированию. [37]

См. также

[ редактировать ]
  1. ^ «Над облаками: взгляд Беркли на облачные вычисления» (PDF) . Беркли EECS. 10 февраля 2009 года . Проверено 21 марта 2015 г.
  2. ^ Jump up to: а б «Автомасштабирование» . Веб-сервисы Amazon . Проверено 21 марта 2015 г.
  3. ^ Jump up to: а б с Ву, Цян (8 августа 2014 г.). «Повышение энергоэффективности программной инфраструктуры Facebook с помощью Autoscale» . Блог с кодом Facebook . Проверено 21 марта 2015 г.
  4. ^ Jump up to: а б Ладерман, Зев (22 апреля 2012 г.). «10 крупнейших ошибок, допущенных при использовании веб-сервисов Amazon» . ТехКранч . Проверено 21 марта 2015 г.
  5. ^ Парк, Эндрю; Денлингер, Даррелл; Уотсон, Коберн (18 сентября 2015 г.). «Создание собственного спотового рынка EC2» . Нетфликс . Проверено 16 декабря 2016 г.
  6. ^ Jump up to: а б Виттиг, Майкл (26 декабря 2015 г.). «5 ошибок AWS, которых следует избегать» . облаконавт . Проверено 16 декабря 2016 г.
  7. ^ Jump up to: а б Орзелл, Грег; Беккер, Джастин (18 января 2012 г.). «Автомасштабирование в облаке Amazon» . Netflix Технический блог . Проверено 21 марта 2012 г.
  8. ^ Jump up to: а б «Что такое автоматическое масштабирование?» . Веб-сервисы Amazon . Проверено 16 декабря 2016 г.
  9. ^ Jump up to: а б «Автоскалер» . Облачная платформа Google . Проверено 21 марта 2015 г.
  10. ^ Jump up to: а б «Руководство по автомасштабированию» . Сеть разработчиков Microsoft . 26 августа 2015 г.
  11. ^ Кубрилович, Ник (24 августа 2006 г.). «Почти эксклюзивно: Amazon готовит сервис служебных вычислений» . ТехКранч . Проверено 4 декабря 2016 г.
  12. ^ Барр, Джефф (25 августа 2006 г.). «Бета-версия Amazon EC2» . Блог веб-сервисов Amazon . Проверено 31 мая 2013 г.
  13. ^ Уорк, Генри (3 апреля 2008 г.). «Scalr: усилия по автоматическому масштабированию Amazon EC2 с открытым исходным кодом» . ТехКранч . Проверено 21 марта 2015 г.
  14. ^ Хоулетт, Деннис (25 июня 2008 г.). «Управление облаком RightScale распространяется на MySQL. Компания RightScale, которая специализируется на управлении облачными вычислениями для платформы Amazon Web Services, сегодня объявила о поддержке MySQL Enterprise. Сервис, который будет запущен 1 июля, обеспечивает автоматическое развертывание, управление и масштабирование в сочетании с MySQL Enterprise. поддержка премиум-уровня для больших приложений баз данных» . ЗДНет . Проверено 16 декабря 2016 г.
  15. ^ фон Эйкен, Торстен (23 апреля 2008 г.). «Расширение Animoto в Facebook» . Архивировано из оригинала 20 декабря 2016 года . Проверено 16 декабря 2016 г.
  16. ^ Барр, Джефф (18 мая 2009 г.). «Новые функции Amazon EC2: эластичная балансировка нагрузки, автоматическое масштабирование и Amazon CloudWatch» . Веб-сервисы Amazon . Проверено 15 июня 2016 г.
  17. ^ «Что такое автомасштабирование?» . ТехТаржет. Архивировано из оригинала 29 апреля 2019 года . Проверено 21 марта 2015 г.
  18. ^ Барр, Джефф (30 июля 2014 г.). «Обновление автоматического масштабирования — управление жизненным циклом, состояние ожидания и DetachInstances» . Amazon Web Services (официальный блог) . Проверено 21 марта 2015 г.
  19. ^ «Инструмент командной строки автоматического масштабирования» . Amazon Web Services (страница, редактируемая сообществом) . Проверено 21 марта 2015 г.
  20. ^ «Автоматическое масштабирование с помощью Amazon ECS» . 18 мая 2016 г. Архивировано из оригинала 25 сентября 2019 г. . Проверено 12 февраля 2019 г.
  21. ^ Адамс, Рич (3 февраля 2014 г.). «Советы по AWS, которые я хотел бы знать до того, как начал. Сборник случайных советов по Amazon Web Services (AWS), о которых мне хотелось бы услышать несколько лет назад, основанный на том, что я узнал, создавая и развертывая различные приложения на AWS» . Проверено 16 декабря 2016 г.
  22. ^ «Как использовать спотовые инстансы Amazon EC2» . викиКак . Проверено 16 декабря 2016 г.
  23. ^ «Обезьянья армия Netflix» . Нетфликс . 19 июля 2011 года . Проверено 5 декабря 2016 г.
  24. ^ Лардинуа, Фредерик (27 июня 2013 г.). «Microsoft добавляет автоматическое масштабирование в Windows Azure» . ТехКранч . Проверено 21 марта 2015 г.
  25. ^ «Microsoft добавит автомасштабирование и оповещения в Windows Azure» . ЗДНет . 27 июня 2013 года . Проверено 21 марта 2015 г.
  26. ^ Батлер, Брэндон (7 августа 2013 г.). «Google и Microsoft пытаются догнать Amazon, добавив балансировку нагрузки и автоматическое масштабирование в свои облака» . Сетевой мир . Архивировано из оригинала 18 мая 2018 года . Проверено 21 марта 2015 г.
  27. ^ «Прикладной блок автомасштабирования» . Сеть разработчиков Microsoft . Проверено 21 марта 2015 г.
  28. ^ «Администрирование PaaS-сервисов» . Справочный центр Oracle . Проверено 16 мая 2018 г.
  29. ^ Балейко, Филип (17 ноября 2014 г.). «Автомасштабирование, добро пожаловать в Google Compute Engine» . Google Cloud Platform Блог . Проверено 21 марта 2015 г.
  30. ^ Проталински, Эмиль (17 ноября 2014 г.). «Google Compute Engine позволяет Autoscaler корректировать ресурсы приложения в зависимости от изменяющегося трафика и рабочих нагрузок» . ВенчурБит . Проверено 21 марта 2015 г.
  31. ^ Лардинуа, Фредерик (17 ноября 2014 г.). «Google внедряет автомасштабирование в Compute Engine» . ТехКранч . Проверено 21 марта 2015 г.
  32. ^ Вердж, Джейсон (17 ноября 2014 г.). «Google запускает бета-версию автомасштабирования на Compute Engine» . Знание дата-центра . Проверено 21 марта 2015 г.
  33. ^ Jump up to: а б «Автомасштабирование: как облако обеспечивает колоссальный прирост» . Морфеус. 2 ноября 2016 г. Проверено 16 декабря 2016 г.
  34. ^ «Пошаговое руководство по автомасштабированию горизонтальных модулей» . Проверено 21 июня 2018 г.
  35. ^ «Запланированное масштабирование» . Веб-сервисы Amazon . Проверено 16 декабря 2016 г.
  36. ^ Джейкобсон, Дэниел; Юань, Дэнни; Джоши, Нирадж. «Scryer: механизм прогнозирующего автоматического масштабирования Netflix» . Netflix . Технический блог Нетфликс . Проверено 28 мая 2015 г.
  37. ^ Барр, Джефф (20 ноября 2018 г.). «Новинка — прогнозное масштабирование для EC2 на основе машинного обучения» . Веб-сервисы Amazon . Проверено 23 ноября 2018 г.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: a71532f57aeea7c66c130f31aceb1fd7__1720182720
URL1:https://arc.ask3.ru/arc/aa/a7/d7/a71532f57aeea7c66c130f31aceb1fd7.html
Заголовок, (Title) документа по адресу, URL1:
Autoscaling - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)