Knoepfchen
Anmeldungsdatum: 25. November 2010
Beiträge: 56
|
Hallo ihr da draußen, ich weiß der Titel ist verrückt und verwirrend und das es nicht direkt was mit Ubuntu zu tun hat. Aber ich erkläre einfach mal meine Situation: Ich möchte basierend auf der Distribution Promxox (welche eine Debian Lenny Basis hat), eine Virtualisierungsumgebung aufbauen. Was Promxox tut ist eigentlich nur über ein simpeles Webinterface die Verwaltung von OpenVZ und KVM zu stellen. Ich will nun simpel OpenVZ Container erstellen und darin Debians oder Ubuntu Servers installieren. Das ganze möchte icha auf zwei "Servern" tun, um eine Redundanz zu schaffen. Sogesehen folgendes Prinzip: 1 VM auf beiden Servern: Apache + PHP
1 VM auf beiden Servern: MySQL
1 VM auf beiden Servern: Bind für DNS
1 VM auf beiden Servern: Postfix + Dovecot für eMails Alle ausgestattet mit entsprechenden Tools. Das ganze soll über ISPConfig verwaltet werden. Nun die Frage, wie kriege ich die Teile redundant. Für den Datenbestand dachte ich an ein Netzwerkdateisystem. Es gibt zwei Tutorial im ISPConfig Wiki die man im Grunde mischen könnte: http://www.howtoforge.com/installing-a-multiserver-setup-with-dedicated-web-email-dns-and-mysql-database-servers-on-debian-5.0-with-ispconfig-3
http://www.howtoforge.com/installing-a-web-email-and-mysql-database-cluster-on-debian-5.0-with-ispconfig-3 Das Multiserver Tutorial entsprechend für die Verteilung auf die VMs und das Cluster Tutorial im Grunde für die Datenredundanz. Die verwenden dort GlusterFS, das find ich komisch, schon die Projektwebsite gibt nicht viel her wie ich finde. Wie würdet ihr das lösen? Die Dienste verteilt auf VMs undd dann Redundant. Und als weitere Frage, sollte ich für die VMs eigene IPs organisieren (ich selber denke ja), oder sollte ich as einfach alles mit IPTables durch routen. Freue mich über alle Tips und Ideen. Mit freundlichen Grüßen Knoepfchen
|
alamar
Anmeldungsdatum: 10. Juli 2010
Beiträge: 12
|
Willst du Redundanz(Im Sinne von Ausfallsicherheit) oder Load Balancing?
Für Redundanz reichts einen DRBD Link zwischen den 2 Servern zu schaffen und die OpenVZ Konfigurationen + Daten (containerdaten, templates etc.) über DRBD im Single Primary Modus zu replizieren. Dazu brauchts dann noch ein pacemaker+corosync Setup, welches den Cluster (Also die Redundanz realisiert). Dazu musst du einerseits das Cluster Membership + ClusterLink konfigurieren und andererseits Ressourcen anlegen. 1. DRBD als resource 2. das OpenVZ dateisystem als Resource (das dateisystem das über das DRBD device gespiegelt wird) 3. die Hauptip über die die OpenVZ IP-Netze geroutet werden. 4. eine resource constraint die dafür sorgt dass 2. und 3. erst gestartet werden wenn 1. läuft. Wenn du Loadbalancing willst gestaltet sich das etwas komplizierter weil du dann DRBD im Dualprimary Modus laufen lassen musst, was dann wiederum ein Dateisystem wie OCF oder GFS benötigt. Ich weiß auch nicht inwiefern das dann mit OpenVZ Containern funktioniert, da OpenVZ ext3 zwingend benötigt.(sofern man vzquota verwenden will)
(Ich kenne GFS/OCF zuwenig um zu wissen ob das lediglich eine logische Schicht einführt und darunter dann ext3 liegen kann oder ob das eben nicht geht)
PS. habe gerade mal nachgeschaut und zumindest bei 2.6.18 kann man wohl OpenVZ auch mit vzquota auf GFS verwenden
|
mEon
Anmeldungsdatum: 2. Oktober 2006
Beiträge: 97
Wohnort: [D]
|
|
Knoepfchen
(Themenstarter)
Anmeldungsdatum: 25. November 2010
Beiträge: 56
|
Hallo mEon, danke für deine Antwort. Über eine Cloud habe ich auch schon nach gedacht. Festgestellt habe ich mittlerweile im generellen das sich das ganze auf dedizierten Servern bei Hoster generell eher schwierig darstellt. Ich werde mir die Tage mal ein Buch zum Thema bestellen, welches es bei Galileo Computing gibt. Das wird mir vllt. etwas umfassender weiter helfen. Für weitere Vorschläge bin ich nach wie vor offen ☺. mfg Knoepfchen
|
mEon
Anmeldungsdatum: 2. Oktober 2006
Beiträge: 97
Wohnort: [D]
|
Servus Knoepfchen, das ist eine gute Idee, ich habe gerade beim Private clouding auch noch hart zu beissen.
Schade, dass Proxmox nicht clouding-fähig ist, ist die bisher sicherste mir bekannte Virtualisierungsmaschine.
Hast Du schon was erreichen können? Gruß
mEon
|
Knoepfchen
(Themenstarter)
Anmeldungsdatum: 25. November 2010
Beiträge: 56
|
Hallo mEon, im Prinzip ist Proxmox ja erstmal ein Debian, das KVM und OpenVZ so schon integriert hat und eine Weboberfläche zur Verfügung stellt. Es gibt schon Mittel und Wege die VMs z.B. auf mehreren Rechnern ab zu legen, man siehe Konzepte wie GlusterFS, was auch gut in Verbindung mit ISPConfig funktioniert. Die Frage die man sich stellen muss ist halt wie will ich meine VMs Hosten. Man geht erstmal von einem HA Cluster aus in dem man wohl eher Aktiv/Passiv Betrieb nutzen wird. Soll heißen: VM1 läuft auf Host1, fällt Host1 aus läuft VM1 auf Host2 an und übernimmt die Arbeit. Eine ich würde es "Erweiterung" eines HA Clusters nennen, ich ist im Prinzip ein LB Cluster also ein Load Balancer. Das wäre dann eher Aktiv/Aktiv Betrieb. Also läuft VM1 auf Host1 und VM1 auf Host2 aktiv und kann z.B. über eine IP (die über ein spezielles NAT verwaltet wird) Requests verteilen. Somit kann man die Last am Apache o.ä. senken. Das sind die beiden Varianten die Prinzipiell erstmal in Frage kommen für das geplante Vorhaben. Was Proxmox kann ist von Haus aus ist mehrere Nodes im Interface zu verwalten. Die VMs liegen glaube im /var/lib/vz was man z.B. über GlusterFS hosten könnte o.ä. da gibts denke viele Wege und Ideen die man testen kann. Das ist so bisher mein Stand, mehr wird sich denke im aktiven Testen zeigen. Mit freundlichen Grüßen
|
mEon
Anmeldungsdatum: 2. Oktober 2006
Beiträge: 97
Wohnort: [D]
|
Das Heißt wenn ich Dich richtig verstanden habe, dass Du etwas redundantes MIT gleichzeitigem loadbalancing suchst?!
Da würde ich mich gerne Anschließen, bei mir kommt noch dazu dass das ganze über mehrere IPs verteilt werden muss daher der Cloudgedanke.
|
Knoepfchen
(Themenstarter)
Anmeldungsdatum: 25. November 2010
Beiträge: 56
|
Huhu, ja im Prinzip stimmt das so. Die Technicken dafür gibt es, man muss halt Sachen wie GlusterFS, OpenAIS/Corosync, Heartbeat etc. in eine gute Kombination bringen. Clouds sind im kleinen Gebrauch ein gewisses Problem wie ich festgestellt habe dabei sind sie unrentable. Die Frage mit den IPs, das kommt ganz auf die Situation an. IP Blöcke kann man ja von RIPE bekommen und sie auf einer VM konfigurieren und Serverhoster bieten ja mittlerweile in dem Bereich sehr viel an. Load Balancing rentiert sich eigentlich auch nur bei vielen Requests um Last weg zu nehmen bzw. sie zu verteilen. Der einfachste Ansatz wäre wohl folgender: Man lässt die VMs im Prinzip erstmal weg und installiert die ganzen Services wie Mail, DNS und Web auf zwei Servern. Die Daten für Mail, DB und Web legt man in GlusterFS Volumes. Damit hat man im Prinzip schonmal nen Mirror. Load Balancing kann man z.B. für Mail dann über die Domain realisieren und zwei Mail Exchanger mit Priorität 10 ein zu stellen. Ansonsten kann man bei vielen Hostern einfach vor die beiden Server eine Load Balancing IP hängen. Man könnte den GlusterFS Ansatz sicher auch mit VMs die dort liegen ermöglichen. Leider ist das in dem Sinne nicht so tauglich als das man VMs damit sehr gut verwalten könnte, dazu gehören noch einige Tools mehr. Im Endeffekt muss man sich schon überlegen welche Hypervisor man nimmt ich glaube es kommen wirklich nur XeN und KVM in Frage mit OpenVZ ja erscheint mir das eher schwierig. Wie genau ich einen VM basierten Ansatz nun letztendlich baue, weiße ich noch nicht. Dazu muss ich mich mit dem ganzen Resourcen Managment und dem Einschalten von VMs im Absturzfall (also Disaster Recovery) befassen. Noch zu GlusterFS, das ist im Grunde eine moderne Variante von DRBD. Also es löst das selbe Problem nur an manchen Stellen schöner. Das ist so das wsa ich bisher aus den Dokumentationen und Informationen der beiden Projekte herraus lesen konnte und auch etwas im Betrieb gemerkt habe. Mit freundlichen Grüßen Knoepfchen
|
mEon
Anmeldungsdatum: 2. Oktober 2006
Beiträge: 97
Wohnort: [D]
|
Ich denke aud sowas in der Art wird es bei mir auch rauslaufen,
ich bin nur noch skeptisch da ich teilweise auch dynamische IPs mit in der Config habe,
und nicht jede VM auf jedem Server brauche [z.B. mein privates NAS will ich nur auf Servern mit entsprechender Kapa spiegeln,
die VM die zuhause den Proxy macht jedoch nicht ☺, einen LDAP wiederum schon etc.]. Ich häng mich mal dahinter, herz schlägt momentan immernoch für Proxmox.
Ggf. wird die private Virtualisierung @home auch von ipFire (Proxy OS mit qemu/kvm) gemacht, und dann gespiegelt...?!
Wie würdest Du das Loadbalancing machen wenn auch dynIPs dabei sind? (die jedoch über ne Domain alle erreichbar sind) Ich versuche am Ball zu bleiben und freue mich über jeden Input ☺
|
Knoepfchen
(Themenstarter)
Anmeldungsdatum: 25. November 2010
Beiträge: 56
|
Huhu, also IPFire ist schonmal eine gute Idee als Router, das habe ich momentan auch im Blick für zwei zentrale Router die zwei Netzwerke verbinden. An dem Gedanken einen zentralen OpenLDAP Server zu etablieren spiele ich momentan auch rum. Kann man halt Postfix statt SQL drüber laufen lassen, Apache unter Umständen usw. Zu den dynamischen IPs und Load Balancing: Ich weiß nicht genau, ob IPTables oder PF dazu in der Lage wären, aber mein erster Gedanke wäre ein VPN mit LZO Komprimierung um den Durchsatz zu verbessern. So das man im Prinzip sagt, hier kommen Pakete auf den Ports des MTA an die gehen nun ins VPN und Verteile die nun bitte gleichmäßig auf die VPN Client IPs 192.168.20.2 und 192.168.20.3 so nur als Beispiel. Wie gesagt was da genau geht weiß ich nicht aber ähnlich würde das wenn es geht ja auch für einen Webserver, DNS-Server o.ä. funktionieren. Bei statischen IPs stellt das bei Server Hostern ja keine Probleme da, da man die Load Balancing IPs dann einfach denen zuweisen kann. Im Prinzip ist das ja nichts anderes als spezielles NAT. Mit freundlichen Grüßen Knoepfchen
|
mEon
Anmeldungsdatum: 2. Oktober 2006
Beiträge: 97
Wohnort: [D]
|
Stimmt, die Idee mit den VPN's ist eigentlich super, da war ich jetzt noch nicht drauf gekommen.
Ohne VPN müsste ich Loadbalancing "namebased" machen, da ich genügend tld-subdomains für die einzelnen Rechner habe.
|
Knoepfchen
(Themenstarter)
Anmeldungsdatum: 25. November 2010
Beiträge: 56
|
Über die Domains ist das halt etwas ungünstig weil du kannst nen Webserver in dem Sinne nicht Load Balancen weil man nur einen A Record in dem Sinne haben kann. Was halt mit der Domain geht das man MTAs in gewisser Weise Load Balanct da man die einfach mit selber Priorität eintragen muss, dann muss laut RFC einer zufällig gewählt werden. Die brauchen dann im Prinzip z.B. über GlusterFS auf zwei Rechnern nur den Zugriff auf die selben Daten. Sonst geht das halt nur über IPs die man vorschaltet was halt mit dynamischen nicht geht daher die Idee mit dem VPN das man wenigstens nen vllt. bei nem dedizierten Server komplett statischen oder anderweitig halbwegs statischen Anlaufpunkt hat. Was man bedenken muss ist das man im Grunde fast wieder nen flaschen Hals produzieren kann wenn die Leitung des VPN unpassend ist oder der Rechner zu viel Last trägt. Also kann sich der Nutzen relativ schnell relativieren. Es war halt eine spontane Idee, wie man sonst gut Load Balancing auf Dial Up Leitungen machen könnte wüsste ich spontan nicht, da müsste ich auch erstmal suchen. Mit freundlichen Grüßen Knoepfchen
|
Knoepfchen
(Themenstarter)
Anmeldungsdatum: 25. November 2010
Beiträge: 56
|
Ich bin grad beim Suchen für Lösungen nochmal auf die Proxmox Seite gewuselt und habe mir die Roadmap mal wirklich angeschaut. Das wird mit der Version 2 viele Features in die Richtung fürs Clustering geben. Eigenes Dateisystem, Implementierung von Corosync etc.. Ich werde allerdings weiter dran bleiben und auf Dauer denke ich mal ein paar Lösungen im Eigenbau ausarbeiten. Mit freundlichen Grüßen Knoepfchen
|
mEon
Anmeldungsdatum: 2. Oktober 2006
Beiträge: 97
Wohnort: [D]
|
Vielen Dank für den Hinweis! Der ist gold wert! Ich werde warten bis Proxmox 2 released ist und hoffe dass der Termin im 2. Quartal 2011 eingehalten werden kann
Link:Proxmox-Roadmap Habe auch über eine Custom-Lösung nachgedacht, schaffe es aber gerade zeitlich nicht wirklich mich dahinter zu klemmen ☹
Wie kommst Du mit deiner Selbstbaulösung voran? Gruß
mEon
|
mEon
Anmeldungsdatum: 2. Oktober 2006
Beiträge: 97
Wohnort: [D]
|
Gerade gefunden und eventuell auch für Dich interessant:
KVM & OpenVZ Virtualization And Cloud Computing With Proxmox VE Werde das Tutorial diese Tage mal studieren, kann also momentan nicht viel dazu sagen. Edit: gerade überflogen, das tut beschreibt eher Proxmox und seine momentane Clusterung (v1.7) als echtes Clouding. Gruß
mEon
|