У меня есть кластер hadoop, на котором я должен выполнить некоторое отказоустойчивое тестирование.Во время тестирования, когда узел в кластере Hadoop (HDFS) отключается (для имитации сбоя) и его IP-адрес больше не существует в сети - HDFS на остальных узлах зависает бесконечно с NoRouteToHostExceptions - есть ли способ это исправить?
С другой стороны, если я убиваю процессы hadoop на узле, но оставляю узел работающим (IP-адрес остается действительным в сети), отказоустойчивость работает нормально, зависание отсутствует, и все работает нормально.
Я уже видел объяснение этого исключения здесь: https://wiki.apache.org/hadoop/NoRouteToHost
Если не удается устранить эту проблему - я думал, что кластеры Hadoop должны быть отказоустойчивыми к сбоям узла?
Спасибо
Обновление на основе первого ответа: Да, службы полностью реплицированы на все узлы для обеспечения высокой доступности - это преднамеренная частьдизайн.
(1) Если я на самом деле просто убиваю сервисы Hadoop на узле, но оставляю узел работающим (его IP-адрес остается действительным в сети) - проблема не возникает, а остальные узлы продолжают работать как обычнобез потери данных (так как данные были полностью реплицированы по всем узлам).
(2) Проблема возникает, когда я выключаю узел и его IPбольше не доступен в сети, остальные узлы больше не могут устанавливать TCP-соединение с ним (так как IP больше не существует), и поэтому они просто зависают на неопределенное время с NoRouteToHostExceptions - это проблема, которую я пытаюсь исправить
Опять ирония в том, что если IP-адрес остается действительным, но сервисы Hadoop не работают, проблема с зависанием не возникает - (1) выше - оставшиеся узлы могут по-прежнему устанавливать TCP-соединения с узлом «симуляция сбоя», но Hadoopсервисы не работают.
Это не проблема сети - это контролируемый тест для симуляции отказов узлов в кластере.Когда узел выключен для имитации сбоя - очевидно, что IP-адрес больше не будет действительным в сети.Проблема, с которой мы сталкиваемся, заключается в том, что кластер Hadoop не может справиться с такой ситуацией, когда IP-адрес узла больше не существует.То, что мы ожидали (или, может быть, надеемся, это лучшее слово), когда оставшиеся узлы в кластере Hadoop встречают исключение NoRouteToHostException, они предполагают, что этот узел вышел из строя и просто продолжит работу как обычно без него.Если это невозможно, то ничего страшного, мне просто нужно было точно узнать, что я чего-то не упустил.Еще раз спасибо