Dns-сервер распределенной сети с функцией балансировки информационных потоков



Скачать 294.98 Kb.
Pdf просмотр
Дата23.11.2016
Размер294.98 Kb.
Просмотров386
Скачиваний0

DNS-сервер распределенной сети с функцией балансировки
информационных потоков

С.В. Разуков, V курс, Институт информатики, инноваций и бизнес-систем
М.А. Сачко - научный руководитель, ст. преп. Кафедры ИСПИ

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

В качестве аппаратного средства балансировки нагрузки может выступать специализированное устройство - аппаратный балансировщик(распределитель) или маршрутизатор с функцией load balancing.
Из программных реализаций можно выделить следующие, наиболее часто применяющиеся в реальных проектах, технологии:
- Round Robin DNS - Циклическое распределение нагрузки, путем определения нескольких IP адресов для одного DNS имени
- lbnamed - DNS сервер поддерживающий распределение нагрузки в зависимости от состояния конечных серверов
- LVS Linux Virtual Server - технология, позволяющая распределять нагрузку на сетевом и транспортном уровнях
- HAProxy - Быстрый и легкий прокси-сервер позволяющий перенаправлять запросы, в зависимости от нагрузки конечного сервера
Зачастую используют смежные решения, когда аппаратные распределители могут заменять программные и наоборот.
Под аппаратным балансировщиком нагрузки понимают высокоинтеллектуальное устройство, способное выполнять анализ трафика в реальном времени и распределять поток, согласно внутренним настройкам. Все запросы пользователей из внешнего мира проходят через распределитель. Для определения, кому из серверов отправить запрос, балансировщик собирает огромное количество информации о работе сети. Используя эти данные, балансировщик может выбрать конечный сервер. Выбор как правило производится согласно одному из алгоритмов распределения.
Самым высоким недостатком аппаратных балансировщиков нагрузки является их цена. Решения, которые покрывают большую часть необходимого функционала стоят гораздо дороже, чем базовые варианты, список функций которых очень ограничен. Кроме того, иногда введение в сеть аппаратного балансировщика может изменить топологию сети, что не всегда возможно или же весьма затратное.
К плюсам аппаратных распределителей можно отнести высокую скорость работу, единое централизованное управление (которое может стать и минусом, если нет необходимых специалистов в штате сотрудников) а также высокую надежность.
К программным реализациям методов балансировки относят нижеприведенные технологии.
Алгоритм Round robin - алгоритм распределения элементов, методом их перебора по кругу. Применяется во многих сферах, благодаря простоте реализации и эффективности выполнения. Алгоритм Round Robin используется во многих серверах,
например в популярном DNS сервере BIND, PowerDNS и прочих. Для распределения нагрузки необходимо для одного доменного имени создать несколько записей типа А.
Сервер автоматически будет выдавать клиентам адреса по очереди.
Несомненным достоинством этого алгоритма является поддержка его во многих популярных серверах, а также простота настройки. Недостатком этой технологии является тот факт, что DNS сервер не знает о нагрузке серверов, чьи адреса он отдает клиентам, поэтому теоретически может возникнуть большая нагрузка на один из серверов, в то время, как остальные будут свободны. Ещё один недостаток - невозможность управления и мониторинга нагрузки на сервер.
Балансирующий DNS-сервер lbnamed cостоит из двух компонентов: клиентской части - демона lbcd, который занимается мониторингом состояний хостов, и серверной части lbnamed - непосредственно ДНС сервера, который выступает клиентом по отношению к демону. Сервер занимается распределением имен согласно информации, поступающей от демона.
Неоспоримым достоинством lbnamed является тот факт, что для использования его, в распределённой сети не нужно менять логическую и физическую топологию.
Достаточно лишь заменить имеющийся DNS сервер на lbnamed и установить на хостах демон lbcd. В то же время, использование lbnamed в качестве решения для балансировки нагрузки влечет за собой ряд проблем. Основной и нерешаемой проблемой, при использовании DNS в качестве технологии балансировки, является возможность клиентов сети кэшировать результаты DNS запроса.
Linux
Virtual
Server
- является linux-based решением для создания высокоэффективных и лекгомасштабиуемых кластеров. Фактически представляет собой программный маршрутизатор с функцией объединения хостов в одно виртуальное пространство для последующей балансировки запросов. Потоки трафика будут распределяться между реальными серверами согласно одному из поддерживаемых алгоритмов перенаправления. LVS сервер выполняет роль шлюза в сетевой конфигурации.
На директоре включается модуль ядра ipvs и настраиваются правила маршрутизации трафика. Несомненным преимуществом данной технологии, по сравнению с предыдущими являются наличие возможности более продвинутого управления нагрузкой.
Распределять потоки трафика можно в зависимости от нагрузки на конечный сервер, количества подключений на нём или от факта доступности необходимой серверной службы, причем не требуя установки дополнительного ПО на сервера в кластере. Также, данная технология является отличным решением для сетей, в который уже используются маршрутизаторы на базе ОС Linux - для организации балансировки достаточно включить
нужные механизмы в ядре системы и определить правила перенаправления пакетов.
HAProxy - одно из типовых решений для организации распределения tcp \ http соединений по различным серверам, в зависимости от многих критериев.
HAProxy представляет собой прокси-сервер, позволяющий обрабатывать пакеты на прикладном уровне. Нацелен преимущественно на организацию бесперебойной работы web-серверов. По мнению авторов HAProxy является «Наиболее быстрым и легким решением для организации высоконагруженных проектов». Заявление это подкрепляет тот факт, что HAProxy в своем составе используют многие широкоизвестные сетевые проекты, а также крупные фирмы - Twitter, Virgin America airlines, ITA Software, GitHub,
Fedora.
Заключение. Проблема балансировки трафика в распределенных сетях считается на текущий момент наиболее актуальной. Для наилучшего соотношения цена \ качество на рынке услуг приходится выбирать решения, которые позволяют наиболее качественно выполнять поставленную задачу с наименьшими затратами. С ростом спроса на информационный товар, растет и нагрузка на обслуживающее оборудование. Там, где раньше обходились одним высокопроизводительным сервером, сейчас требуется целый кластер или сеть кластеров, раскиданных по всему миру. Несомненно, что камнем преткновения таких систем будет являться механизм, распределяющий клиентов по необходимым узлам. Существующие системы как правило содержат ограниченные возможности управлением потока трафика, а наиболее подходящие решения оказываются наиболее дорогими, или требуют перепланировки всей сети, что в условиях фирмы, которая работает в режиме 24\7, просто недопустимо - малейшая задержка грозит финансовыми потерями. Выбранный метод, позволяет при малейшей доработке устранить эти проблемы, обеспечивая уровень сервиса на порядок выше, чем многие программные решения, и в то же время требуя минимальных затрат на установку в сеть организации, а также обладая низкой стоимостью, в отличие от специализированных устройств. С внедрением в сеть фирмы данного решения станет доступным:
- распределение клиентов согласно географическому расположению - на ближайший к клиенту сервер;
- контроль над нагрузкой конечных серверов;
- своевременное реагирование при выходе системы из строя;
- мониторинг потоков трафика в реальном времени.

Каталог: files
files -> Основная часть 1 История создания школы
files -> Методические рекомендации по проведению Дня Знаний, посвященного Году кино в РФ
files -> Подросток и компьютерные игры
files -> Программа духовно-нравственного развития и воспитания обучающихся на уровне среднего общего образования
files -> Правила закаливания… Выпуск №1. Чтоб улыбка сияла. Мама первый стоматолог
files -> О существовании значения игры преследования
files -> Учебное пособие по нейрохирургии. Часть I. Краткая история нейрохирургии. Черепно-мозговая травма санкт-Петербург 2015


Поделитесь с Вашими друзьями:


База данных защищена авторским правом ©nethash.ru 2019
обратиться к администрации

войти | регистрация
    Главная страница


загрузить материал