Date post: | 05-Apr-2015 |
Category: |
Documents |
Upload: | agna-weyrauch |
View: | 118 times |
Download: | 2 times |
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
Hardware Strom Platzbedarf
5
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
Parallel Server / RAC Historie
2004 2005 ?2003
Oracle Oracle 10gR1 RAC 10gR1 RAC
ASMASM
ProjektProjektMegaGrid, CERNMegaGrid, CERN
Oracle 10gR2Oracle 10gR2Grid Enable,Grid Enable,
ManageabilityManageability
??
6
Real Application Clusters
SMP
NUMA
Jeder Hersteller: Sun, HP, 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 Oracle10g
– eine Codebasis auf allen Plattformen– alle Oracle10g 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 Cluster Ready Services Manageability
9
Knoten (Nodes)
Jeder Knoten ist ein eigenständigerRechner (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 (HP)– 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 (OCFS)- Oracle Automatic Storage Management
(ASM)– 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
Cluster Ready Services
Framework fuer 3rd party Applikationen
– Applikationen werden clusterfähig– Unabhängig von Hardware und OS– Verwaltung über EM
Unabhängig von RAC– Offenlegung von Cluster Manager
Funktionalität
14
Manageability (9i vs. 10g)
Enterprise Manager – Cluster Enable Single Node– Backup/Recovery– Monitoring
Rolling Upgrade Load Balancing Storage Management
15
Agenda
Motivation
Clusterumgebungen
Oracle Real Application Clusters
Oracle RAC Konfigurationsvarianten
Q&A
16
Clusterumgebungen
Clustertypen:– Failover Cluster– Shared Nothing– Shared Disk
17
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
18
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
19
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
20
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
21
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
22
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
23
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
24
Agenda
Einführung
Clusterumgebungen
Oracle Real Application Clusters
Oracle RAC Konfigurationsvarianten
Q&A
25
Oracle10g Real Application Clustersbasierend auf dem Shared Disk System
Knoten 1 Knoten v2
XXX User XXX User
DB-Cache1 DB-Cache2
26
Oracle10g Real Application ClustersBasistechnologie (patentiert) : DB-Cache Fusion
Knoten 1 Knoten v2
XXX User XXX User
DB-Cache1 DB-Cache2 Cache Fusion
27
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
28
Cache Fusion Komponenten Global Resource Directory (GRD)
– Verwaltet Resourcen im Cluster– In-Memory Struktur (in SGA)– Repliziert auf allen Instanzen– Für jede Resource gibt es genau einen Resource
Master (siehe GCS, GES)– Resourcen:
Informationen über Datenblöcke Lokal/global Null Lock, Shared, Exclusive Welche Instanz hat aktuelle Version
29
Cache Fusion Komponenten Global Cache & Enqueue Service (GCS,
GES)- Verantwortlich für Integrität des GRD- Nominieren eines Resource Masters (dynamisch, kann wechseln) - Läuft auf jeder Instanz, Kommunikation über Interconnect- Beteiligt am Instance Recovery bei Ausfall einer Instanz
47
Agenda
Motivation
Clusterumgebungen
Oracle Real Application Clusters
Oracle RAC Konfigurationsvarianten
F&A
48
Diese Technologie ist einzigartig und kombiniert
Skalierbarkeit und Hochverfügbarkeit für alle Anwendungen:
OLTPDWHInternet/Intranet-Auftritte
Oracle10g Real Application Clusters
49
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
Oracle10g RAC: Out-of-the-box Scalability
ScaleFactor
1,8(Basis: 1 Node)
1,8(Basis: 1 Node)
50
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
Oracle10g RAC: Performance mit HMP Protokoll
51
(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
52
• 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
53
• 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
Oracle10g Real Application Clusters- Hybrid Konfigurationen
54
Oracle10g 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
AktiverOracle10g Knoten
Standby
55
Oracle10g RAC KonfigurationsvariantenOracle9i aktiv/passiv RAC
AktiverOracle10g Knoten
PassiverOracle10g DB Knoten
Lokale Ausfallsicherheit auf Rechnerebene
Umschaltzeit < 1 Minute
Skaliert bis max. Anzahl der CPUs des akt. Knotens
Crash betrifft 100% der User
56
Lokale Ausfallsicherheit auf Rechnerebene
Umschaltzeit < 1 Minute
Skaliert bis zur Anzahl der CPUs der Knoten
Crash betrifft 50% der User
Leistung nach Ausfall 50%
Oracle10g RAC KonfigurationsvariantenOracle10g (aktiv/aktiv) RAC
AktiverOracle10gKnoten / RAC
AktiverOracle10gKnoten / RAC
57
Lokale Ausfallsicherheit auf Rechnerebene
Umschaltzeit < 1 Minute
Skaliert bis zur Anzahl der CPUs der Knoten
Crash betrifft 25% der User
Leistung nach Ausfall 75%
Oracle10g RAC KonfigurationsvariantenOracle10g RAC - Mehrknotenkonfiguration
AktiverOracle10g Knoten
AktiverOracle10g Knoten
AktiverOracle10g Knoten
AktiverOracle10g Knoten
58
• Beide Knoten aktiv• Zugriff auf eine Datenbank
AktiverOracle10gKnoten / RAC
AktiverOracle9i DBKnoten / RAC
Oracle10g 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
59
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