Это боль. Балансиры чаще всего не умеют понимать, что через них проходит, адекватно помечать и с нормальным алгоритмом повторять запросы.
На моём опыте единственный нормальный вариант: делать балансировку внутри клиента. Для внешних запросов: ipvs, и страдать при переключениях. А софт не важен.
Кстати, было бы круто, если кто-нибудь расскажет о грамотной балансировке. Решения там простые, но мало кто их реально применяет.
А не надо балансеру лезть куда ему не надо. Все что от него требуется - аккуратно раскидать трафик между точками терминации