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

ООО "Сочинения-Про"

Ежедневно 8:00–20:00

Санкт-Петербург

Ленинский проспект, 140Ж

magbo system

Сочинение на тему Обзорное исследование по методам балансировки нагрузки в облачных вычислениях

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

Введение

Как определено NIST [1], облачные вычисления – это модель, которая обеспечивает удобный, повсеместный и доступ по сети к общему пулу настраиваемых вычислительных ресурсов (например, сетей, хранилищ, серверов, приложений и услуг), которые могут быть немедленно распределяется и высвобождается с минимальными усилиями руководства или взаимодействия с поставщиком услуг. Эластичность предоставления ресурсов, отсутствие капиталовложений и модель ценообразования с оплатой по мере использования привлекают людей к облачным вычислениям. Облачные вычисления позволяют пользователям использовать вычислительные ресурсы, не устанавливая их на свой локальный компьютер.

Поскольку доступ к облаку возможен в любом месте и в любое время с помощью аппаратного обеспечения, его спрос растет день ото дня. Таким образом, он должен соответствовать требованиям качества обслуживания (QoS) пользователя и в то же время должен быть выгодным для поставщика облачных услуг (CSP). Ключевой технологией облачных вычислений является виртуализация, которая позволяет одновременно выполнять различные задачи на общей аппаратной платформе. Он обеспечивает физические машины по требованию и на лету для выполнения разнообразных задач, что позволяет избежать потери ресурсов [2]. Облако предоставляет вычислительные ресурсы в виде виртуальной машины (ВМ), которая является абстрактной машиной, работающей на физической машине (ПМ) [3].

Метод динамической миграции виртуальных машин меняет отображение между PM и виртуальными машинами, не прерывая работу приложений в течение длительного времени [4]. Он передает состояние виртуальной машины с одного PM на другой с минимальным временем простоя. Приостановка и копирование, пре-копирование и пост-копирование – три основных метода живой миграции. С каждой миграцией связана задержка, включающая время, необходимое виртуальной машине [2] для остановки выполнения на текущем сервере, перемещения сопутствующих данных на новый и инициализации новой виртуальной машины. Независимо от этого бремени миграция виртуальных машин необходима для балансировки нагрузки и непрерывного обслуживания.

Из-за неэффективного распределения нагрузки некоторые физические машины перегружаются. Эти перегруженные серверы производят больше тепла. В результате стоимость системы охлаждения увеличивается. Это вызывает существенную эмиссию CO2, способствующую парниковому эффекту [6] [7]. Таким образом, чтобы минимизировать воздействие на окружающую среду и выполнить требования QoS пользователей, некоторые виртуальные машины должны быть перенесены для балансировки нагрузки. Алгоритмы балансировки нагрузки классифицируются как статические и динамические алгоритмы, где статические алгоритмы в основном подходят для однородных и стабильных сред, и они могут давать очень хорошие результаты в этих средах. Однако они обычно не являются гибкими и не могут соответствовать динамическим изменениям, которые происходят во время выполнения. Динамические алгоритмы являются более гибкими и учитывают различные типы атрибутов в системе как до, так и во время выполнения [8]. Эти алгоритмы могут адаптироваться к изменениям и обеспечивать лучшие результаты в гетерогенных и динамических средах. Однако по мере того, как атрибуты распределения становятся более сложными и динамичными, некоторые из этих алгоритмов могут стать неэффективными и вызывать больше накладных расходов, чем необходимо, что приводит к общему снижению производительности. В этой статье мы представляем обзор современных алгоритмов балансировки нагрузки, разработанных специально для сред облачных вычислений. Мы даем обзор этих алгоритмов и обсуждаем их свойства.

Кроме того, мы сравниваем эти алгоритмы на основе следующих параметров: время отклика, пропускная способность, энергоэффективность, использование ресурсов, масштабируемость, поддержка, неоднородность, ресурсы, емкость обработки данных и статический / динамический. Остальная часть этой статьи организована следующим образом. В разделе II мы описали балансировку нагрузки и ее цели. В разделе III обсуждаются различные алгоритмы балансировки нагрузки в облачных вычислениях. Раздел IV сравнил несколько алгоритмов с точки зрения различных параметров. После этого мы обсудим и сравним (таблица-1) соответствующие подходы в разделе IV. Затем мы завершим работу и покажем возможные области улучшения и наш будущий план по улучшению алгоритмов балансировки нагрузки в разделе V. II.

Балансировка нагрузки

Существует ряд проблем в облачных вычислениях, которые необходимо решить, включая инфраструктуру, распределение нагрузки, безопасность и конфиденциальность в облачных вычислениях и т. д. Среди них распределение нагрузки является одним из необходимых механизмов для поддержания уровня обслуживания. соглашение (SLA) и для лучшего использования ресурсов. Балансировка нагрузки [9] – это механизм, который распределяет рабочую нагрузку на ресурсы узла по соответствующим ресурсам на другом узле в сети, не устраняя при этом ни одной из запущенных задач [10]. Таким образом, балансировка нагрузки между различными узлами облачной системы стала основной проблемой в среде облачных вычислений. Нагрузка может быть любого типа, например нагрузка на сеть, нагрузка на память, загрузка процессора и задержка загрузки и т. Д. Таким образом, очень важно распределить рабочую нагрузку между несколькими узлами системы для повышения производительности и увеличения использования ресурсов. Основными целями балансировки нагрузки [11] являются – создание отказоустойчивой системы; – поддержание стабильности системы; повышение производительности и эффективности; – минимизация времени выполнения задания и времени ожидания в очереди. – Повышение удовлетворенности пользователей. – Повышение коэффициента использования ресурсов.

ЛИТЕРАЛЬНЫЙ ОБЗОР АЛГОРИТМА БАЛАНСИРОВАНИЯ РАЗЛИЧНОЙ НАГРУЗКИ

В настоящее время в облачных вычислениях распространены следующие алгоритмы распределения нагрузки. Round Robin – [12] Это один из самых простых методов планирования, который использует принцип временных интервалов. Здесь время делится на несколько срезов, и каждому узлу дается определенный временной интервал или интервал. Первоначально нагрузки распределяются поровну между всеми виртуальными машинами. Как следует из названия, круговой робин работает по кругу. Это легко реализовать и понять и, следовательно, менее сложно. Поскольку текущая нагрузка на систему не учитывается, в любой момент некоторые узлы могут иметь большую нагрузку, а другие могут не иметь запроса. Однако эта проблема решается с помощью алгоритма взвешенного кругового алгоритма. Weighted Round Robin – это модифицированная версия Round Robin, в которой вес назначается каждой виртуальной машине, так что если одна виртуальная машина способна обрабатывать вдвое большую нагрузку, чем другая, мощный сервер получает вес 2.

В таких случаях контроллер центра обработки данных назначит два запроса мощной виртуальной машине для каждого запроса, назначенного более слабому. Как и Round Robin, он также не учитывает дополнительные требования к балансировке нагрузки, такие как время обработки для каждого отдельного запроса [13]. Dynamic Round Robin [14] – Этот алгоритм в основном работает для снижения энергопотребления физической машины. Два алгоритма, используемые этим алгоритмом, следующие: i) Если виртуальная машина завершила свое выполнение и на этом же PM размещены другие виртуальные машины, эта физическая машина больше не будет принимать новую виртуальную машину. Такие физические машины называются находящимися в состоянии «удаления», то есть когда остальные виртуальные машины завершают свое выполнение, эта физическая машина может завершить работу. ii) ii) Второе правило гласит, что если физическая машина находится в состоянии снятия с эксплуатации в течение длительного времени, то вместо ожидания все работающие виртуальные машины переносятся на другие физические машины. После успешной миграции мы можем выключить физическую машину. Этот порог времени ожидания называется «порог выхода на пенсию». Алгоритм снижает стоимость энергопотребления, но не масштабируется для больших центров обработки данных. Throttled – Throttled Load Balancer (TLB) поддерживает запись состояния каждой виртуальной машины (занято / бездействует) [15]. Когда приходит запрос, он выполняет поиск в таблице, и, если найдено соответствие на основе размера и доступности компьютера, запрос принимается, в противном случае возвращается -1 и запрос помещается в очередь [16].

Во время распределения запроса текущая нагрузка на виртуальную машину не учитывается, что, в свою очередь, может увеличить время отклика задачи. Modified Throttled – Как и алгоритм Throttled, он также поддерживает индексную таблицу, содержащую список виртуальных машин и их состояний. Первая виртуальная машина выбирается так же, как в Throttled. Когда приходит следующий запрос, виртуальная машина с индексом рядом с уже назначенной виртуальной машиной выбирается в зависимости от состояния виртуальной машины, и выполняются обычные шаги, в отличие от алгоритма Throttled, где таблица индекса анализируется из первого индекса каждый раз, когда данные Центр запрашивает Load Balancer для выделения ВМ [17]. Это дает лучшее время отклика по сравнению с предыдущим. Но в таблице индексов состояние некоторых виртуальных машин может измениться во время распределения следующего запроса из-за отмены распределения некоторых задач. Поэтому не всегда выгодно начинать поиск со следующей или уже назначенной виртуальной машины. Алгоритм балансировки нагрузки активного мониторинга (AMLB). Он содержит информацию о каждой виртуальной машине и количестве запросов, выделенных в настоящий момент каждой виртуальной машине. Когда приходит запрос на выделение новой виртуальной машины, он идентифицирует наименее загруженную виртуальную машину. Если их несколько, выбирается первый идентифицированный. Балансировщик нагрузки возвращает идентификатор виртуальной машины в контроллер центра обработки данных. Он отправляет запрос к виртуальной машине, идентифицированной этим идентификатором, и уведомляет Active VM Load Balancer о новом распределении [18]. При распределении виртуальной машины важна только текущая нагрузка виртуальной машины, ее вычислительная мощность не учитывается. Таким образом, время ожидания некоторых заданий может увеличиться, что нарушает требование QoS.

Алгоритм распределения нагрузки VM-Assign – это модифицированная версия алгоритма активного мониторинга распределения нагрузки. Первое распределение ВМ аналогично предыдущему алгоритму. Затем, если приходит следующий запрос, он проверяет таблицу виртуальных машин, если виртуальная машина доступна и она не используется в предыдущем назначении, то она назначается, и идентификатор виртуальной машины возвращается в центр обработки данных, в противном случае она находит следующую наименее загруженную виртуальную машину. Шридхар Г. Доманал и др. Я сказал, что этот алгоритм будет полностью и правильно использовать все виртуальные машины в отличие от предыдущей, где несколько виртуальных машин будут перегружены множеством запросов, а остальные останутся неиспользованными [19]. Но в статье четко не указано, как это происходит. Этот алгоритм не будет использовать виртуальную машину, если она уже выделена в последнем раунде. Но в этом нет логики. Потому что это может быть наименее загруженная виртуальная машина с хорошей скоростью обработки. Таким образом, больше задач может быть назначено на него.

При поиске следующей наименее загруженной виртуальной машины задачи распределяются равномерно только в том случае, если имеется несколько виртуальных машин, которые одинаково загружены, или если следующая наименее загруженная виртуальная машина имеет высокую скорость обработки по сравнению с предыдущей. Но алгоритм учитывает только нагрузку, и если виртуальные машины загружены одинаково, то задача может быть назначена любому из них, независимо от того, используется ли виртуальная машина на последней итерации или нет. Поскольку распределение задачи меняет состояние виртуальной машины, поэтому в предыдущем алгоритме наименее загруженная виртуальная машина будет найдена автоматически, и даже распределение задачи будет иметь место. Взвешенный активный алгоритм балансировки нагрузки мониторинга – Jasmin James et. Я предложил этот метод [15], который представляет собой комбинацию алгоритма взвешенного кругового алгоритма и алгоритма балансировки нагрузки активного мониторинга. В этом алгоритме разные веса назначаются виртуальным машинам в зависимости от доступной вычислительной мощности. Среди наименее загруженных виртуальных машин задачи назначаются наиболее мощным в зависимости от их веса. Таким образом, он устраняет недостатки Алгоритма балансировки нагрузки активного мониторинга, учитывая не только нагрузку, но и вычислительную мощность доступных виртуальных машин. IV.

СРАВНЕНИЕ АЛГОРИТМА БАЛАНСИРОВАНИЯ РАЗЛИЧНОЙ НАГРУЗКИ В ОБЛАЧНЫХ ВЫЧИСЛЕНИЯХ

В приведенной ниже таблице 1 сравниваются рабочие характеристики различных алгоритмов балансировки нагрузки с точки зрения различных параметров, как уже упоминалось в разделе 1. V. ПРЕДЛАГАЕМАЯ РАБОТА В этой статье мы предложили алгоритм балансировки нагрузки, называемый «Dynamic Throttled», который работает следующим образом: Шаг 1: – Планирование задач будет выполнено как алгоритм Throttled. Шаг 2: – Все PM будут контролироваться через регулярные промежутки времени, чтобы проверить, не перегружен ли он (если текущая нагрузка на CPU превышает фиксированный порог, то узел будет считаться перегруженным). Шаг 3: – Если обнаружен перегруженный PM, некоторые из его виртуальных машин будут перенесены в другой PM. ВМ с минимальным объемом оперативной памяти будет перенесена. Миграция будет продолжаться до тех пор, пока текущая загрузка PM не станет меньше порогового значения. PM назначения будет выбран с использованием простого алгоритма Throttled.

ЗАКЛЮЧЕНИЕ И БУДУЩАЯ РАБОТА

В этой статье мы изучили различные алгоритмы распределения нагрузки в облачных вычислениях. Основная цель балансировки нагрузки – удовлетворить требования заказчика, динамически распределяя нагрузку между всеми доступными узлами и повышая производительность и эффективность. Таким образом, коэффициент использования ресурсов увеличился. Мы также сравнили различные алгоритмы, чтобы описать их общую производительность. В будущем мы будем моделировать вышеупомянутый алгоритм «Dynamic Throttled» с использованием Cloudsim и сравнивать его производительность с другими существующими алгоритмами.

Зарегистрируйся, чтобы продолжить изучение работы

    Поделиться сочинением
    Ещё сочинения
    Нет времени делать работу? Закажите!

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