2016-03-25 12 views
0

Ich habe einen 6 Webserver eine Load Balancer-Konfiguration. Ich möchte, dass der Webserver auf dem Loadbalancer deaktiviert wird, während der Inhalt der Website aktualisiert wird. Ich will das rollend über alle Günstlinge machen. Bsp: Minion1 wird beibehalten, Minion1 wird auf dem LB deaktiviert und nach der Wartung wird Minion1 wieder aktiviert, während sich der Salzstapel auf Minion2 bewegt und der Prozess wiederholt wird. Ich möchte etwas wie dieses Echo verwenden "disable server backend/servername | socat stdio/etc/haproxy/haproxysock" wo servername wäre der minion, der gepflegt wird, aber dieser befehl muss jedesmal auf der haproxy LB ausgeführt werden. Einmal zuvor erfolgt die Wartung, um den Webserver zu deaktivieren und nach der Wartung wieder den Webserver zu aktivieren. Jede Hilfe würde sehr geschätzt werden.Wie targe ich einen Load Balancer mit einem Terminalbefehl, der auf einem anderen Diener über eine .sls-Datei im Salzstapel ausgeführt wird?

+0

Ich habe es nicht benutzt, aber das [reactor system] (https://docs.saltstack.com/de/latest/topics/reactor/) sollte das enthalten, wonach Sie fragen. – dahrens

Antwort

0

Sie könnten Ihre Lösung mit dem Reaktor-System wie Dahrens erwähnt bauen. https://docs.saltstack.com/en/latest/topics/tutorials/states_pt5.html#orchestrate-runner

Dies würde ermöglichen es Ihnen, eine Roll Update orchestrieren, wie Sie sehr schön wollen:

Sie könnten die orchestrate Läufer hier buchen, verwenden.

Wenn Sie dies von einem normalen Salz Zustand tun wollen könnten Sie die batch Option auf dem cli verwenden einen Server zu einem Zeitpunkt, zu aktualisieren und die prereq verwenden die aktuellen Server aus dem Load-Balancer während des Update zu entfernen.