Интересно, какие из следующих балансировщиков нагрузки способны обнаруживать недоступную внутреннюю машину и перенаправлять соединение на другой сервер, не отбрасывая запрос:
Я ожидал, что все они это сделают ...
nginx будет попытаться связаться с каждым из вышестоящих серверов по очереди перед отправкой клиенту ошибки.
Если при попытке работы с сервером произошла ошибка, то запрос будет передан на следующий сервер и далее до тех пор, пока не будут протестированы все рабочие сервера. Если удачный ответ получить не удалось со всех серверов, то клиенту будет возвращен результат работы с последним сервером.
HaAProxy можно настроить для проверки внутренних серверов с помощью опции сервера. чек и другие связанные параметры.