Seitdem verwende ich die Vhost-Funktion von Apache2, um mehrere Domänen an eine öffentliche und statische IP zu binden.
Jetzt richte ich einen XEN-Host mit 4 IPs und mehreren VMs ein, zwei davon sind reine Webserver. Ist es möglich, dass sich diese beiden VMs eine öffentliche IP teilen? Jede von ihnen hätte einen Satz virtueller Hosts auf derselben öffentlichen IP.
Bearbeiten: Okay, was ist mit einer Host-basierten Umleitung?
Antwort1
Wenn Sie nur http bereitstellen möchten, möchten Sie höchstwahrscheinlich einen Software-Load Balancer / Reverse-Proxy installieren wiePfundDie Konfiguration auf dem Xen-Host würde (wiederum - höchstwahrscheinlich) so aussehen
ListenHTTP
Address xx.xx.xx.xx
Port 80
Service
BackEnd
Address ip.of.webserver.1
Port 80
End
BackEnd
Address ip.of.webserver.2
Port 80
End
End
End
Sie müssen auf dem Xen-Host auch Weiterleitungs- und Iptables-Regeln einrichten; möglicherweise ist dieser bereits dafür eingerichtet.
Antwort2
Ich glaube nicht, dass Sie die an beide Server gesendeten Anfragen aufteilen können, wenn sie dieselbe IP-Adresse haben.
Warum müssen Sie sie auf dieselbe IP einstellen?
schönes Diagramm aber
Antwort3
Wie Radius und die anderen sagen, glaube ich nicht, dass es möglich ist, dies zu erreichen, indem man den Servern einfach dieselbe IP gibt (sie werden sich über doppelte Adressen beschweren und einer von ihnen wird am Ende ohne IP dastehen) oder dieselbe sekundäre IP (wie oben, aber schwieriger zu beheben).
Eine bessere Option wäre entweder Round-Robin-DNS, bei dem Sie die IPs aller Webserver zum selben „A“-Eintrag hinzufügen können und eine Abfrage für diesen „A“-Eintrag jedes Mal entweder eine andere Adresse oder eine Liste von Adressen zurückgibt, aus denen Ihre Clients auswählen können. Eine andere Möglichkeit wäre, eine Art Lastenausgleichs-App vor den beiden Webservern hinzuzufügen, um den Datenverkehr gleichmäßig an beide zu leiten (oder nur an einen, wobei der andere als Failover fungiert). Sie können dies mit einer anderen Instanz von Apache tun, auf der mod_proxy installiert ist.
Welche davon Sie verwenden möchten, hängt von Ihrem Verwendungszweck ab – sprechen wir über eine Art Hochverfügbarkeits-/Clustering-Lösung?
Antwort4
Gemäß Ihrer Bearbeitung können Sie einen Reverse-Proxy verwenden. Apache kann das. Pound ist eine weitere bereits erwähnte Lösung.