I-doit Web-Cluster fest planen
-
hi,
wie meiner Signatur zu entnehmen ist, habe ich i-doit auf einem Webcluster installiert. Dabei ist das zugrunde liegende Dateisystem der Webserver ein NFS Share. Die Datenbank ist ebenfalls ein MySQL Cluster (percona-xtradb-cluster), bestehend aus drei Nodes (master-master). Als Storage Engine muss in diesem Fall innoDB verwendet werden, damit die Replikation reibungslos funktioniert. Damit I-Doit davon nichts mitbekommt, wird als IP Adresse die von einem HA-Proxy Verbund + keepalived (für die globale IP) verwendet.
Damit nun der Benutzer nichts davon mitbekommt, gehen die Webanfragen ebenfalls vorher an einen HA-Proxy (der gleiche, wie für MySQL) und werden dann per Roundrobin an die Webserver hinten dran verteilt. Kurz: ein Standard Webcluster.
Nun ist es mir ein Anliegen, dass bei der zukünftigen Entwicklung darauf geachtet wird, dass solche Setups berücksichtigt werden. Das fängt bei den SQL Tabellen an (kein MyISAM mehr), geht über speziell geforderte SQL Queries (also z.B. CREATE FUNCTION ….), die möglicherweise aus Replikationsgründen deaktiviert wurden ... und hört bestimmt nicht bei Dateien auf, die lokal angelegt werden und eventuell ein Problem darstellen können.
Ich denke, bei einer so wichtigen Software, muss der jeweilige Admin dafür Sorge tragen, dass die Anwendung möglichst hoch verfügbar ist, was aber nur dann geht, wenn die Software damit zurecht kommt.
Nun mag der eine oder andere einwerfen, dass das ja auch auf einer VM geht, aber wenn die einzelne VM kaputt geht .... ist es blöd, ist aber nur ein Teil im Cluster defekt, kann der andere die Aufgabe übernehmen.cu denny
-
ich finde du uebertreibst. all die probleme und zusaetzliche arbeit die du bei so einem ha-setup hast, stehen nicht dem nutzen gegenueber.
backups sollte man haben, und gut ist.
-
Die Anfrage ist schon ziemlich alt, wir haben von Zeit zu Zeit immer wieder mal Anfragen zum Thema SQL Clustering. Das ist allerdings nicht so einfach und die Hochverfügbarkeit lässt sich auch ganz gut über Cold Standbys o.Ä. regeln. Die technische Umsetzung in i-doit zur vollständigen Unterstützung ist bisher immer an diversen Gründen (Transactions etc.) gescheitert, vielleicht werden wir in Zukunft da nochmal einen Blick drauf werfen. Die MySQL Cluster Technologie hat sich ja auch stark weiterentwickelt.