Ich verwende Nginx und NginxHttpUpstreamModule für den Lastenausgleich. Meine Konfiguration ist sehr einfach:
upstream lb {
server 127.0.0.1:8081;
server 127.0.0.1:8082;
}
server {
listen 89;
server_name localhost;
location / {
proxy_pass http://lb;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
Wenn einer der beiden Backend-Server in dieser Konfiguration nicht verfügbar ist, leitet nginx die Anforderung weiterhin an diesen weiter und es tritt in der Hälfte der Zeit eine Zeitüberschreitung auf :(
Gibt es eine Lösung, mit der nginx die Anforderung automatisch an einen anderen Server weiterleitet, wenn ein ausgefallener Server erkannt wird?
Vielen Dank.