# ISPConfig 3 Multiserver Setup



## trelock (20. Feb. 2009)

Hallöschen,

kann mir jemand helfen? Bin grad dabei eine ISPCONFIG3 Multiserver installation einzurichten allerdings scheitert er immer egal wie man es macht. 

Gibt es dazu eine Richtige Anleitung?

danke


----------



## Till (20. Feb. 2009)

Das setup ist ganz einfach:

1) Den ersten Server ganz normal installieren.
2) Den 2. Server im Expert Mode installieren und dort angeben, dass Du dem 1. Server "beitreten" möchtest.

das ist schon alles. Wenn es bei Dir nicht klappt, dann ist Deine mysql DB nicht richtig konfiguriert. Du musst sicherstellen, dass sich der login für den mysql root User auf dem ersten Server auch von entfernten Rechnern, also in diesem Fall vom 2. Server aus geht.


----------



## trelock (20. Feb. 2009)

ja das war mir schon klar. bei der ersten Abfrage von Datenbank und username muss ich ja die lokale DB angeben, oder? 

wenn ich die installation von einem Server Rückgängig machen will, wie würde das funktionieren?


----------



## Till (20. Feb. 2009)

> ja das war mir schon klar. bei der ersten Abfrage von Datenbank und username muss ich ja die lokale DB angeben, oder?


ja. Stell aber sicher dass Du den root User nimmst und dass es eine Datenbank mit dem namen noch nicht gibt.



> wenn ich die installation von einem Server Rückgängig machen will, wie würde das funktionieren?


dafür nimmst Du das uninstall script, liegt im gleichen Verzeichnis wie das install script.


----------



## trelock (20. Feb. 2009)

Bei mir kommt immer die Fehlermeldung ERROR: Stopped: Database already contains some tables.
Wenn ich jetzt webs anlegen funktioniert das nicht. Die hängen immer in der Jobwarteschlange!


----------



## Till (20. Feb. 2009)

Wie oben beschrieben darf keine Datenbank mit dem namen existieren. Also Datenbank auf dem 2. Server löschen und ISPConfig neu installieren.


----------



## hovebeen (30. Jan. 2010)

*Kein MySQL Connect*



Zitat von Till:


> Wenn es bei Dir nicht klappt, dann ist Deine mysql DB nicht richtig konfiguriert. Du musst sicherstellen, dass sich der login für den mysql root User auf dem ersten Server auch von entfernten Rechnern, also in diesem Fall vom 2. Server aus geht.


Genau das ist grad mein Problem. Wo genau kann ich den Remote-Login für 1. Server festlegen, z.Bsp. auf bestimmten IP-Bereich usw.?


----------



## Till (30. Jan. 2010)

> Wo genau kann ich den Remote-Login für 1. Server festlegen, z.Bsp. auf  bestimmten IP-Bereich usw.?


Es geht hier um die Berechtigungen in mysql und die werden in mysql festgelegt. das kannst Du z.B. mit phpmyadmin machen. Der root User muss sich von allen beteiligten nodes aus in die mysql DB auf dem master einloggen können.


----------



## neurex (4. Feb. 2010)

Ist es denn möglich nicht den root User mit Namen "root" zu nehmen sondern irgendeinen anderen User mit root-Rechten?


----------



## Till (4. Feb. 2010)

Würde ich Dir von abraten, da nicht getestet. Da der user ja auch nur zum setup verwendet wird und nicht im laufenden Betrieb, ist das an sich auch nicht wichtig. Als Administrator solltest Du ja das root Passwort des eigenen servers kennen.


----------



## Quest (4. Feb. 2010)

Zum Multiserver Setup hätte ich auch eine Frage.
Ist jetzt noch nicht aktuell, den 2. Server nehm ich erst dazu wenn Debian 6 ne weile herausen ist und ISP3.0.4 mit VM Unterstützung fertig ist.

Wenn ich einen 2. Server einem 1. beitreten lasse ist der 1. doch quasi der Masterserver und der 2. 'nur' Slave.
Mal angenommen ich möchte den 1. aber abschalten, kann ich dann dem 2. die rolle des Master übertragen?


----------



## Till (5. Feb. 2010)

> Mal angenommen ich möchte den 1. aber abschalten, kann ich dann dem 2.  die rolle des Master übertragen?


Nein, da es sich nicht um einen slave in Form eines Mirrors handelt. Der 2. Server ist ein individueller Server, der aber durch ein zentrales Interface verwaltet wird. Der 2. Server kennt aus Sicherheitsgründen ausschließlich die Daten, die für seine lokale Konfiguration nötig sind, er kennt nicht die Daten des Masters oder irgen eines weiteren Servers des Clusters. Der vollständige Datensatzt für alle Server besteht nur in der DB des masters.


----------



## Quest (5. Feb. 2010)

Das bedeutet es gibt momentan keine Möglichkeit den Master aus dem Setup zu entfernen?


----------



## Till (5. Feb. 2010)

Du kannst ihn jederzeit entfernen, verlierst aber damit die Möglichkeit den Slave zu konfigurieren da Dein Setup ab dem Moment ja keinerlei Interface mehr hat, in dem Du dich einloggen könntest und auch keine neuen Daten mehr auf den slave repliziert werden können, da es ja keinen master mehr gibt. Der Slave läuft ansonsten so weiter wie bisher.


----------



## sirphunk (23. März 2010)

Hallo,

habe dazu auch eine Frage.

Wenn ein User auf Server 1 angelegt ist, kann ich seine Zugehörigkeit auf Server 2 ändern? Werden dann sämtliche Daten automatisch kopiert?


----------



## Till (23. März 2010)

Zitat von sirphunk:


> Wenn ein User auf Server 1 angelegt ist, kann ich seine Zugehörigkeit auf Server 2 ändern? Werden dann sämtliche Daten automatisch kopiert?


hängt davon ab, wes Du mit usern meinst. Kunden sind Server unabhängig, d.H. ein Kunde kann zur gleichen Zeit Webseiten und Mail Accounts auf verschiedenen Servern haben.

Du kannst aber eine Webseite nicht von einem Server zum anderen verschieben, das gleiche gilt für Email Accounts.


----------



## sirphunk (23. März 2010)

Das beantwortet meine Frage! Vielen Dank!


----------



## subprime (26. Apr. 2010)

Hallo ich habe leider auch ein Problem beim setup eines weiteren Servers.
Wenn ich im Expert mode nach den mysql daten des masters gefragt werde, dann habe ich das Problem, dass er sagt das er nicht zum master connecten kann... obwohl alles richtig angegeben ist. Woran könnte das liegen ???


----------



## Till (26. Apr. 2010)

Wenn er sagt dass er nicht connecten kann, dann stommen die mysql Rechte des root Users im master nicht. Du kannst es mit dem "mysql" command from slave aus testen:

mysql -h master.server.tld -u root -p

damit muss sich eine Verbindung vom master zum slave herstellen lassen.


----------



## subprime (26. Apr. 2010)

Also den ersten fehler konnte ich beheben, in dem ich in der config auf dem master 
# bind = 127.0.0.1
gemacht habe... 

jetzt hab ich folgenden fehler,wenn ich mich auf dem master vom slave aus anmelden möchte...

ERROR 1045 (28000): Access denied for user 'root'@'XXX.XXX.XXX.XXX' (using password: YES)

Was könnte hier der Fehler sein, weil das passwort war richtig?!


----------



## Till (26. Apr. 2010)

Hast Du denn die Berechtigungen für den user root auf dem master hinzugefügt, damit er sich vom hostnamen und der IP des Slaves aus einloggen kann? Du musst da 2 zusätzliche Einträge für den Slave in der mysql DB in der Tabelle User einfügen, die bis auf den Inhalt des Feldes "Host" mit dem root User Eintrag für localhost übereinstimen müssen. Beim einen nimmst Du als Host die IP des Slaves und beim anderen nimmst Du den Hostnamen des Slaves. Danach muss mysql relaoded werden oder ein "flush priveliges" ausgeführt werden.


----------



## subprime (27. Apr. 2010)

Hi, hab das jetzt gemacht und ich komme jetzt auch auf den master vom remote drauf. In der setup connectet er auch zum master und jetzt bekomme ich folgenden fehler:

Adding ISPConfig server record to database.

ERROR: Unable to create database user in master database: ispcsrv6 Error: Table 'dbispconfig.web_traffic' doesn't exist

Was hab ich nun wieder falsch gemacht... 
Kann mir da jemand einen Rat geben?


----------



## Till (27. Apr. 2010)

Entweder, ISPCOnfig ist nicht vollstäsndig auf dem master installiert bzw. hat nicht die gleiche Version wie auf dem slave oder aber die ispconfig datenbank des masters heißt nicht "dbispconfig".


----------



## subprime (27. Apr. 2010)

Also auf dem Master habe ich das ISPConfig Image von OVH und der andere hab ich nach dem HowTo "The Perfect server" eingerichtet, da der nicht bei OVH gehostet ist... ich hab auch schon nachgeschaut auf dem master ist die table wirklich nicht vorhanden. Kann ich irgendwie die Version von OVH checken ?

Danke dir Till!


----------



## Till (27. Apr. 2010)

Ich glaube die OVH Image ist eine sehr alte Version (3.0.0.9). Die Versionsnummern bei den ganz alten Versionen stehen in der Fußzeile.

Du musst den Master auf die aktuelle Version updaten, das machst Du am besten mit den manuellen Update Instruktionen von hier:

http://www.howtoforge.de/forum/showthread.php?t=2930

da es in der alten Version von ovh das automatische updatescript wohl noch nicht gibt. Sicherheitshalber vorher ein backup machen, wie das geht steht auch im obigen Thread.


----------



## F4RR3LL (28. Apr. 2010)

Bei OVH ist derzeit die 3.0.1.3 installiert.
OVH macht, wie man mir sagte, natürlich auch nicht bei jedem Update von ISPConfig eine neue Installversion.
Jedoch begrüßte OVH die Möglichkeit das seit ISPConfig 3.0.2 bind9, und nebenbei auch dovecot, möglich ist.
Man wartet nur noch ab ob größere Bugs auftreten. Danach wird die Installversion von OVH von 3.0.1.3 auf die bis dahin aktuelle angepasst.


Gruß Sven


----------



## GTB (9. März 2012)

Zitat von trelock:


> Bei mir kommt immer die Fehlermeldung ERROR: Stopped: Database already contains some tables.


das Problem habe ich jetzt auch.

Situation:

Masterserver mit installiertem vServer

nun möchte ich auf dem vServer ISP installieren ud als Slave in ISP einhängen.

Allerdings lauft auf dem Master schon eine Seite, also ist die DB dort schon voll mit Daten.

Funktioniert das spätere hinzufügen eines Servers nicht, oder muss ich da was anderes machen ?

Gruss


----------



## Till (9. März 2012)

Jede ISPConfig Instanz hat eine eigene lokale DB. Den Fehler den Du gemacht hasst ist dass Du die DB des Masters angegeben hast anstatt eine neue leere DB innerhalb der VM. Die frage nach der master DB kommt später im installer. Schau Dir mal die multiserver Tutorials an, da steht es alles im Detail drin.


----------



## GTB (9. März 2012)

ich habe schon die richtige DB angegeben.

Ist nicht das erste mal, dass ich eine Multiserver Installation mache.

Aber das mit der VM ist noch Neuland.



```
Select language (en,de) [en]: de

Installation mode (standard,expert) [standard]: expert

Full qualified hostname (FQDN) of the server, eg server1.domain.tld  [vm1.master.domain.tld]: 

MySQL server hostname [localhost]:          

MySQL root username [root]: 

MySQL root password []: vm_mysql_root_passwort 

MySQL database to create [dbispconfig]: 

MySQL charset [utf8]: 

The next two questions are about the internal ISPConfig database user and password.
It is recommended to accept the defaults which are 'ispconfig' as username and a random password.
If you use a different password, use only numbers and chars for the password.

ISPConfig mysql database username [ispconfig]: 

ISPConfig mysql database password [d1966f8sdfgjkb018730d98f9bc80aa7f]: 

Shall this server join an existing ISPConfig multiserver setup (y,n) [n]: y

MySQL master server hostname []: master.domain.tld

MySQL master server root username [root]: 

MySQL master server root password []: mysql_root_passwort_master
MySQL master server database name [dbispconfig]: 

ERROR: Stopped: Database already contains some tables.
```

hängt das damit zusammen, dass die VM auf dem Master läuft ?


----------



## Till (9. März 2012)

> Aber das mit der VM ist noch Neuland.


Es gibt da keinen Unterschied. Aus Sicht von ISPConfig (das in der VM läuft) ist eine VM ein getrennter Server.



> ERROR: Stopped: Database already contains some tables.


Der Fehler besgt dass es in der VM auf Localhost bereits eine DB "dbispconfig" gibt welche Tabellen enthält.Ist vielleicht Dein 2. Installationsversuch nachdem ein voriger abgebrochen wurde?

Lösche die Datenbank "dbispconfig" in der VM und den User "ispconfig" in der lokalen MySQL installation in der VM und dann starte den ispconfig installer in der VM nochmal.


----------



## GTB (9. März 2012)

Datenbank auf dem vServer gelöscht und extern per SSH an gemeldet.

Damit hat es dann geklappt.

Danke.


----------



## pilgrims (20. Aug. 2012)

Ich habe inzwischen drei kleine ISPConfig-VMs produktiv eingerichtet. Nun habe ich wieder-entdeckt, dass es diese Multiserver-Möglichkeit gibt.

Nun meine Frage, da die vorherigen Fragen auf einen älteren Zeitpunkt zurückgehen und möglicherweise aufgrund der aktuellen Versionen Unterschiede gibt:

a) Kann ich bestehende ISPConfig-Server zusammenschalten, ohne Neuinstallation?

b) Sollte aus irgendwelchen Gründen auch immer der Master eingestellt werden, kann ich die Master-Funktion auf einen anderen übertragen?

c) Sollte der Master aufgrund einer Störung offline sein, sind die Slave's im laufenden Betrieb betroffen oder nur das Webinterface nicht verfügbar?


----------



## Till (20. Aug. 2012)

a) nein.

b) Ein Slave kann nicht neuer master werden, da er nicht alle Informationen des masters hat. Du kannst aber durchaus das betriebssystem des masters auf einen neuen Server transferieren und diesen somit zum master machen.

c) Die slaves sind von einer Störung des masters nicht betroffen, andernfalls würde das sezup ja wenig Sinn ergeben.


----------



## pilgrims (20. Aug. 2012)

Danke für die schnelle Antwort.

Wenn a) und b) als Features eines Tages möglich wären, wäre das ein wahres Highlight!


----------



## Till (21. Aug. 2012)

a) Das kann nicht gehen, denn jede Webseite hat eine eigene fortlaufende ID und wenn Du bestehende Server zusammenschaltetst, dann kollidieren die da sie auf dem Master nicht mehr eindeutig zuzuordnen sind.

b) Wenn das möglich wäre hättest Du ein sehr unsicheres System und das ist nicht gewollt, denn dann würde ein simpler Hacke eines Slaves im Cluster ausreichen um an alle Daten aller anderen Slaves zu kommen. Die Implementierung macht daher auch keinen Sinn.


----------



## benjja (24. Sep. 2012)

*Multiserver iptables ???*

Hallo Till,

erst einmal vielen Dank für eure grandiose Arbeit an Ispconfig und den vielen HowTos!!! Wenn ich nicht mehr weiter weiß, ist howtoforge oft genug eine Hilfe. 

Doch nun hab ich ein ganz gewaltiges Brett vorm Kopf 

Ich habe ispconfig nach HowtoForge Linux Tutorials » Multiserver Setup mit dedizierten Web, E-Mail, DNS & MySQL Datenbank Servern unter Debian Squeeze mit ISPConfig 3 installiert. Leider steht uns nur eine IP zur Verfügung. Ich bin nun davon ausgegangen, dass ispconfig die Anfragen automatisch an den richtigen Webserver weiterleitet, wenn sie zentral am Master ankommen.  

Doch leider bleiben sie dort hängen.  Was mache ich falsch? wo liegt der Denkfehler?

Schon mal vielen Dank für deine/eure Hilfe!

Benjja


----------



## Till (26. Sep. 2012)

Du kannst normalerweise ein multiserver setip nicht sinnvoll mit einer einzigen öffentlichen IP betreiben, es ist dafür gedacht meherer dedizierte Server in einem Rechenzentrum zu betreiben von denen jeder eine eigene öffentliche IP hat. Für die Verteilung von Abfragen ist Dein router zuständig, Du müsstest ihn also so konfigurieren dass er je nach Port die Anfragen auf den richtigen Server weiterleitet, also 8080 auf den master, 80 und 443 auf den Webserver, smtp,pop3 und imap port auf den Mailserver.


----------



## benjja (26. Sep. 2012)

Ok, danke! Ich habs fast befürchtet. Dann werd ich mal ein paar zusätzliche ips organisieren  oder wir reduzieren unseren setup auf einen webserver, mal sehen.


----------

