Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

MySQL-Cluster - Zwei SQL-Server, eine Anwendung - Wie sagt man der Anwendung, welcher Server gerade der Master ist?

Frage Netzwerke Cluster

Mitglied: Yukari

Yukari (Level 1) - Jetzt verbinden

02.12.2009 um 12:29 Uhr, 5046 Aufrufe, 3 Kommentare

Ich habe vor kurzem mit HIlfe von MySQL-Cluster einen HA-Cluster für meine Datenbank umsetzen können. Es funktioniert auch alles gut soweit, aber jetzt hapert es bei der Verbindung mit den Anwendungs-Servern.

Der Cluster ist folgendermaßen aufgebaut:

sql- & data-server 1 --> mysqld, ndbd --> 192.168.0.1
sql- & data-server 2 --> mysqld, ndbd --> 192.168.0.2
management-server --> ndb_mgmd, ndb_mgm --> 192.168.0.3


Das Problem ist, dass ich der Anwendung eine IP geben muss unter welcher sie die Datenbank finden kann. Verwende ich die IP des ersten SQL-Servers, geht auch alles gut solange dieser der Master ist. Im Falle eines Failover hat das aber logischerweise einen großen Haken. Denn dann ist plötzlich der zweite Server der Master. Die Anwendung versucht natürlich weiterhin auf den ersten Server zuzugreifen, was ja nicht funktionieren kann. Trage ich dann die IP des zweiten Servers manuell in der Anwendung ein, funktioniert zwar alles wieder einwandfrei, aber das ist logischerweise keine wirkliche Lösung.

Meine erste Idee war, einfach einen DNS zu verwenden und beiden Servern den selben Alias zu geben und nur diesen in der Anwendung einzutragen. Dabei taucht aber ein ähnliches Problem auf. Woher weiß der DNS welcher Server gerade der Master ist?

Ich hoffe jemand von euch kann mir bei diesem Problem weiterhelfen oder hat vielleicht eine andere Idee, wie man es lösen könnte.
Ich wäre auf jeden Fall sehr dankbar dafür.

Grüße,
Yukari
Mitglied: maretz
02.12.2009 um 15:51 Uhr
Moin,

du hast da leider nur die halbe Arbeit getan.

Deine Anwendung SOLL gar nicht auf einen der Nodes zugreiffen. Wenn du das machst dann wird das natürlich nur dann gehen wenn dieser auch vorhanden ist. Und wenn der dann ordentlich unter Feuer steht langweilt sich sein Kollege immernoch.

Schalte davor mal nen Load-Balancer -> und deine Anwendung geht immer auf die IP vom LB. Das nutze ich auch in einer Testumgebung - und das läuft super. In dem Moment intressiert dich auch nicht wer hier Master ist und wer nicht - der Mgmt-Srv. sollte automatisch dafür sorgen das die Datenbestände immer gleich sind.

Und wenn du es dann noch ganz schön machen möchtest dann nimmst du auf dem LB noch nen Heartbeat drauf und machst DA den Eintrag das beim Ausfall des LB-1 der LB-n zum Master wird (inkl. übernahme der IP usw.).

Und: Nicht vergessen: Was passiert wenn dein Mgmt-Server ausfällt?
Bitte warten ..
Mitglied: Yukari
02.12.2009 um 16:17 Uhr
Zitat von maretz:

Deine Anwendung SOLL gar nicht auf einen der Nodes zugreiffen. Wenn
du das machst dann wird das natürlich nur dann gehen wenn dieser
auch vorhanden ist.

Genau das ist ja mein Problem.

Schalte davor mal nen Load-Balancer -> und deine Anwendung geht
immer auf die IP vom LB. Das nutze ich auch in einer Testumgebung -
und das läuft super.

Hm, das wäre natürlich auch eine Option. Die Frage ist nur, wie ich das umsetzen kann. Die Anwendungs-Server habe ich bereits mit Hilfe des Windows NLB-Managers verbunden. Die SQL-Server laufen aber unter Linux, da der MySQL-Cluster nicht für Windows empfohlen wird.
Bei Linux habe ich aber wiederum gar keine Ahnung, wie ich da ein Loadbalancing erreichen kann.
Klar, es gibt Hardware-Lösungen, aber im Moment muss ich mich erstmal auf Software-Lösungen beschränken. Hast du da vielleicht einen Tipp für mich?

>In dem Moment intressiert dich auch nicht
wer hier Master ist und wer nicht - der Mgmt-Srv. sollte automatisch
dafür sorgen das die Datenbestände immer gleich sind.

Wenn ich das richtig beobachtet habe, kümmert sich der Management-Server garnicht darum. Den brauche ich eigentlich nur am Anfang um die Verbindung zwischen den beiden SQL-Servern herzustellen. Wenn die einmal laufen, kann ich den Management-Server eigentlich auch aus- oder einschalten wie ich lustig bin. Die Datenbanken sind dann immernoch synchron. Ein Ausfall ist also nicht sofort gravierend, sondern nur dann falls gleichzeitig einer der SQL-Server ausfällt. Der kann die Verbindung zum Cluster dann soweit ich weiß nur wieder herstellen, wenn der Management-Server da ist.

Und wenn du es dann noch ganz schön machen möchtest dann
nimmst du auf dem LB noch nen Heartbeat drauf und machst DA den
Eintrag das beim Ausfall des LB-1 der LB-n zum Master wird (inkl.
übernahme der IP usw.).

Es gibt beim Loadbalancing einen Master? Ich kenne mich damit noch nicht so gut aus, da ich bisher wie gesagt nur eine Lösung mit Windows probiert hatte für die Anwendungsserver. Ich habe dabei noch nicht alle Situationen getestet, aber wenn ich das richtig sehe, sind die Hosts da relativ gleichwertig.
Wenn ich sie konfiguriert habe, ist es bisher egal gewesen ob nur einer da ist anfangs und den anderen erst später hochfahre. Sobald beide da sind und eine Netzwerkverbindung haben scheinen die die Verbindung automatisch herzustellen. Eine Art Master konnte ich dabei nicht erkennen.

Und: Nicht vergessen: Was passiert wenn dein Mgmt-Server
ausfällt?

Siehe weiter oben.
Bitte warten ..
Mitglied: Yukari
07.12.2009 um 15:41 Uhr
Ist zwar nicht gelöst, aber hat sich mittlerweile erledigt ^^ da ich auf Windows umsteigen muss (Anweisung von oben)
Bitte warten ..
Ähnliche Inhalte
Webentwicklung
Mysql cluster
Frage von woidl85Webentwicklung

hallo zusammen, ich bin auf der suche nach einer mysql cluster lösung aus 2 nodes welche bei möglichkeit mit ...

Windows Server
Sql server 2012 cluster protokoll deaktivieren
Frage von ArtjeroWindows Server

Hallo, wir haben zwei SQL 2012 im Cluster. Nun die Cluster Protokollierung kurzzeitig deaktiviert werden, weil ein Dienstleister ein ...

Cluster
MySQL Cluster Struktur
gelöst Frage von m.reegerCluster3 Kommentare

Hallo liebe Admins, ich habe schon einiges bei Google erlesen und viel gefundenaber relativ wenig verstanden ^^ Kurz zum ...

Linux
Master-Slave LDAP Server
Frage von schneerunzelLinux

Hallo, ich bin gerade dabei eine Slave LDAP Server aufzusetzen (Master habe ich schon). Hat jemand von euch eine ...

Neue Wissensbeiträge
Microsoft

Update KB4073578 für AMD CPU (Spectre und Meltdown Lücke)

Information von sabines vor 5 StundenMicrosoft

Wegen Problemen (BOSD, nicht startende PCs) wurde das Update KB4056897 und KB4056894 für AMD CPUs zurückgezogen. Dieses Update KB4073578 ...

Mac OS X

MacOS wo ist die Tilde ?

Tipp von Alchimedes vor 18 StundenMac OS X3 Kommentare

Hallo, ich hab eine MacOS qwertz Keyboard auf US Layout umgestellt da die Sonderzeichen besser erreichbar sind. Leider fehlt ...

Datenschutz

Weitere Informationen zum Sicherheitsproblem BeA

Information von Penny.Cilin vor 1 TagDatenschutz

Im folgenden ein weiterer Bericht über die Sicherheitsprobleme von Bea. Fataler Konstruktionsfehler im besonderen elektronischen Anwaltspostfach Gruss Penny

Windows 10

Systemdienste behalten nach Win10 inplace-Upgrade nicht die ggf. modifizierte Startart bei

Tipp von DerWoWusste vor 1 TagWindows 103 Kommentare

Stellt Euch vor, Ihr habt ein Win10 System und modifiziert dort die Startart von Systemdiensten. Zum Beispiel wollt Ihr ...

Heiß diskutierte Inhalte
Batch & Shell
Anmeldevorgang für Informatikraum (Schule) unter Windows
gelöst Frage von IngenieursBatch & Shell25 Kommentare

Hey zusammen, ich werde in naher Zukunft den Informatik Raum meiner jetzigen Schule von dem aktuellen Betreiber übernehmen (Vertrag ...

Windows 10
Netbook erkennt Soundkarte nicht - keinerlei Info zum Hersteller und Modell vom Netbook und Hardware bekannt
Frage von fyrb38Windows 1019 Kommentare

Guten Tag, meine Schwester reist in einigen Wochen für ein paar Monate ins Ausland und hat sich dafür ein ...

Batch & Shell
AD-Abfrage in Batchdatei und Ergebnis als Variable verarbeiten
gelöst Frage von Winfried-HHBatch & Shell19 Kommentare

Hallo in die Runde! Ich habe eine Ergänzungsfrage zu einem alten Thread von mir. Ausgangslage ist die Batchdatei, die ...

Netzwerkgrundlagen
Welches Modem für VDSL 50000 der T-Com
Frage von Windows10GegnerNetzwerkgrundlagen18 Kommentare

Hallo, ein Kollege von mir will sich VDSL50000 von der T-Com holen, um daran einen Server zu betreiben. Ich ...