Vorheriges Thema: MYSQLR, MYSQLR64 - für die Replikation geeignete MySQL-Datenbank-Appliance

Nächstes Thema: N-Ebenen-Anwendung mit Master-Master-Replikation (für Lastenausgleich geeignet)


Eigenschaften

Eigenschaftsname

Typ

Beschreibung

auto_create

Ganzzahl

Ob die Datenbank erstellt werden soll, wenn sie nicht vorhanden ist. Mögliche Werte sind 1 zum Erstellen und 0, um die automatische Erstellung zu unterbinden (um im Fall von beschädigten Volumes ein versehentliches Überschreiben zu vermeiden). Wenn "0" festgelegt ist und keine Datenbank auf dem Daten-Volume vorhanden ist, startet die Appliance im Wartungsmodus. (Die Appliance wird richtig gestartet, aber der MySQL-Deamon wird nicht gestartet, sodass der Benutzer das Problem überprüfen kann.) Der Standardwert lautet 1.

error_log_filename

String

Name für die Fehlerprotokolldatei, relativ zum Protokolldateisystem (zum Beispiel "/mysql_logs/my.log"). Verzeichnisse im Pfad werden automatisch erstellt. Wenn leer, wird das Fehlerprotokoll zum Daten-Volume geschrieben (/mnt/data/error.log). Standard: (leer).

error_log_level

String

Fehlerprotokollierungsebene. Mögliche Werte sind: "error" protokolliert nur Fehler, "warn" protokolliert sowohl Warnungen als auch Fehler. Bei dieser Eigenschaft wird die Groß-/Kleinschreibung ignoriert. Standard: error

timezone

String

Gibt die in der Appliance verwendete Zeitzone an. Wenn diese Eigenschaft leer ist, wird die Zeitzone nicht geändert, sondern im Ist-Zustand beibehalten. Eine Liste der unterstützten Zeitzonen ist verfügbar: hier.

Wichtig!

Erweiterte Eigenschaften (Verwendung in Replikationsszenarien)

Eigenschaftsname

Typ

Beschreibung

server_id

Ganzzahl

Server-ID. Mögliche Werte reichen von 1 bis 10. Hier wird die ID des Servers beim Ausführen einer Replikation angegeben. Stellen Sie sicher, dass Sie eindeutige IDs für all Ihre Server einrichten, die Bestandteil der Replikation sind. Standard: 1

rpl_mode

String

Replikationsmodus. Mögliche Werte sind "none" (keine Replikation), "master", "slave" und "master_and_slave" (für Multi-Master-Replikationsszenarien, wo ein Server gleichzeitig ein Master und ein Slave ist). Standard: Keine

web_pwd

String

Kennwort für Authentifizierung beim Zugriff auf die Webschnittstelle. Diese Eigenschaft ist optional. Wenn diese Eigenschaft festgelegt wird, wird der HTTP-Server der Appliance gestartet und die Webschnittstelle wird sowohl auf dem Terminal "ui" als auch auf der Standardschnittstelle angezeigt, wo der Zugriff über die (Web-)Anmeldeoption im CA AppLogic-Editor möglich ist. Standard: (leer).

Benutzerdefinierte Konfiguration

Diese Funktion ist in MYSQLR64 1.6.1 oder höher verfügbar.

In MYSQLR64 ist die Verwendung einer benutzerdefinierten MYSQL-Konfigurationsdatei möglich, die zusätzliche Konfigurationsoptionen enthalten oder eine bestehende, in /etc/my.cnf festgelegte Konfiguration überschreiben kann.

Um eine benutzerdefinierte Konfiguration zu verwenden, erstellen Sie eine Datei namens my.cnf und fügen sie auf dem Daten-Volume in das Verzeichnis der obersten Ebene ein. Das Format der Datei muss der Syntax der MYSQL-Optionsdatei entsprechen, wie in der MYSQL-Dokumentation beschrieben.

Das folgende Beispiel zeigt, wie die Leistung von MYSQLR64 bei Verwendung von InnoDB gesteigert werden kann (die MYSQLR64-Standardkonfiguration wird für MyISAM optimiert). Das Beispiel beruht auf der Verwendung eines Speichers von 512 M (Standard für MYSQLR64).

[mysqld]
# Shrink down MyISAM buffers
key_buffer = 512K
myisam_sort_buffer_size = 512K

# Make InnoDB the default storage engine (optional)
default-storage-engine = INNODB

# Set InnoDB buffer size
innodb_buffer_pool_size=350M
innodb_log_file_size=128M
innodb_log_buffer_size=4M
innodb_thread_concurrency=8

# If you do not have too many tables use this option, so you will not have uncontrolled innodb main tablespace growth which you can’t reclaim.
innodb_file_per_table=1

Wichtig! Bei Verwendung im Replikationsmodus synchronisiert MYSQLR64 auch die Datei "my.cnf" auf dem Daten-Volume, wenn Sie die Replikation reparieren/initiieren. Auf diese Weise verfügen Slave und Master über identische Daten.

Webschnittstelle

MYSQLR64 stellt eine Webschnittstelle bereit, auf die sowohl vom Terminal "ui" als auch von der Standardschnittstelle aus über die (Web)-Anmeldeoption im CA AppLogic-Editor zugegriffen werden kann. Bei Verwendung der Webschnittstelle ist eine HTTP-Authentifizierung erforderlich. Lassen Sie den Benutzernamen leer, und verwenden Sie den Wert von "web_pwd" als Kennwort. Die Schnittstelle hat die folgenden Funktionen:

Master-Slave-Replikationen zu MYSQLR64-Appliances hinzufügen

Mit CA AppLogic können Sie Master-Slave-Replikationen ohne Datenverlust zu vorhandenen MYSQLR64-Appliances hinzufügen.

So fügen Sie Master-Slave-Replikationen zu MYSQLR64-Appliances hinzu:

  1. Legen Sie für "rpl_mode" den Wert "master" auf der vorhandenen Appliance fest.
  2. Fügen Sie eine neue MYSQLR64-Appliance Ihrer Anwendung mit einem leeren Daten-Volume hinzu. Schließen Sie das zughörigen Terminal "rout" an das Terminal "rin" der aktuellen Appliance an.
  3. (Optional) Wenn er in einer Master-Master-Replikation verwendet werden soll, schließen Sie das beseitigte Terminal auf der aktuellen Appliance an das Terminal "rin" der neuen Appliance an.
  4. Starten Sie die Anwendung neu.
  5. Melden Sie sich bei der Webschnittstelle der neuen Appliance an, und wählen Sie die Option zum Initiieren/Reparieren der Replikation auf der Registerkarte zum Verwalten der Replikation aus. Der für die Protokollierung erforderliche Zeitaufwand variiert je nach der Größe der Daten auf dem Master. Wenn Sie INSSLR für den Zugriff auf MYSQLR64 verwenden, vergewissern Sie sich, dass die timeout-Eigenschaft auf einen hohen Wert (36000) festgelegt worden ist, um Zeitüberschreitungen zu vermeiden. Überzeugen Sie sich auch davon, dass in den Proxys auf der Client-Seite keine Zeitüberschreitungen vorliegen (besser gar keine Proxys verwenden).
  6. Wenn Sie die Replikation initiiert haben, melden Sie sich bei der Webschnittstelle auf beiden MYSQLR64-Appliances an, und überprüfen Sie den Replikationsstatus. Innerhalb von 5 Minuten oder weniger sollte die Replikation auf beiden Appliances ausgeführt werden.
MYSQLR64-Appliances zu Master-Slave-Replikationen hinzufügen

Mit CA AppLogic können Sie neue MYSQLR64-Appliances ohne Datenverlust zu vorhandenen Master-Master-Replikationen hinzufügen.

So fügen Sie MYSQLR64-Appliances zu Master-Slave-Replikationen hinzu:

  1. Fügen Sie eine neue MYSQLR64-Appliance Ihrer Anwendung mit einem leeren Daten-Volume hinzu. Beispielsweise dbN, vorausgesetzt, Sie verfügen bereits über N-1-MYSQLR64-Appliances (3 <= N <= 10) und jede Appliance hat ein eigenes Terminal "rout", der an das Terminal "rin" der nächsten Appliance in einem kreisförmigen Setup angeschlossen ist (db1 rout ist mit db2 rin verbunden usw.).
  2. Legen Sie für "rpl_mode" den Wert "master_and_slave" von dbN fest.
  3. Schließen Sie das Terminal "rout" der dbN-1-Appliance an das Terminal "rin" der dbN-Appliance an.
  4. Schließen Sie das Terminal "rout" der dbN-Appliance an das Terminal "rin" der db1-Appliance an.
  5. Starten Sie die Anwendung neu, damit die Änderungen wirksam werden. Nach dem Neustart ist die Replikation erst am Ende des Vorgangs synchronisiert. Daten, die auf eine Appliance geschrieben werden, dürfen während des Vorgangs nicht auf allen anderen Appliances repliziert werden.
  6. Melden Sie sich bei der Webschnittstelle der dbN-Appliance an, und wählen Sie die Option zum Initiieren/Reparieren der Replikation auf der Registerkarte zum Verwalten der Replikation aus. Der für die Protokollierung erforderliche Zeitaufwand variiert je nach der Größe der Daten auf dem Master. Wenn Sie INSSLR für den Zugriff auf MYSQLR64 verwenden, vergewissern Sie sich, dass die timeout-Eigenschaft auf einen hohen Wert (36000) festgelegt worden ist, um Zeitüberschreitungen zu vermeiden. Überzeugen Sie sich auch davon, dass in den Proxys auf der Client-Seite keine Zeitüberschreitungen vorliegen (besser gar keine Proxys verwenden).
  7. Wenn Sie die Replikation initiiert haben, melden Sie sich bei der Webschnittstelle von dbN-1 an, und wählen Sie die Option zum Zurücksetzen der Master-Protokollposition. Durch die Protokollierung liest die Anwendung dbN-1 und die binären Protokolle von dbN vom Anfang.
  8. Melden Sie sich bei der Webschnittstelle aller MYSQLR64-Appliances an, und überprüfen Sie den Replikationsstatus. Die Replikation sollte innerhalb von 5 Minuten oder weniger auf allen Appliances ausgeführt werden.
Replikation in Master-Slave-Konfigurationen reparieren

Mit CA AppLogic können Sie Replikationen in einer Master-Slave-Einstellung ohne Datenverlust reparieren.

So reparieren Sie Replikationen in Master-Slave-Konfigurationen:

  1. Melden Sie sich bei der Webschnittstelle des Slaves an, und wählen Sie die Option zum Initiieren/Reparieren der Replikation. Der für die Protokollierung erforderliche Zeitaufwand variiert je nach der Größe der Daten auf dem Master. Während des Vorgangs wird der mysql-Dienst auf dem Slave angehalten. Auf dem Master werden keine Ausfallzeiten verursacht. Dieser Vorgang entspricht dem Vorgang zum Hinzufügen einer neuen Appliance zu einer vorhandenen MYSQLR64-Appliance. Wenn Sie INSSLR für den Zugriff auf MYSQLR64 verwenden, vergewissern Sie sich, dass die timeout-Eigenschaft auf einen hohen Wert (36000) festgelegt worden ist, um Zeitüberschreitungen zu vermeiden. Überzeugen Sie sich auch davon, dass in den Proxys auf der Clientseite keine Zeitüberschreitungen vorliegen (besser gar keine Proxys verwenden).
  2. Wenn Sie die Replikation initiiert haben, melden Sie sich bei der Webschnittstelle auf der MYSQLR64-Slave-Appliances an, und überprüfen Sie den Replikationsstatus. Die Replikation sollte innerhalb von 5 Minuten oder weniger auf allen Appliances ausgeführt werden.
Replikation in Master-Master-Konfigurationen reparieren

Mit CA AppLogic können Sie Replikationen in einer Master-Master-Einstellung ohne Datenverlust reparieren.

Melden Sie sich bei der Webschnittstelle der Appliance an, die meldet, dass die Replikation fehlgeschlagen ist, und wählen Sie die Option zum Initiieren/Reparieren der Replikation. Der für die Protokollierung erforderliche Zeitaufwand variiert je nach der Größe der Datenbank auf dem Master. Während des Vorgangs wird der mysql-Dienst auf der Appliance angehalten. Auf dem Master werden keine Ausfallzeiten verursacht. Die Datenbank ist erst nach Abschluss der Reparatur auf allen Mastern synchronisiert. Die Datenbankaktualisierungen dürfen während der Reparatur auf allen anderen MYSQLR64-Appliances nicht repliziert werden.

Alle Daten auf dieser Appliance werden vom Master aus initialisiert. Aktualisierungen der Datenbank auf der aktuellen Appliance gehen verloren, da die Replikation unterbrochen wurde. In diesem Fall müssen Sie das Problem manuell lösen.

So reparieren Sie Replikationen in Master-Master-Konfigurationen:

  1. Melden Sie sich bei der Webschnittstelle der Appliance an, dessen Terminal "rout" an die Appliance angeschlossen ist, auf der die Replikationsreparatur ausgeführt wird. Wählen Sie die Option zum Zurücksetzen der Master-Protokollposition. Durch Festlegen des Master-Protokolls liest die Anwendung die binären Protokolle der festen Appliance vom Anfang. Wenn Sie INSSLR für den Zugriff auf MYSQLR64 verwenden, vergewissern Sie sich, dass die timeout-Eigenschaft auf einen hohen Wert (36000) festgelegt worden ist, um Zeitüberschreitungen zu vermeiden. Überzeugen Sie sich auch davon, dass in den Proxys auf der Clientseite keine Zeitüberschreitungen vorliegen (besser gar keine Proxys verwenden).
  2. Melden Sie sich bei der Webschnittstelle aller MYSQLR64-Appliances an, und überprüfen Sie den Replikationsstatus. Innerhalb von 5 Minuten oder weniger sollte die Replikation auf allen Appliances ausgeführt werden.
Replikationsüberwachung

Es gibt einen Cron-Job, der die Replikation zwischen MYSQLR64-Appliances überwacht. Falls die Replikation aktiviert wird, wird der Cron-Job alle zwei Minuten ausgeführt und sendet in den folgenden Fällen Warnungen an das Grid-Dashboard:

In solchen Fällen sollte der Benutzer das Problem manuell lösen.

Wenn die Replikation fehlschlägt, können Sie sie über die Webschnittstelle reparieren, wie im Abschnitt oben beschrieben.

Benutzerdefinierte Zähler

Die MYSQLR64-Appliance meldet die folgenden benutzerdefinierten Zähler über das Terminal "mon".

Die folgenden Indikatoren gehören zur MySql-Indikatorgruppe:

Zählername

Beschreibung

Aborted Clients (Abgebrochene Clients)

Anzahl der Clients, die vom Server abgebrochen wurden

Aborted Connections (Abgebrochene Verbindungen)

Anzahl der Verbindungen, die vom Server abgebrochen wurden

Btes Received (Bytes empfangen)

Anzahl der empfangenen Bytes

Bytes Sent (Bytes gesendet)

Anzahl der gesendeten Bytes

Total Connections (Verbindungen gesamt)

Anzahl der Verbindungen

Questions (Fragen)

Gesamtzahl der Fragen

Slow Queries (Langsame Abfragen)

Anzahl der langsamen Abfragen

Threads Created (Threads erstellt)

Anzahl der erstellten Threads

Threads Connected (Threads verbunden)

Anzahl der verbundenen Threads

Threads Running (Ausgeführte Threads)

Anzahl derzeit ausgeführter Threads

Max Used Connections (Maximum verwendeter Verbindungen)

Anzahl der maximal verwendeten Verbindungen

Open Files (Geöffnete Dateien)

Anzahl der geöffneten Dateien

Admin Commands (Admin-Befehle)

Anzahl der Admin-Befehle

Alter Table Commands (Alter Table-Befehle)

Anzahl der Alter Table-Befehle

Analyze Commands (Analyze-Befehle)

Anzahl der Analyze-Befehle

Change DB Commands (Change DB-Befehle)

Anzahl der Change DB-Befehle

Change Master Commands (Change Master-Befehle)

Anzahl der Change Master-Befehle

Check Commands (Check-Befehle)

Anzahl der Check-Befehle

Commit Commands (Commit-Befehle)

Anzahl der Commit-Befehle

Create DB Commands (Create DB-Befehle)

Anzahl der Create DB-Befehle

Create Function Commands (Create Function-Befehle)

Anzahl der Create Function-Befehle

Create Index Commands (Create Index-Befehle)

Anzahl der Create Index-Befehle

Create Table Commands (Create Table-Befehle)

Anzahl der Create Table-Befehle

Delete Commands (Delete-Befehle)

Anzahl der Delete-Befehle

Drop DB Commands (Drop DB-Befehle)

Anzahl der Drop DB-Befehle

Drop Function Commands (Drop Function-Befehle)

Anzahl der Drop Function-Befehle

Drop Index Commands (Drop Index-Befehle)

Anzahl der Drop Index-Befehle

Drop Table Commands (Drop Table-Befehle)

Anzahl der Drop Table-Befehle

Flush Commands (Flush-Befehle)

Anzahl der Flush-Befehle

Grant Commands (Grant-Befehle)

Anzahl der Grant-Befehle

Insert Commands (Insert-Befehle)

Anzahl der Insert-Befehle

Insert Select Commands (Insert Select-Befehle)

Anzahl der Insert Select-Befehle

Kill Commands (Kill-Befehle)

Anzahl der Kill-Befehle

Load Commands (Load-Befehle)

Anzahl der Load-Befehle

Lock Tables Commands (Lock Tables-Befehle)

Anzahl der Lock Tables-Befehle

Optimize Commands (Optimize-Befehle)

Anzahl der Optimize-Befehle

Purge Commands (Purge-Befehle)

Anzahl der Purge-Befehle

Rename Table Commands (Rename Table-Befehle)

Anzahl der Rename Table-Befehle

Repair Commands (Repair-Befehle)

Anzahl der Repair-Befehle

Replace Commands (Replace-Befehle)

Anzahl der Replace-Befehle

Replace Select Commands (Replace Select-Befehle)

Anzahl der Replace Select-Befehle

Reset Commands (Reset-Befehle)

Anzahl der Reset-Befehle

Revoke Commands (Revoke-Befehle)

Anzahl der Revoke-Befehle

Rollback Commands (Rollback-Befehle)

Anzahl der Rollback-Befehle

Select Commands (Select-Befehle)

Anzahl der Select-Befehle

Set Option Commands (Set Option-Befehle)

Anzahl der Set Option-Befehle

Truncate Commands (Truncate-Befehle)

Anzahl der Truncate-Befehle

Unlock Tables Commands (Unlock Tables-Befehle)

Anzahl der Unlock Tables-Befehle

Update Commands (Update-Befehle)

Anzahl der Update-Befehle

Fehlermeldungen

Die folgenden Meldungen können entweder in der Appliance-Protokolldatei oder im Systemprotokoll der Grid-Steuerung angezeigt werden, wenn die Appliance nicht startet:

Fehlermeldung

Beschreibung

Failed to set timezone!

Die Appliance-Zeitzone konnte nicht entsprechend der Konfiguration der Eigenschaft timezone festgelegt werden.

Appliance is running in [$rpl_mode] replication mode but binlogs volume is missing

Die Appliance ist so konfiguriert, dass sie als Master, Slave oder Master und Slave ausgeführt wird, es wurde jedoch ein Binlogs-Volume angegeben.

Appliance is running in [$rpl_mode] replication mode but the 'rout' terminal is not connected

Die Appliance ist so konfiguriert, dass sie als Slave doer Master und Slave ausgeführt wird, es ist jedoch kein Terminal "rout" angeschlossen.

The 'rout' terminal is connected, but the [rpl_mode] property is set to 'none'. Either configure replication via the [rpl_mode] property or disconnect the 'rout' terminal

Das Terminal "rout" ist angeschlossen, für die Eigenschaft "[rpl_mode]" wurde jedoch "none" festgelegt. Konfigurieren Sie die Replikation über die Eigenschaft "[rpl_mode]", oder trennen Sie die Verbindung zum Terminal "rout".

Failed to start mysql due to error_log_filename set and log terminal not connected!

Die Eigenschaft "error_log_filename" ist konfiguriert, das Protokollterminal ist jedoch nicht angeschlossen.

Failed to mount share through log terminal!

Die Appliance wurde so konfiguriert, dass Protokolle auf das Protokoll-Terminal geschrieben werden, die Freigabe auf dem Protokoll-Terminal wurde jedoch nicht geladen.

The share through the log terminal is not writeable!

In die Freigabe auf dem Protokoll-Terminal kann nicht geschrieben werden.

Failed to create logdir [$logdir] on the log terminal!

Failed to create logdir [$logdir] on the log terminal!

The logdir [$logdir] is not writeable!

In das Protokollverzeichnis [$logdir] auf dem Protokoll-Terminal kann nicht geschrieben werden.

The logfile [$error_log] is not writable!

In die Protokolldatei [$error_log] auf dem Protokoll-Terminal kann nicht geschrieben werden.

Failed to create database!

Appliance wurde ohne Datenbank gestartet. Es wurden keine Mysql-Datenbanken installiert.

Failed to setup replication!

Appliance konnte die Replikation nicht konfigurieren.

Failed to start mysql!

Der MySQL-Daemon konnte nicht gestartet werden.

Insufficient permissions in the mysql database!

Entweder sind die Berechtigungen für "root'@'%" nicht ausreichend oder "replication_user'@'%" verfügt nicht über ausreichend Berechtigungen, um eine MySQL-Replikation auszuführen (bei Verwendung im Replikationsmodus).

Webschnittstelle konnte nicht gestartet werden!

Webschnittstelle konnte nicht gestartet werden!

The data volume size should be at least 100Mb

Die Größe des Daten-Volumes sollte mindestens 100 Megabyte betragen. Siehe Hinweise zu Volume-Anforderungen.

Zudem können die folgenden Fehler auf dem Grid-Dashboard angezeigt werden, während die Appliance ausgeführt wird:

Fehlermeldung

Beschreibung

Wenig freier Speicherplatz auf dem Daten-Volume, bitte überprüfen.

Auf dem Daten-Volume sind weniger als 20 % freier Speicherplatz verfügbar.

Replikation des Masterservers wird nicht ausgeführt, bitte überprüfen.

Replikation des Masterservers wird nicht ausgeführt.

Replikation von Slave liegt zu weit hinter Master zurück, bitte überprüfen.

Replikation von Slave liegt zu weit hinter Master zurück.

Wenig freier Speicherplatz auf dem binlogs-Volume, bitte überprüfen.

Freier Speicherplatz auf dem Binlogs-Volume liegt unter 20 %.

Einfache Zwei-Ebenen-Anwendung (Keine Replikation)

Das folgende Diagramm zeigt eine typische Verwendung der MYSQLR64-Appliance in einer Zwei-Ebenen-Webanwendung:

Einfache Zwei-Ebenen-Anwendung (keine Replikation)

Verwendete Appliances:

Clientanfrage trifft am Benutzer-Gateway ein. Das Gateway leitet die Anfragen an den Webserver weiter, der die Anfrage verarbeitet. Wenn Skripte (z. B. Perl oder PHP) auf den Webservern auf persistente Daten zugreifen müssen, wird die db-Appliance über das out-Terminal des Webservers verwendet. Die db-Appliance wird so konfiguriert, dass sie ihre Protokolldateien innerhalb des Stammverzeichnisses der von logs zur Verfügung gestellten Freigabe speichern.

Mithilfe eines Browsers können Administratoren eine Verbindung zum admin-Gateway herstellen, um die mysql- oder Webserver-Protokolldateien anzuzeigen. Das admin-Gateway leitet die Anfragen an die Protokoll-NAS-Appliance weiter.

Beispiel-Eigenschaftskonfiguration (Eigenschaften, die nicht aufgelistet werden, sollten mit den Standardwerten belassen werden):

Eigenschaftsname

Wert

Hinweise

auto_create

1

Datenbank erstellen, wenn die Volumes leer sind.

error_log_filename

db.error

Name der Fehlerprotokolldatei, die auf dem Protokolldaten-Volume gespeichert werden soll.

error_log_level

Fehler

Fehlerprotokollierungs-Ebene

Hinweis: Das Daten-Volume muss auch auf der db-appliance und auf den Appliances logs, content und mon konfiguriert werden. Informationen zum Erstellen von Anwendungsvolumes, die hier verwendet werden können, finden Sie im Benutzerhandbuch zu Grid.

Skalierbare Zwei-Ebenen-Anwendung (Keine Replikation)

Das folgende Diagramm zeigt eine typische Verwendung der MYSQLR64-Appliance in einer Zwei-Ebenen-Webanwendung, bei der die Datenbank für die gemeinsame Verwendung von Status und Daten zwischen mehreren Webservern mit Lastenausgleich dient. Außerdem wird in diesem Beispiel eine getrennte Eingabe für die Wartung verwendet, über die ein Administrator sich anmelden und auf die Datenbank für die Wartung zugreifen kann, sowie eine Eingabe, über die ein Administrator sich anmelden und das MySql-Fehlerprotokoll anzeigen kann.

Einfache Zwei-Ebenen-Anwendung (keine Replikation)

Verwendete Appliances:

Clientanfrage trifft am Benutzer-Gateway ein. Die Gateway leitet die Anfrage an das Lastenausgleichsmodul "web_lb" weiter, das die Anfrage an einen der Webserver "web1" und "web2" leitet. Die Webserver greifen auf die db-Datenbank zu.

Die db-Datenbank und web1- und web2-Server schreiben ihre Protokolldateien über die Protokoll-Terminals in die logs-Appliance. Außerdem kann sich ein Administrator über das maint-Gateway bei der logs-Appliance anmelden und die Datenbankfehler-Protokolldateien anzeigen.

Zusätzlich kann sich ein Administrator über SSH und das maint-Gateway beim admin-Server anmelden (private/öffentliche Schlüssel müssen konfiguriert werden). Vom Server admin kann der Administrator auf die Datenbank db zugreifen, um Statistikdaten anzuzeigen oder das Datenbankschema zu ändern. Der Server admin kann über das Gateway gway auf das Internet zugreifen, um zum Beispiel eine neuere Bibliotheksversion oder das Datenbankschema herunterzuladen.

Beispiel-Eigenschaftskonfiguration (Eigenschaften, die nicht aufgelistet werden, sollten mit den Standardwerten belassen werden):

Eigenschaftsname

Wert

Hinweise

auto_create

1

Datenbank erstellen, wenn die Volumes leer sind.

error_log_filename

db.error

Name der Fehlerprotokolldatei, die auf dem Protokolldaten-Volume gespeichert werden soll.

error_log_level

Fehler

Fehlerprotokollierungs-Ebene

Hinweise:

N-Tier-Anwendung mit Master-Slave-Replikation (für Sicherungen geeignet)

Das folgende Diagramm zeigt eine typische Verwendung der MYSQL-Appliance in einer Webanwendung, bei der die Datenbank für einen Slaveserver repliziert wird. Der Slaveserver kann verwendet werden, um konsistente Sicherungen der Daten zu machen, ohne den Masterserver anzuhalten, wodurch keine Ausfallzeiten entstehen.

N-Ebenen-Anwendung mit Master-Slave-Replikation (für Sicherungen geeignet)

Verwendete Appliances:

Clientanfrage trifft am Benutzer-Gateway ein. Die Gateway leitet die Anfrage an das Lastenausgleichsmodul "web_lb" weiter, das die Anfrage an einen der Webserver "web1" und "web2" leitet. Die Webserver greifen auf die Masterdatenbank zu.

Die Slave-Appliance ist mit dem Master verbunden und repliziert seine Daten. Der Slave kann jederzeit angehalten werden, um konsistente Sicherungen der SQL-Daten oder komplexe Analytikvorgänge auszuführen, ohne die Leistung der Master-Appliance und den Rest der Anwendung zu beeinträchtigen.

Webzugriff auf Master und Slave ist verfügbar über das admin-Gateway auf Port 8080 und 8081.

Die Appliances master, slave, web1 und web2 werden so konfiguriert, dass sie ihre Protokolldateien innerhalb des Stammverzeichnisses der von logs zur Verfügung gestellten Freigabe speichern. Überdies können Administratoren über das Admin-Gateway Protokolldateien anzeigen.

Beispiel-Eigenschaftskonfiguration (Eigenschaften, die nicht aufgelistet werden, sollten mit den Standardwerten belassen werden):

master

Eigenschaftsname

Wert

Hinweise

auto_create

1

Datenbank erstellen, wenn die Volumes leer sind.

error_log_filename

master-db.error

Name der Fehlerprotokolldatei, die auf dem Protokolldaten-Volume gespeichert werden soll.

error_log_level

Fehler

Fehlerprotokollierungs-Ebene

server_id

1

Masterserver (muss nicht 1 sein, sollte einen anderen Wert als die server_id auf dem Slave haben)

rpl_mode

master

Binäre Protokolle schreiben, um die Replikation zu ermöglichen

slave

Eigenschaftsname

Wert

Hinweise

auto_create

1

Datenbank erstellen, wenn die Volumes leer sind.

error_log_filename

slave-db.error

Name der Fehlerprotokolldatei, die auf dem Protokolldaten-Volume gespeichert werden soll.

error_log_level

Fehler

Fehlerprotokollierungs-Ebene

server_id

2

Masterserver (muss nicht 2 sein, sollte einen anderen Wert als die server_id auf dem Slave haben)

rpl_mode

slave

Verbindung mit Master herstellen

Hinweise: