Jump to content

Сердцебиение (вычисления)

(Перенаправлено из сообщения Heartbeat )

В информатике сердцебиение генерируемый — это периодический сигнал, аппаратным или программным обеспечением для обозначения нормальной работы или синхронизации других частей компьютерной системы . [1] [2] Механизм Heartbeat — это один из распространенных методов в критически важных системах для обеспечения высокой доступности и отказоустойчивости сетевых служб путем обнаружения сбоев сети или систем узлов , или демонов принадлежащих сетевому кластеру , управляемому главным сервером , с целью автоматическая адаптация и ребалансировка системы за счет использования оставшихся резервных узлов кластера для принятия на себя нагрузки вышедших из строя узлов для предоставления постоянных услуг. [3] [1] Обычно импульсы передаются между машинами через регулярные промежутки времени порядка секунд; сообщение о сердцебиении . [4] Если конечная точка не получает контрольные сигналы в течение некоторого времени (обычно в течение нескольких интервалов), предполагается, что машина, которая должна была отправить контрольные сигналы, вышла из строя. [5] Сообщения Heartbeat обычно отправляются без остановок на периодической или повторяющейся основе с момента запуска отправителя до его завершения. Когда пункт назначения обнаруживает отсутствие периодических сообщений в течение ожидаемого периода прибытия, пункт назначения может определить, что отправитель вышел из строя, отключился или вообще больше недоступен.

Протокол сердцебиения

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

Протокол Heartbeat обычно используется для согласования и мониторинга доступности ресурса, такого как плавающий IP-адрес , и эта процедура включает отправку сетевых пакетов всем узлам кластера для проверки его доступности . [3] Обычно, когда на машине запускается контрольный сигнал, он выполняет процесс выбора с другими компьютерами в сети контрольного сигнала, чтобы определить, какой компьютер, если таковой имеется, владеет ресурсом. В тактовых сетях, состоящих из более чем двух компьютеров, важно учитывать разделение, при котором две половины сети могут функционировать, но не иметь возможности взаимодействовать друг с другом. В такой ситуации важно, чтобы ресурс принадлежал только одной машине, а не одной машине в каждом разделе.

Поскольку пульс предназначен для указания на работоспособность машины, важно, чтобы протокол пульса и транспорт, на котором он работает, были максимально надежными. Вызов аварийного переключения из-за ложной тревоги может, в зависимости от ресурса, быть крайне нежелательным. Также важно быстро реагировать на фактический сбой, что еще раз подтверждает надежность периодических сообщений. По этой причине часто желательно иметь контрольный сигнал, обрабатывающий более чем один транспорт; например, сегмент Ethernet , использующий UDP / IP , и последовательный канал.

«Членство узла в кластере» является свойством доступности сети : если мастер может взаимодействовать с узлом , он считается членом кластера и в противном случае «мертвым». [6] Программа Heartbeat в целом состоит из различных подсистем : [7]

  • Подсистема Heartbeat (HS): Подсистема, которая отслеживает присутствие узла в кластере с помощью серии сообщений поддержки активности или «слушающих сообщений».
  • Менеджер кластера (CM): подсистема внутри кластера (обычно главный сервер), которая отслеживает «члены кластера» и записывает, какие ресурсы на каких узлах находятся.
  • Переход кластера (CT): когда узел присоединяется к кластеру или покидает его, эта подсистема отвечает за отслеживание таких событий с целью запуска событий для повторной балансировки и реконфигурации ведущего устройства для распределения нагрузки.

Сообщения Heartbeat отправляются периодически с помощью таких методов, как широковещательная или многоадресная рассылка в более крупных кластерах. [6] Поскольку CM выполняют транзакции по всему кластеру, наиболее распространенной схемой является отправка контрольных сообщений всем узлам и « ожидание » ответов неблокирующим способом. [8] Поскольку сообщения Heartbeat или Keepalive представляют собой подавляющее большинство сообщений управления кластером, не связанных с приложениями (которые также передаются всем членам кластера), основные критические системы также включают в себя не- IP -протоколы, такие как последовательные порты, для доставки сигналов Heartbeat. [9]

Проектирование и реализация

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

Каждый CM на главном сервере поддерживает конечный автомат с тремя состояниями для каждого узла, которым он управляет: Down, Init и Alive. [10] Всякий раз, когда присоединяется новый узел, CM меняет состояние узла с Down на Init и передает «сообщение о загрузке», которое узел получает и выполняет набор процедур запуска. Затем он отвечает подтверждающим сообщением, затем CM включает узел в качестве члена кластера и переводит состояние узла из Init в Alive. Каждый узел в состоянии «Активен» будет получать периодическое широковещательное сообщение «пульс» от подсистемы HS и ожидает обратного сообщения подтверждения в пределах диапазона таймаута . Если CM не получил ответного подтверждающего сообщения, узел считается недоступным , и для этого узла CM осуществляет переход состояния из «Активен» в «Неактивен». [11] Процедуры или сценарии, которые необходимо запустить, а также действия, которые необходимо предпринять между каждым переходом состояния, являются деталями реализации системы.

Сеть Heartbeat

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

Сеть Heartbeat — это частная сеть , которая используется только узлами кластера и недоступна извне кластера. Он используется узлами кластера для мониторинга состояния каждого узла и передачи друг другу сообщений, необходимых для поддержания работы кластера. Метод Heartbeat использует FIFO- характер сигналов, передаваемых по сети. Убедившись в том, что все сообщения получены, система обеспечивает правильное упорядочение событий. [12]

В этом протоколе связи каждый узел отправляет обратно сообщение в заданном интервале, скажем, delta , фактически подтверждая, что он активен и имеет пульс. Эти сообщения рассматриваются как контрольные сообщения, которые помогают определить, что в сети нет отложенных сообщений. Узел-получатель, называемый «синхронизацией», поддерживает упорядоченный список полученных сообщений. Как только от каждого узла получено сообщение с отметкой времени, более поздней, чем заданное отмеченное время, система определяет, что все сообщения были получены, поскольку свойство FIFO гарантирует, что сообщения упорядочены. [13]

В общем, сложно выбрать дельту, оптимальную для всех приложений. Если дельта слишком мала, это требует слишком больших накладных расходов, а если она велика, это приводит к снижению производительности, поскольку все ожидает следующего сигнала пульса. [14]

См. также

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

Примечания

[ редактировать ]
  1. ^ Перейти обратно: а б Хоу и Хуан 2003 , с. 1.
  2. ^ «Определение сердцебиения » . Энциклопедия pcmag.com . Проверено 7 октября 2020 г.
  3. ^ Перейти обратно: а б Робертсон 2000 , с. 1.
  4. ^ США 4710926 , Дональд В. Браун, Джеймс В. Лет, Джеймс Э. Вандендорп, «Восстановление неисправностей в распределенной системе обработки», опубликовано 1 декабря 1987 г.  
  5. ^ Кавазо Агилера, Маркос; Чен, Вэй; Туег, Сэм (1997). «Heartbeat: детектор сбоев без тайм-аутов для стабильной надежной связи» (PDF) . Распределенные алгоритмы . Берлин, Гейдельберг: Springer Berlin Heidelberg. стр. 126–140. дои : 10.1007/bfb0030680 . hdl : 1813/7286 . ISBN  978-3-540-63575-8 . ISSN   0302-9743 .
  6. ^ Перейти обратно: а б Робертсон 2000 , с. 2.
  7. ^ Робертсон 2000 , с. 1-2.
  8. ^ Робертсон 2000 , с. 2-3.
  9. ^ Робертсон 2000 , с. 5.
  10. ^ Ли, Ю и Ву 2009 , стр. 2.
  11. ^ Ли, Ю и Ву 2009 , стр. 2-3.
  12. ^ Nikoletseas 2011 , с. 304.
  13. ^ Nikoletseas 2011 , с. 304-305.
  14. ^ Nikoletseas 2011 , с. 306.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 6d462410c3ede333cd084dbdb64f26a3__1712212320
URL1:https://arc.ask3.ru/arc/aa/6d/a3/6d462410c3ede333cd084dbdb64f26a3.html
Заголовок, (Title) документа по адресу, URL1:
Heartbeat (computing) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)