PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Rootserver SingleIP-KVM Setup



BehrBor
18.01.12, 13:44
Hallo zusammen,
ich hoffe ich bin hier in der richtigen Sektion gelandet.
Ich hab folgendes vor und wollt von euch nur n schubs in die richtige Richtung haben. Ich bin mir nicht ganz sicher ob ein reverseproxy dafuer das richtige ist oder nicht.

Ich hab einen Server der mit einer IP Adresse an das Internet angebunden ist.
Auf diesem will mehrere Services Hosten.
Da ich aber kein Freund davon bin alles auf einem Server laufen zu lassen hab ich mir gedacht dass ich das ganze mittels KVM virtualisiere.

Auf dem eigentlichen Server soll eigentlich nur folgende Dienste laufen:
KVM
SSH
weiteres nur wenn benoetigt

Soweit ist das bis hier hin kein Problem. Man kann ja recht easy mittels DNAT die Ports weiter leiten.

Jetzt moechte ich aber zB die Webserver aufsplitten.
Fuer *.domain1.tld moechte ich einen eigenen haben
Fuer megawichtigessinnlosprojekt.domain2.tld soll ein zweiter Server aufgesetzt werden und der gesammte rest an HTTP Traffic soll auf eine 3. VM laufen.

Jetzt ist meine Frage wie ich sowas realisiere und ob man auch andere Services (zB git / ssh / ftp / etc..) namebased aufloesen kann.

Kurze info noch zum Netzwerksetup:
Rootserver hat eine physikalische netzwerkkarte welche mit der Welt verbunden ist.
Die VM's kommen auf einer virtuellen Bridge an. DHCP gibt es keinen. IP's werden manuell vergeben.

Thanks schon einmal im vorraus.

suck
21.01.12, 00:56
Moin,

Du hast also keine zusätzlichen IPs, das ist dann schwierig.

Bleiben wir mal bei dem Beispiel Webserver und gehen wir von Port 80 aus: Du möchtest, dass je nach eingegebenen URL ein anderer (virtueller) Rechner reagiert.

Du möchtest, dass nur ssh und kvm auf dem Server laufen und kein httpd!

Wie soll das gehen? Der zuständige DNS-Server nennt immer die selbe IP (die von Hauptserver) auf dem Du gar keinen Port 80 geöffnet haben möchtest.

Aber OK, Du kannst wie beschrieben Port 80 an wen weiterleiten...!!

Der virtuelle Server an den Du Port 80 weiterleitest muss dann aber an die anderen virtuellen Server verteilen!

Dieser (Web-)Server (der "Verteiler") könnte dann über "internal redirects" den gewollten Server (mit lokaler IP) heranziehen. Mit "nginx" geht das z.B. sehr, sehr charmant..

Kurz und knapp: Auf dem Hauptserver oder dem via Port-Redirect dazu auserkorenen muss was auf Port 80 lauschen und dann verteilen - anders geht es nicht!

Ich halte das für kompliziertes unnötiges Gefrickel und würde es anders machen. Ich würde auf die zusätzlichen Server verzichten. Sowas braucht man, wenn die Hardware von einem nicht reicht (ODER ABER) wenn man einfach spielen will und es nicht für den produktiven Einsatz gedacht ist. Nach außen offen auf der einen IP sind die Ports in jedem Fall!

Hoffe ich konnte nützlich sein...

Gruß, suck

EDIT: Für alles außer Webserver (z.B. git, svn, und Co.) wüsste ich keine Lösung ohne zusätzliche IPs.. Ich glaube es gibt keine Software dafür (oder man missbraucht einen Webserver). Alle Clients erwarten, das auf der aufgelösten IP was passendes lauscht)

EDIT2: Hab nochmal überlegt: Da typische git, svn, csv, ftp, whatever, ... -Clients gar keinen "Host-Namen" übergeben wird hier das Missbrauchen eine Webservers auch nicht helfen - das geht auf gar keinen Fall!!

EDIT3: IPs gibt es bei jeden guten Hoster (glücklicherweise oft mit Begründung warum man sie benötigt) zum günstigen Einmalpreis oder (eher bei den Billighostern zu sehen) für Centbeträge monatlich..

temal
21.01.12, 14:53
Ich sehe da keine Probleme. Auf den KVM-Host muesste noch, wie schon von Dir und suck gesagt, ein reverse-proxy (varnish, squid, apache mod_proxy ...) und dann kann der Spass beginnen. Eigentlich sollte das auch mit einer geschickten iptables-Regel gehen. Wie du magst.

Git kann man ueber SSH abwickeln, was also auch kein Problem darstellen sollte, sofern man den Port aendert und etwas NAT ins Spiel bringt. Oder, wie schon beim Ersten Beispiel, iptables ...

BehrBor
22.01.12, 13:03
Hiho,
sowas in der Art hab ich mir schon gedacht.

Ich hab auf dem Hostsystem pound installiert der als Proxy dient.
Das mit den weiteren IP Adressen ist ja in sofern kein Problem. Ich bin halt ein Fan von basteleien.

Will mit dem Zeug ja auch kein Geld verdienen.

Thx 4 reply