architektur- und realisierungsaspekte von oracle real application cluster (rac)
DESCRIPTION
Architektur- und Realisierungsaspekte von Oracle Real Application Cluster (RAC) Ralf Mueller Server Technologies Oracle Corporation [email protected]. Agenda. Motivation Clusterumgebungen Oracle Real Application Clusters Oracle RAC Konfigurationsvarianten Q&A. Warum Cluster ?. - PowerPoint PPT PresentationTRANSCRIPT
Architektur- und Realisierungsaspekte von Oracle Real Application Cluster (RAC)
Ralf MuellerServer TechnologiesOracle Corporation
3
Agenda
Motivation
Clusterumgebungen
Oracle Real Application Clusters
Oracle RAC Konfigurationsvarianten
Q&A
4
Warum Cluster ?
Technische Gründe– Skalierbarkeit– Hochverfügbarkeit– Neue Rechnerarchitekturen (Blades)
Nicht-technische Gründe– Kosten
5
BenchmarkWeltrekord(1073 tpsB)
Production SitesProduction Sites
FrFrüühe Entscheidung fhe Entscheidung füür OPSr OPS
19921991 1997 1999 20011989
VerfVerfüügbargbarauf VMSauf VMS
Oracle 6.2Oracle 6.2Erster UNIXErster UNIX
Parallel ServerParallel Server
Oracle 8Oracle 8Parallel ServerParallel Server
iDLMiDLM
Oracle Oracle 88iiParallel ServerParallel ServerCache Fusion ICache Fusion I
Oracle 9Oracle 9iiRACRAC
Cache Fusion IICache Fusion II
TechnologiefTechnologiefüührerschafthrerschaft
Parallel Server / RAC Historie
6
Real Application Clusters
SMP
NUMA
Jeder Hersteller: Sun, HP, Compaq, IBM,Linux, Win2000, OS/390
Knoten können beliebig hinzugefügt werden
Cluster
Jeder Hersteller, Jede Architektur
1 CPU
Mainframe
7
Oracle ist Oracle ist Oracle...
Real Application Clusters ist eine Option für Oracle9i
– eine Codebasis auf allen Plattformen– alle Oracle9i Funktionalitäten– Identische Schnittstellen
Identische Tools Infrastruktur
– Oracle Universal Installer (OUI)– Enterprise Manager (EM)– Database Configuration Assistant (DBCA)– Recovery Manager (RMAN)
8
Clusterkomponenten
Knoten (Nodes) Interconnect Shared Disk System Cluster Manager
9
Knoten (Nodes)
Jeder Knoten ist ein eigenstaendigerRechner (mit CPU, Memory, etc.)
Ein Knoten kann ein Einzel-CPU oder Mehrfach-CPU System sein (SMP, NUMA)
Für einen Cluster werden zwei oder mehr Knoten benötigt
10
Interconnect
Verbindung zwischen den Knoten eines Clusters
Kann Ethernet basierend sein Bessere Resultate durch Verwendung
von “HighSpeed Interconnects” – GigaBit Ethernet (alle)– VIA (Intel)– Memory Channel (Compaq)– High Performance Switch (IBM)
11
Shared Disk System
Alle Knoten haben Zugriff auf die Disk Resourcen des Clusters
Unterstützung von SAN und Hersteller spezifischen Lösungen
Gemeinsamer Zugriff über– Oracle Cluster File System (CFS)– Volume Manager des OS Herstellers
12
Cluster Manager
Software zum verwalten aller Komponenten in einem Cluster
– Überwachung des Zustandes eines Knoten
– Automatisches hinzufügen bzw. herausnehmen eines Knotens im Cluster
13
Agenda
Motivation
Clusterumgebungen
Oracle Real Application Clusters
Oracle RAC Konfigurationsvarianten
Q&A
14
Clusterumgebungen
Clustertypen:– Failover Cluster– Shared Nothing– Shared Disk
15
Clustertypen – Failover Cluster
DataDataA-ZA-ZDataDataA-ZA-Z
Typischerweise 2 Rechner im Verbund Nur der aktive Rechner hat Zugriff auf die Daten Adressiert Hochverfügbarkeit, keine Skalierbarkeit
16
Ausfall eines Knotens – Failover Cluster
Ausfallrechner übernimmt Platten Applikationen werden hochgefahren Umschaltzeit 10-30 Minuten Nur der aktive Knoten kann genutzt werde (keine Skalierbarkeit)
DataDataA-ZA-ZDataDataA-ZA-Z
17
Clustertypen – Shared Nothing
Typischerweise mehrere Rechner im Verbund Alle Knoten sind gleichzeitig aktiv Jedem Knoten ist ein Plattenstapel dediziert zugewiesen Adressiert Skalierbarkeit, aber nur für lesende Applikationen z.B. bei IBM DB2 UNIX & Windows, Microsoft SQL Server
DataDataA-FA-F
DataDataG-KG-K
DataDataL-SL-S
DataDataT-ZT-Z
18
Ausfall eines Knotens – Shared Nothing
Die Platten des ausgefallenen Knotens sind nicht mehr verfügbar Jeweils zwei Knoten sind wechselweise Ausfallknoten zueinander:
Ausfallzeit ca. 10 – 30 Minuten Extrem limitierte Skalierbarkeit
DataDataA-EA-E
DataDataG-KG-K
DataDataL-SL-S
DataDataT-ZT-Z
XDataDataA-FA-F
19
Clustertypen – Shared Disk
DataDataA-ZA-ZDataDataA-ZA-Z
Typischerweise 2 oder mehr Rechner im Clusterverbund Alle Knoten sind gleichzeitig aktiv Alle Knoten haben gleichzeitigen Zugriff auf die Daten Adressiert Skalierbarkeit & Ausfallsicherheit z.B. bei Oracle RAC, IBM DB2 auf OS390
20
Ausfall eines Knoten – Shared Disk
Fällt ein Rechner aus, wird die Last auf die übrigen Knoten verteilt Alle Knoten haben zu jeder Zeit Zugriff auf alle Daten Adressiert Skalierbarkeit & Ausfallsicherheit:
Ausfallzeit < 1 Minute Alle noch verfügbaren Ressourcen nutzbar (hier 75%)
DataDataA-ZA-ZDataDataA-ZA-Z
X
21
Clustertypen - Zusammenfassung
SD SN FCIm Kundeneinsatz in Data Warehouse Systemen Ja Ja (Nein)Im Kuneneinsatz bei Transaktionssystemen Ja Nein JaSkalierung bei statischen Applikationen (TPC-C) Gut Gut NeinSkalierung bei Standardapplikationen Gut Nein NeinSkalierung ohne Neupartitionierung der Daten ? Ja Nein (Nein)Daten bei Ausfall eines Knotens sofort zugreifbar ?Ja Nein NeinVerfügbarkeit bei Crash im < 2 Minuten Bereich Ja (Nein) NeinBetroffene Benutzer bei Nodecrash (2 Knoten) 50% 100% 100%Betroffene Benutzer bei Nodecrash (4 Knoten) 25% 100% 100%
SD = Shared Data
SN = Shared Nothing
FC = Failover Cluster
22
Agenda
Einführung
Clusterumgebungen
Oracle Real Application Clusters
Oracle RAC Konfigurationsvarianten
Q&A
23
Oracle9i Real Application Clustersbasierend auf dem Shared Disk System
Knoten 1 Knoten v2
XXX User XXX User
DB-Cache1 DB-Cache2
24
Oracle9i Real Application ClustersBasistechnologie (patentiert) : DB-Cache Fusion
Knoten 1 Knoten v2
XXX User XXX User
DB-Cache1 DB-Cache2 Cache Fusion
25
Block P
ing
Inst 1
DBA: 4711G.Stürner
L.Ellison
R.Lane….G.BloomR.Lane J.Henley
Block Shipping
Cache Coherence Implementierung
Blo
ck P
ingBlock Ping
L.EllisonR.Lane….
DBA: 4711G.Stürner
J.Henley
früher:
OPS
Inst 2
DBA: 4711G.Stürner
L.Ellison
R.Lane….G.BloomR.Lane J.Henley
Block Shipping
Inst 3
DBA: 4711G.Stürner
L.Ellison
R.Lane….G.BloomR.Lane J.Henley
Inst 1
DBA: 4711G.Stürner
L.Ellison
R.Lane….G.BloomR.Lane J.Henley
Inst 2
DBA: 4711G.Stürner
L.Ellison
R.Lane….G.BloomR.Lane J.Henley
Inst 3
DBA: 4711G.Stürner
L.Ellison
R.Lane….G.BloomR.Lane J.Henley
Block P
ing
43
Agenda
Motivation
Clusterumgebungen
Oracle Real Application Clusters
Oracle RAC Konfigurationsvarianten
Q&A
44
Diese Technologie ist einzigartig und kombiniert
Skalierbarkeit und Hochverfügbarkeit für alle Anwendungen:
OLTPDWHInternet/Intranet-Auftritte
Oracle9i Real Application Clusters
45
0
500
1.000
1.500
2.000
2.500
3.000
3.500
4.000
Single Node 2 Nodes 4 Nodes
1,01,0
1,8(Basis: 2 Node)
1,8(Basis: 2 Node)
89%Scalability
89%ScalabilitySAP(R) R/3 4.6C SD-Scalability
Oracle9i RAC: Out-of-the-box Scalability
ScaleFactor
1,8(Basis: 1 Node)
1,8(Basis: 1 Node)
46
0
500
1.000
1.500
2.000
2.500
3.000
3.500
4.000
4.500
2 Nodes 4 Nodes
2,2962,296
4,3684,368
95%Scalability
95%Scalability# Users Oracle E-Business Suite 11i Scalability
Oracle9i RAC: Performance (Version 9.02) mit HMP Protokoll
47
(Standard-)Applikation
Skalierbarkeit: Shared Disk / Shared Data Nutzung aller
Ressourcen
Geeignet für jede Applikation
– OLTP– DWH– ODS– Hybrid, etc.
Transparentes Load Balancing DataData
A-ZA-Z
CPU
50%
100%CPU
50%
100%CPU
50%
100%CPU
50%
100%
UserUser
UserUser
UserUser
UserUser
UserUser
UserUser
UserUser
UserUser
UserUser
UserUser
UserUser
UserUser
UserUser
UserUser
48
• Listener verteilen Anfragen basierend auf CPU-Last – PMON Prozess meldet den Listenern die Knotenauslastung
Knoten 2
rac1Instanz
Knoten 1
lsnr1
rac2Instanzlsnr2
Rac DatenbankClient 3
Ne
tzw
erk
Client 1Client 2
Client 4
Client n
Client & Serverseitiges LoadbalancingClient & Serverseitiges Loadbalancing• Verbindungsaufbau nach einem Zufallsprinzip
– verwendet die Adressliste der tnsnames.ora
49
• Gleichzeitiger OLTP und DSS Betrieb
• Dedizierter OLTP Knoten für schnelle Antwortzeiten
• DSS Nutzer sehen aktuellste Daten
OLTP DSS
Node Node NodeNode Node
ComplexComplexQueryQuery
ComplexComplexQueryQuery
QueryQuery
OLTPOLTP
OLTPOLTP
Oracle9i Real Application Clusters- Hybrid Konfigurationen
50
Oracle9i RAC KonfigurationsvariantenOracle Single Instance & klassischer Failover Cluster
Lokale Ausfallsicherheit auf Rechnerebene
Umschaltzeit bis 30 Minuten
Skaliert bis max. Anzahl der CPUs des akt. Knotens
Crash betrifft 100% der User
AktiverOracle9i DB Knoten
Standby
51
Oracle9i RAC KonfigurationsvariantenOracle9i aktiv/passiv RAC
AktiverOracle9i DB Knoten
PassiverOracle9i DB Knoten
Lokale Ausfallsicherheit auf Rechnerebene
Umschaltzeit < 1 Minuten
Skaliert bis max. Anzahl der CPUs des akt. Knotens
Crash betrifft 100% der User
52
Lokale Ausfallsicherheit auf Rechnerebene
Umschaltzeit < 1 Minuten
Skaliert bis zur Anzahl der CPUs der Knoten
Crash betrifft 50% der User
Leistung nach Ausfall 50%
Oracle9i RAC KonfigurationsvariantenOracle9i (aktiv/aktiv) RAC
AktiverOracle9i DBKnoten / RAC
AktiverOracle9i DBKnoten / RAC
53
Lokale Ausfallsicherheit auf Rechnerebene
Umschaltzeit < 1 Minuten
Skaliert bis zur Anzahl der CPUs der Knoten
Crash betrifft 25% der User
Leistung nach Ausfall 75%
Oracle9i RAC KonfigurationsvariantenOracle9i RAC - Mehrknotenkonfiguration
AktiverOracle9i DB Knoten
AktiverOracle9i DB Knoten
AktiverOracle9i DB Knoten
AktiverOracle9i DB Knoten
54
• Beide Knoten aktiv• Zugriff auf eine Datenbank
AktiverOracle9i DBKnoten / RAC
AktiverOracle9i DBKnoten / RAC
Oracle9i RAC KonfigurationsvariantenOracle Transparent Application Failover
empno name
7369 Smith7499 Allen7521 Ward7566 Jones7654 Martin7698 Blake
Benutzer werden automatisch auf einem
intakten Knoten übernommen und lesende
Zugriffe fortgesetzt
55
Client
TNS
rac1instance
Node 1
lsnr1
rac1rac2
rac2instancelsnr2
RACDatabase
• Automatischer, erneuter Verbindungsaufbau nächster Eintrag in der Address-Liste in tnsnames.ora
Node 2
TAF erneuter VerbindungsaufbauTAF erneuter Verbindungsaufbau
AF&F R A G E NF R A G E NA N T W O R T E NA N T W O R T E N