Wie verwende ich Haproxy, um Backend1 NUR zu laden, wenn Backend2 tot ist?

Wie verwende ich Haproxy, um Backend1 NUR zu laden, wenn Backend2 tot ist?

Nach langem Suchen kann ich keine sehr einfache Möglichkeit finden, Backend-Server 2 zu verwenden, wennNUR WENN Backend 1 tot ist.

Hier ist meine aktuelle Konfiguration:

frontend www
    bind *:80
    reqadd X-Forwarded-Proto:\ http
    default_backend varnish-1

backend varnish-1
    mode http
    stats enable
    stats hide-version
    stats uri /haproxy?stats
    stats realm Haproxy\ Statistics
    stats auth skonsoft:SECRET_PASSWORD     # Credentials for HAProxy Statistic report page.
    balance roundrobin          # Load balancing will work in round-robin process.
    option httpchk
    option  httpclose
    option forwardfor
    cookie SRV_ID prefix
    server varnish-1 192.168.1.91:80 check cookie
    server varnish-2 192.168.1.71:80 check cookie

Wie Sie sehen, verwende ich derzeitStandard-Backend-Lack-1und hoffe, dass es funktioniert ... Aber es funktioniert nicht. Wenn ich den Varnish-2-Server einschalte, verwendet Haproxy die beiden Backend-Server ...

Mein Problem ist ganz einfach: Wie konfiguriere ich Haproxy für die Verwendung des Backend-2-Servers?WENN und NUR WENN Backend-1 ausgefallen ist.

Danke schön.

Antwort1

Sie müssen den Backup-Server genau wie folgt kennzeichnen:

server varnish-1 192.168.1.91:80 check cookie
server varnish-2 192.168.1.71:80 check cookie backup

Dieser kommt dann nur zum Einsatz, wenn keine „normalen“ Server zur Verfügung stehen.

Wenn Sie mehrere Server markiert haben, backupwird nur der erste verfügbare Server verwendet.

Dieses Szenario wird häufig als „Sorry-Server-Setup“ bezeichnet, da der Backup-Server zum Bereitstellen einer Platzhalterseite mit der Aufschrift „Wir sind leider nicht erreichbar“ verwendet werden könnte.

verwandte Informationen