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

  Опросы
  Статьи

Электронный документооборот  

5 способов повысить безопасность электронной подписи

Область применения технологий электронной подписи с каждым годом расширяется. Все больше задач

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

Рынок труда  

Системные администраторы по-прежнему востребованы и незаменимы

Системные администраторы, практически, есть везде. Порой их не видно и не слышно,

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

Учебные центры  

Карьерные мечты нужно воплощать! А мы поможем

Школа Bell Integrator открывает свои двери для всех, кто хочет освоить перспективную

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

Гость номера  

Дмитрий Галов: «Нельзя сказать, что люди становятся доверчивее, скорее эволюционирует ландшафт киберугроз»

Использование мобильных устройств растет. А вместе с ними быстро растет количество мобильных

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

Прошу слова  

Твердая рука в бархатной перчатке: принципы soft skills

Лауреат Нобелевской премии, специалист по рынку труда, профессор Лондонской школы экономики Кристофер

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

1001 и 1 книга  
19.03.2018г.
Просмотров: 9943
Комментарии: 0
Потоковая обработка данных

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

19.03.2018г.
Просмотров: 8154
Комментарии: 0
Релевантный поиск с использованием Elasticsearch и Solr

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

19.03.2018г.
Просмотров: 8259
Комментарии: 0
Конкурентное программирование на SCALA

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

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

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

12.03.2018г.
Просмотров: 5911
Комментарии: 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-41
Fax: (499) 277-12-45
E-mail: sa@samag.ru