Service Discovery для распределенных систем::Журнал СА 06.2016
www.samag.ru
Журнал «БИТ. Бизнес&Информационные технологии»      
Поиск   
              
 www.samag.ru    Web  0 товаров , сумма 0 руб.
E-mail
Пароль  
 Запомнить меня
Регистрация | Забыли пароль?
Журнал "Системный администратор"
Журнал «БИТ»
Подписка
Архив номеров
Где купить
Наука и технологии
Авторам
Рекламодателям
Контакты
   

  Опросы
1001 и 1 книга  
19.03.2018г.
Просмотров: 6827
Комментарии: 0
Машинное обучение с использованием библиотеки Н2О

 Читать далее...

12.03.2018г.
Просмотров: 7359
Комментарии: 0
Особенности киберпреступлений в России: инструменты нападения и защита информации

 Читать далее...

12.03.2018г.
Просмотров: 4608
Комментарии: 0
Глубокое обучение с точки зрения практика

 Читать далее...

12.03.2018г.
Просмотров: 3159
Комментарии: 0
Изучаем pandas

 Читать далее...

12.03.2018г.
Просмотров: 3962
Комментарии: 0
Программирование на языке Rust (Цветное издание)

 Читать далее...

19.12.2017г.
Просмотров: 3966
Комментарии: 0
Глубокое обучение

 Читать далее...

19.12.2017г.
Просмотров: 6467
Комментарии: 0
Анализ социальных медиа на Python

 Читать далее...

19.12.2017г.
Просмотров: 3311
Комментарии: 0
Основы блокчейна

 Читать далее...

19.12.2017г.
Просмотров: 3589
Комментарии: 0
Java 9. Полный обзор нововведений

 Читать далее...

16.02.2017г.
Просмотров: 7448
Комментарии: 0
Опоздавших не бывает, или книга о стеке

 Читать далее...

17.05.2016г.
Просмотров: 10814
Комментарии: 0
Теория вычислений для программистов

 Читать далее...

30.03.2015г.
Просмотров: 12524
Комментарии: 0
От математики к обобщенному программированию

 Читать далее...

18.02.2014г.
Просмотров: 14230
Комментарии: 0
Рецензия на книгу «Читаем Тьюринга»

 Читать далее...

13.02.2014г.
Просмотров: 9262
Комментарии: 0
Читайте, размышляйте, действуйте

 Читать далее...

12.02.2014г.
Просмотров: 7210
Комментарии: 0
Рисуем наши мысли

 Читать далее...

10.02.2014г.
Просмотров: 5517
Комментарии: 3
Страна в цифрах

 Читать далее...

18.12.2013г.
Просмотров: 4746
Комментарии: 0
Большие данные меняют нашу жизнь

 Читать далее...

18.12.2013г.
Просмотров: 3564
Комментарии: 0
Компьютерные технологии – корень зла для точки роста

 Читать далее...

04.12.2013г.
Просмотров: 3274
Комментарии: 0
Паутина в облаках

 Читать далее...

03.12.2013г.
Просмотров: 3506
Комментарии: 1
Рецензия на книгу «MongoDB в действии»

 Читать далее...

02.12.2013г.
Просмотров: 3160
Комментарии: 0
Не думай о минутах свысока

 Читать далее...

Друзья сайта  

 Service Discovery для распределенных систем

Архив номеров / 2016 / Выпуск №6 (163) / Service Discovery для распределенных систем

Рубрика: Администрирование /  Автоматизация

Сергей Яремчук СЕРГЕЙ ЯРЕМЧУК, автор более 800 статей и шести книг. С «СА» с первого номера. Интересы: сетевые технологии, защита информации, свободные ОС, grinder@samag.ru

Service Discovery
для распределенных систем

Как отследить расположение сервисов и их доступность в динамической сети? Выход – системы обнаружения сервисов

Времена простых статичных конфигураций подходят к концу. Сегодня в тренде облачные сервисы, виртуализация, микроархитектура, распределенные системы. Все это по мере запуска новых систем становится все сложнее и сложнее.

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

Можно эту задачу автоматизировать с помощью скриптов, отслеживая свой и чужой IP, настроить службу DNS, использовать прокси и т.д. При небольшом количестве и в более-менее статичной среде это работает, но по мере увеличения систем управлять всем этим становится сложнее. Будут возникать задержки в случае неработы службы и необходимости быстрого подключения к другому серверу.

Проблема нашла решение в специальном классе приложений – системы обнаружения сервисов (Service Discovery).

Задача Service Discovery

Системы обнаружения сервисов представляют собой базу данных, содержащих актуальную информацию о расположении и состоянии экземпляров службы, позволяющую, таким образом, автоматизировать процесс получения ответа на вопрос, на каком IP запущен нужный сервис, анонсировать в сети новый ресурс или быстро изменить настройки в случае неответа определенного приложения.

Работает такая схема очень просто. Вся процедура состоит из двух фаз: регистрация сервиса (Service Registration) и обнаружение сервиса (Service Discovery).

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

Теперь любой клиент может обратиться к хранилищу с запросом, используя API или традиционные службы вроде DNS, и получить нужную информацию. То есть, грубо говоря, Service Discovery – это аналог DNS для распределенных сетей с часто меняющейся конфигурацией.

Кроме хранения данных, центральный сервер обычно отслеживает состояние сервисов и отмечает те, которые не отвечают на запросы. Если сервис сообщает, что он отключается, онавтоматически удаляется из каталога. Еще одна полезная функция – балансировка нагрузки между одинаковыми сервисами за счет выдачи разным клиентам разных IP. Также такие сервисы используются для хранения конфигураций с возможностью отслеживания изменений значения параметра.

К слову, в Windows Server 2016 в Microsoft, в котором возможно использование контейнеров, для обнаружения служб не будет каких-либо встроенных инструментов, поэтому придется использовать сторонние разработки.

Статью целиком читайте в журнале «Системный администратор», №06 за 2016 г. на страницах 14-16.

PDF-версию данного номера можно приобрести в нашем магазине.


  1. Сайт проекта ZooKeeper – http://zookeeper.apache.org.
  2. Сайт проекта OpenReplica – http://openreplica.org.
  3. Страница Ectd на GitHub – https://github.com/coreos/etcd.
  4. Страница Doozer на GitHub – https://github.com/ha/doozer.
  5. Сайт проекта Consul – http://consul.io.

Комментарии отсутствуют

Добавить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

               Copyright © Системный администратор

Яндекс.Метрика
Tel.: (499) 277-12-45
E-mail: sa@samag.ru