Oracle RAC – Aktiv/Aktiv

Oracle RAC (Real Application Cluster) ist ein Datenbankcluster, in dem alles gemeinsam verwendet wird und der über einen verteilten Lock Manager verfügt.

Als Datenbank, in der alles gemeinsam verwendet wird, greifen alle RAC-Knoten auf dieselben Datendateien zu und aktualisieren diese. Welcher Knoten die Daten aktualisiert, wird vom Lock Manager gesteuert. Dabei spielt es keine Rolle, für welchen Knoten die Transaktion ausgeführt wird. Jeder Knoten hat die gleichen Berechtigungen, um auf die Daten in der gemeinsam genutzten Datenbank zuzugreifen.

Jeder RAC-Knoten verfügt über einen Listenerprozess, der für die Verarbeitung der Datenbankverbindungsanforderungen von Clientprogrammen zuständig ist. Wenn der Listener eine Anforderung empfängt, könnte ein neuer Datenbankprozess hervorgebracht werden, zu dem das Clientprogramm eine Verbindung herstellt. Wenn der serverseitige Lastausgleich aktiviert ist, könnte der Listener die Anforderung an den Listener auf dem RAC-Knoten mit der geringsten Auslastung senden.

Oracle hat die Grid-Infrastruktur aus Oracle RAC 11g Release 2 eingeführt. Damit hat Oracle zwei seiner Produkte integriert- Oracle ASM und Oracle Clusterware in einem Softwarepaket. Oracle Grid Infrastructure stellt die erforderlichen Funktionen für das Datenträgermanagement, das Dateisystem und das Server-Pool-Management zur Verfügung, um eine Oracle RAC-Datenbank ausführen zu können.

Sterling Order Management System Software mit Oracle RAC konfigurieren

Wenn Sie Sterling™ Order Management System Software mit Oracle RAC konfigurieren, möchten Sie, dass die RAC-Knoten vernünftig ausbalanciert sind, so dass alle RAC-Knoten über einen bestimmten Zeitraum etwa gleich ausgelastet sind. Sie können festlegen, dass während eines Knotenausfalls die Verbindungen vom ausgefallenen Knoten automatisch eine Verbindung mit dem verbleibenden RAC-Knoten herstellen. Verwenden Sie dazu die clientseitigen und serverseitigen Oracle-Funktionen.

Clientseitiger Lastausgleich mithilfe von SCAN

Mit Oracle RAC 11g Release 2 wird der Single Client Access Name (SCAN) eingeführt, um den Clientzugriff auf die Datenbanken zu vereinfachen. SCAN ermöglicht die Verwendung eines einzelnen Namens in den Clientverbindungsanforderungen, der sich nicht ändert, wenn das Cluster erweitert wird oder wenn sich die Knoten im Cluster im Verlauf der Zeit ändern. So können vereinfachte Verbindungszeichenfolgen für JDBC verwendet werden. Sie müssen den SCAN im DNS als Einzelnamen definieren, der im Umlaufverfahren verschiedene IP-Adressen der Knoten verwendet. Diese IP-Adressen müssen sich im gleichen Teilnetz befinden wie das öffentliche Netz für das Cluster.

Die JDBC-URL lautet wie folgt:

jdbc:oracle:thin:@(DESCRIPTION=(LOAD_BALANCE=ON)(FAILOVER=ON)(ADDRESS=(PROTOCOL= TCP )(HOST=racscan)( PORT=1521 ))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=racdb)))

Oracle RAC 11g Release 2 führt den Grid Naming Service (GNS) ein, der die Skalierung durch ein automatisches VIP-Management für Oracle RAC vereinfacht. Sterling Order Management System Software 9.1 wurde nicht mit aktiviertem GNS getestet.

Weitere Informationen zu SCAN finden Sie in der Dokumentation zu Oracle RAC.

Alle Datenbankknoten weisen in der Datei tnsnames.ora folgende Werte auf:

 RACDB =
  (DESCRIPTION = 
   (ADDRESS = (PROTOCOL = TCP)(HOST = racscan)(PORT = 1521)) 
    (CONNECT_DATA = 
    (SERVER = DEDICATED)
    (SERVICE_NAME = racdb)
   )
    )

RACDB ist der Netzservicename (net_service_name) für den clientseitigen Lastausgleich wie in der folgenden Abbildung dargestellt:

Ein Diagramm, das den Lastausgleich auf der Clientseite darstellt.

Aus der Perspektive von Sterling Order Management System Software können Sie erwarten, dass nach einem Ausfall einer RAC-Serverinstanz Folgendes auftritt:

  • Transaktionen in den Anwendungs-, Agenten- und Integrationsservern, in denen eine aktive Verarbeitung erfolgt ist, lösen eine SQL-Fehlermeldung aus. Die verbleibenden RAC-Knoten führen für die Änderungen dieser Transaktionen eine Rollback-Operation durch.
  • Die Sterling Order Management System Software -Agenten-und Integrationsserver versuchen kontinuierlich, die Verbindung wiederherzustellen. Wenn eine Verbindung mit einer der verbleibenden RAC-Instanzen hergestellt werden konnte, werden die fehlgeschlagenen Transaktionen erneut verarbeitet. Sie müssen die Sterling Order Management System Software -Server während des Übergangs zu einem der anderen aktiven Knoten nicht erneut starten.
  • Wenn die Quelle der Arbeitsanforderung (insbesondere für Agenten- und Integrationsserver) aus Nachrichtenwarteschlangen stammt, verbleiben die Nachrichten in der Nachrichtenwarteschlange. Diese Nachrichten werden nach der Wiederherstellung des Datenbankservice verarbeitet.