oracle - doag.org · pdf filehow to restore a lost voting disk in 10g ... aix und solaris: ......
TRANSCRIPT
2
Vorwort
• Warum Testen• Prüfen der korrekten Konfiguration• Testen unter Workload• Umgang mit dem System im Fehlerfall• Feinheiten
• Beispiele sind nur ein Framework• Nicht komplett• Verhalten kann in Versionen unterschiedlich sein
• Wichtig für Tests• Ziele festschreiben• Testverfahren festschreiben• NTP
Wann startet die Clusterware einen Knoten durch?
• Ein Knoten wird von CRS re-bootet, wenn:• Kill oder Prozess Fehler des cssd
• I/O Timeout auf Voting Disks
• Weniger als n-1 Voting Disks erreichbar
• Process Monitor erkennt ein Problem mit dem Scheduling von Prozessen
• Kill Block auf dem Voting Device
• Heartbeat geht über den Interconnect verloren
3
Cluster Interconnect
Real Application ClusterArchitektur
Shared Storage
Public Network
Cluster Verification UtilityCLUVFY / CVU
• Der meiste Aufwand einer Clusterinstallation ist die Vorbereitung des Betriebssystems• Oracle liefert CLUVFY zur Überprüfung der Systemvoraussetzungen einer Clusterware-
und Datenbank- Installation• Empfehlung: Immer das aktuellste CLUVFY verwenden:
http://www.oracle.com/technology/products/database/clustering/cvu/cvu_download_homepage.html
cluvfy stage {-pre|-post} <stage-name> <stage-specific options>
cluvfy comp <component-name> <component-specific options>
runcluvfy.sh stage -pre crsinst
-n elrac1,elrac2 (Knotennamen)
-r 11gR1 (10gR1, 10gR2)
-c /dev/sdb1 (OCR)
-q /dev/sdc1 (Voting Disk)
-osdba dba -orainv dba
• Metalink Note 316817.1: CLUSTER VERIFICATION UTILITY FAQ
4
Public Network
Cluster Interconnect
Real Application ClusterStorage
OCR OCR
VotingDisk1
VotingDisk2
VotingDisk3
ASMDiskgroup
ASMDiskgroup
Mirror
OCR Best PracticesOCR OCR
• Das Herz des Clusters
• OCR muss shared abgelegt werden
• Sicherung der OCR ist zwingend!
• Oracle sichert die OCR automatisch alle 4 Stunden
• Neu in 11g manuelles Backup
• Lage der OCR ist extern abgelegt (ocr.loc, Registry)
$ ocrconfig –showbackup
$ ocrconfig –manualbackup
5
Voting Disk Best Practices
• Die Sicherung der Voting Disk erfolgt nicht automatisch!
• Zur Sicherung der Voting Disk reicht ein $ dd aus (bs=8192) (auf Windows: ocopy)
• Der $ dd kann auch ONLINE durchgeführt werden! • Sicherung der Voting Disk immer nach einer Cluster-
Änderung nötig • Metalink Note 279793.1
How to Restore a Lost Voting Disk in 10g• Administration der Voting Disk•
$ crsctl query css votedisk
VotingDisk1
VotingDisk2
VotingDisk3
VotingDisk2
VotingDisk3
Server 1 Server 2
Wo platziere ich die dritte Voting Disk, so dass ein beliebiges Storage ausfallen darf?
Das „einfache Mehrheit Problem“
• Gerade bei stretch Cluster-Konfigurationen finden sich oft 2 Storages• Für eine Spiegelung kommen generell in Betracht:
• Externe Spiegelung mit einem Cluster (!)-Volume Manager• Oracle-eigene, interne Spiegelung unter Einhaltung der „N/2+1-Regel“
• Die dritte Voting Disk muss nicht zwingend auf äquivalentem Storage liegen.• NEU: Standard NFS-Support für die 3 Voting Disk auf Linux, AIX und Solaris:
Using standard NFS to support a third voting disk on an Extended Distance cluster configuration on Linux,AIX, or Solaris (PDF) January 2007• http://www.oracle.com/technology/products/database/clustering/pdf
/thirdvoteonnfs.pdf
6
Konfiguration Public LAN
• Lösung generell: Redundante LAN Verbindungen • Public LAN im RAC mit externem IP Multipathing:
• Metalink Note 283107.1 (Sun IPMP)• Metalink Note 368464.1 für IC• Metalink Note 296856.1 (AIX 5L)• Metalink Note 296874.1 (HP-UX)• Metalink Note 298891.1 (Linux)
• Public LAN Interfaces müssen gleich sein.
Cluster Interconnect
Public Network
VIP Failback
• Failback ist in 10.2.0.4 und 11.1 nicht mehr Default nach Netzwerkausfall
• Wenn man dies möchte: ORA_RACG_VIP_FAILBACK ist auskommentiert im $ORACLE_HOME/bin/racgwrap
• Damit dies überhaupt geht braucht man ein DB Instanz
• Note 5843485.8: Bug 5843485 - Unnecessary VIP failback trial makes VIP unavailable for 14s on network down
• Note 294336.1: Changing the check interval for the Oracle 10g VIP
• VIP Failback Probleme: Default Gateway: Note 298895.1: Modifying the default gateway address used by the Oracle 10g VIP
7
Konfiguration Interconnect (IC)
• Zertifizierung: http://www.oracle.com/technology/products/database/clustering/certify/t
ech_generic_unix.html
• Verwenden Sie immer einen Switch!• Oracle selbst nutzt kein redundantes IC:
Bonding/Teaming = Failover&Loadbalancing• IC-Interfaces müssen gleich sein• Netzwerk zwischen den RAC Knoten muss private sein
Public Network
Cluster Interconnect
Konfiguration Interconnect (IC)
Public Network
Cluster Interconnect
• Empfohlen für IC: Metalink Note 278132.1: Network Protocols and RAC• UDP über Gigabit Ethernet• RDS über Infiniband (10.2.0.3)
• Alle Komponenten sollten denselben IC nutzen:• Oracle CRS und Oracle RAC Datenbank
• DB: select * from v$cluster_interconnects;• Clusterware: oifcfg getif
• Optimieren der UDP Settings: (Platformabhängig, generell gilt: 256K)net.core.rmem_default=262144
net.core.rmem_max=262144
net.core.wmem_default=262144
net.core.wmem_max=262144
8
Cluster Interconnect
• Die Oracle Clusterware hat zwei unterschiedliche Heartbeats:• CSS misscount (10g Default: Je nach Plattform)• CSS disktimeout (200 sec)
• Oracle 11g CSS misscount• Default nun auf allen Plattformen 30 Sekunden
$ crsctl get css misscount
VotingDisk1
VotingDisk2
VotingDisk3
VotingDisk2
VotingDisk3
CSS Timeout (30 sec)
Disk Timeout (200 sec)
Was beinhaltet eine Clusterware?
Clusterware
Operating System
Group Membership (cssd)
High Availability (racg)
Framework (crsd)
Process Monitor (oprocd)
Event Management (evmd)
VIP
9
Hangchecktimer & OPROCD
$ ps -efl | grep oprocd
0 S root 0 78 ... /bin/sh /etc/init.d/init.cssd oprocd
4 S root 0 -40 .. /opt/crs/bin/oprocd run -t 1000 -m 500 -f
# modprobe hangcheck-timer hangcheck_tick=1 hangcheck_margin=10
hangcheck_reboot=1
# crsctl set css diagwait 13 –force
4 S root 0 -40 .. /opt/crs/bin/oprocd run -t 1000 -m 10000 -f
• Metalink Note 567730.1: Changes in Oracle Clusterware on Linux with the 10.2.0.4 Patchset
• Metalink Note 726833.1: Hangcheck-Timer Module Requirements forOracle 9i, 10g, and 11g RAC on Linux
• Metalink Note 559365.1: Using Diagwait as a diagnostic to get more information for diagnosing Oracle Clusterware Node evictions
Cluster Problem & Detection Tool
• http://www.oracle.com/technology/products/database/cl
ustering/index.html
10
Cluster Problem & Detection Tool
• Der bevorzugte Storage Manager für Oracle Datenbanken ( Striping / Mirroring )
• Einfache Verwaltung
• Performance von Raw Volumes
• ASM Status
> 65% aller RAC-Installationen
> 25% aller 10g-Kunden
> 10TB auf ASM (VLDB)
Das „Filesystem“ Storage für Oracle Automatic Storage Management
11
ASM Basics: Striping erfolgt immer
Disk Group
• ASM striped grundsätzlich über alle Disks einer Diskgruppe
• Standard Stripe Size: 1MB für Datafiles, 128K für Controlfiles (generelle Granularität: 128 – 1024K auf Datei-Typen-Ebene)
• Das ASM Standard-Striping kann nicht unterbunden werden
• Bei „Disks“ im o.g. Sinne handelt es sich um ASM-Disks
• Als ASM-Disks können fungieren: • SAN (LVM?)-basierte LUNs, physikalische Disks, RAW Devices
• Die Daten werden über alle Disks in der DG gleichmäßig (prozentual gesehen) verteilt. Es empfiehlt sich, gleich große Disks mit ähnlichen IO-Parametern in einer DG zu verwenden
ASM Basics: Spiegeln kann, muss aber nicht
Disk Group
• Die ASM Spiegelung (einzige Möglichkeit der Absicherung der Daten gegen Disk-Ausfall) kann konfiguriert werden
• Die ASM Spiegelung wird für eine Diskgruppe festgelegt(einmal festgelegt, ist die Spiegelung nicht abänderbar)
• ASM Spiegelung: extern (keine), einfach & zweifach
• Gespiegelt wird immer über Failgroups (Ausfallgruppen)
• Der DBA (ASM) weist die ASM-Disks den Failgroups zu
• Dabei sollte berücksichtigt werden:• Disks an demselben Controller in eine Ausfallgruppen
12
ASM Preferred Mirror Read
Site BSite A
P S
• Ermöglicht das Lesen vom lokalen Spiegel
• Eliminiert Latenzzeit des Netzwerks bei Extended Cluster
Extended Cluster
DATA.SITEA DATA.SITEB
SELECT preferred_read FROM v$asm_disk;
SELECT * FROM v$asm_disk_iostat;
ASM_PREFERRED_READ_FAILURE_GROUPS
Ausfallgruppe 1
Controller 1
Ausfallgruppe 2
Controller 2
Disk-Gruppe DG
ASM sichert gegen Ausfall – immer
• ASM sichert gegen Ausfall, aber es gibt kein „ein wenig ausgefallen“
• Wird von ASM ein Disk-Ausfall erkannt, werden die typischen Recovery-Mechanismen eingeleitet:
• Rebalancing der Daten der DG
• Austragen der Disk-Referenzen in den ASM-Metadaten „nach“ einem erfolgreichen Rebalancing
• Die Recovery-Mechanismen müssen beendet werden (ein Hinzufügen der kurzzeitig ausgefallenen Disk kann dies nicht verhindern / unterbrechen)
13
Maintenance – oft kurzzeitiger Ausfall
• Typische Maintenance-Arbeiten im Storage:• Austausch einer einzelnen Disk (in einer SAN-
Lun)• Austausch einer Gruppe von Disks / Luns im SAN• Generelle Re-Organisation im SAN / in der
Zuleitung• Firmware Upgrades im SAN / für Controller /
Switches• Patchen der ASM Installation (ORACLE_HOME)
• Alle diese Arbeiten können einen kurzzeitigen Ausfall des Disk-Zugriffs bewirken und solltendaher im Vorfeld (durch dismount der DG z.B.) entsprechend adressiert werden.
ASM Fast Mirror Resync
Platte wieder verfügbar:Nachziehen geänderter Extents
2
Fehlerzeit < DISK_REPAIR_TIME
1• Bruchteil der Zeit, um die
Spiegelung wiederherzustellen
• Nur geänderte Blöcke müssen synchronisiert werden
• Vorteil• Schnelleres Recovery von
temporären Fehlern
• Erlaubt pro-aktive Wartungen
• Offen
ALTER DISKGROUP <dg>
DISK <disk> ONLINE;
14
Mehrere Wege zum StorageMultipathing
• Aus Hochverfügbarkeitsgründen wird oftmals mehr als ein Weg (Pfad, englisch Path) zum Storage vorgehalten, um bei Ausfall eines Weges, umgehend einen anderen Weg nutzen zu können (Multipathing)
• ASM kann diese multiplen Wege nicht automatisch selbst nutzen!
• Im Gegenteil: sollte ASM eine Disk mehr als einmalerreichen können (über > 1 Pfade) kann die DG, diediese Disk enthält, nicht „ge-mounted“ werden.
• Multipathing ist für ASM i.d.R. transparent, daherkönnen unterschiedliche Multipathing-Lösungenmit ASM eingesetzt werden.
• I.d.R. gemeinsamer Ansatz: Pseudo-Devices
„Kritzeleien”ASM und andere Metadaten
• Eine ASM Disk und ASM Diskgruppen sind autark – es erfolgt keine ASM (Meta-) Datenhaltung ausserhalb der ASM Disk.
• Dies bedingt eine Verwaltung von ASM Metadaten auf der Disk
• ASM Metadaten liegen am Anfang (Header) einer ASM Disk
• Manche OS legen Disk-spezifische IDs / Metadaten ebenfalls an den Anfang einer Disk
• Zur Vermeidung einer gegenseitigen Überlagerung empfiehlt sich daher, den Zylinder / Sektor 0 für ASM auszusparen oder die OS Markierung zu unterbinden (meist nicht zwingend)
• Oft hilft auch die Verwendung einer extendedPartition zur Partitionierung der (ASM) Disks
15
ASMCMD Erweiterung
$ asmcmd help
md_backup
md_restore
repair
lsdsk
User created directoriesTemplatesDisk group compatibilityDisk group nameDisk names & failure groups
cp
Dateien kopieren
ASM Disks und Eigenschaften
Bad BlockReplace
Metadaten B&R
<Insert Picture Here>
RAC
Funktionale Tests
16
Funktionale Tests
• Cluster Infrastruktur (Ohne Oracle DB)• Knotenfehler
• Restart eines Knoten
• Verlorener Plattenzugriff
• HBA Failover
• Disk Controller Failover
• Public Nic Ausfall
• Interconnect Ausfall
Funktionale Tests
• Hinzufügen, löschen eines Knoten
• ASM Tests• Plattendiscovery (v$asm_disk)
• Anlegen einer Diskgruppe
• Konsistenzcheck (alter diskgroup <> check all)
• Asmcmd
• Shared ASM Storage mit Single Instanz
• Rebalance Operationen
• CP oder XDB/FTP Zugriff
• Platte zur Diskgruppe hinzufügen/löschen/undrop
• DBVerify
17
<Insert Picture Here>
RAC
Destructive Testing
Knotenausfall
• Reboot des Knotens (init 0)• Was passiert?
• RAC Prozesse werden verschwinden
• Eine Instanz macht das Instanz Recovery
• VIP macht einen Failover
• Services werden umgeleitet, falls Sie auf einer „prefered“ Instanz laufen
• Client Connections umgeleitet (TAF/FCF)
• Nach kurzem Einfrieren arbeiten die restlichen Instanzen weiter
• Messgrößen
• Zeit bis Knotenfehler bemerkt wird
• Zeit für das Instanz Recovery (alert.log)
• Zeit um Workload wieder aufs selbe Level zu bringen
Cluster Interconnect
Public Network
18
Knotenausfall
• Hartes Auschalten des Knotens (PowerOff)• Was passiert?
• RAC Prozesse werden verschwinden• Eine Instanz macht das Instanz Recovery• VIP macht einen Failover• Services werden umgeleitet, falls Sie auf einer „prefered“ Instanz
laufen• Client Connections umgeleitet (TAF/FCF)• Nach kurzem Einfrieren arbeiten die restlichen Instanzen weiter
• Messgrößen• Zeit bis Knotenfehler bemerkt wird• Zeit für das Instanz Recovery (alert.log)• Zeit um Workload wieder aufs selbe Level zu bringen
Cluster Interconnect
Public Network
Knotenausfall
• Knoten wird wieder hochgefahren• Was passiert?
• Prozesse werden wieder gestartet
• VIP sollte zurückfallen
• Alle Knoten werden heruntergefahren• Messgrößen
• Zeit bis alle Ressourcen wieder zur Verfügung stehen
19
Instanzfehler
• Killen von PMON oder SMON / shutdown abort• Was passiert?
• Eine Instanz macht das Instanz Recovery• Services werden umgeleitet, falls Sie auf einer „prefered“ Instanz
laufen• Client Connections umgeleitet (TAF/FCF)• Nach kurzem Einfrieren arbeiten die restlichen Instanzen weiter• Instanz wird neu gestartet (dieses Feature kann man aber
ausschalten)• Messgrößen
• Zeit um Instanzausfall festzustellen• Zeit für das Instanz Recovery (alert.log)• Zeit um Workload wieder aufs selbe Level zu bringen• Zeit bis Datenbankinstanz wieder neu gestartet wurde
Restart nach Instanzfehler
• Automatisch oder Manuell• Was passiert?
• Instanz wird wieder verfügbar und ist im RAC verfügbar
• Loadbalancing verteilt Last auf neue Instanz
• Services wird nicht umgeleitet, falls er auf einer availableInstanz läuft
• Messgrößen
• Zeit bis Rebalancing beginnt
20
ASM Instanzfehler
• Killen von SMON/PMON ASM Instant / Shutdown abort• Was passiert?
• DB Instanz crashed• Eine Instanz macht das DB Instanz Recovery• Services werden umgeleitet, falls Sie auf einer „prefered“ Instanz
laufen• Client Connections umgeleitet (TAF/FCF)• Nach kurzem Einfrieren arbeiten die restlichen Instanzen weiter• ASM & Instanz wird neu gestartet (dieses Feature kann man
aber abschalten)• Messgrößen
• Zeit um Instanzausfall festzustellen• Zeit für das Instanz Recovery (alert.log)• Zeit um Workload wieder aufs selbe Level zu bringen• Zeit bis Datenbankinstanz wieder neu gestartet wurde
Multiple Instanzfehler / Diverses
• Killen von SMON/PMON ASM Instant / Shutdown abort auf mehereren Knoten• Messgrößen
• Zeit um Instanzausfall festzustellen• Zeit für das Instanz Recovery (alert.log)• Zeit um Workload wieder aufs selbe Level zu bringen• Zeit bis Datenbankinstanz wieder neu gestartet wurde
• Instanz hat keinen Zugriff auf Controlfiles• Was passiert
• Instanz wird nach 10 Minuten evicted
• Sammeln von Diagnostischen Daten => Auswirkungen auf Performance
21
Fehler des Listeners
• Killen des listener Prozesses• Was passiert
• Keine Auswirkung auf bestehende Datenbankverbindungen
• Neue Datenbankverbindungen werden an verbleibende Listener vermittelt
• Instanz bekommt weiterhin Last von anderen Listenern
• Listener wird über CRS neu gestartet
• Messgrößen
• Zeit bist CRS den fehlenden Listener entdeckt und neu startet
Fehler von CRS Prozessen
• CRSD Prozess / EVMD Prozess• Was passiert
• Prozess wird neu gestartet
• CSSD Prozess• Was passiert
• Knoten wird neu gestartet
• OPROCD• Was passiert
• Prozess wird neu gestartet
• Messgrößen
• Zeit bist Prozesse neu gestartet werden
22
Public Netzwerk Fehler
• Ziehen aller Public Netzwerkkarten• VIP fällt auf den anderen Knoten über
• TAF Clients werden sich neu verbinden
• Public NIC Fehler• Betriebssystem Bonding sollte greifen
• Vorsicht! Nicht auf allen Plattformen ist dies gleich mit einem ifconfig down!
• Public Netzwerk kommt wieder online• VIP Failback ?
Interconnect Fehler
• Ziehen aller Interconnect Verbindungen• Split Brain – Knoten wird evicted
• Messgröße: Zeit bis zum Knotendurchstarten
• Interconnect NIC Fehler• Betriebssystem Bonding sollte greifen
• Interconnect Switch Ausfall• 2 Switch?
• Vorsicht! Nicht auf allen Plattformen ist dies gleich mit einem ifconfig down!
23
OCR/Voting Disk
• Keinen Zugriff auf OCR• CSS wird Knoten durchstarten
• Keinen Zugriff auf 1 OCR• Läuft normal weiter => Bis Reboot
• Handling zur Wiederherstellung der OCR
• Keinen Zugriff auf Voting Disks• CSS wird Knoten durchstarten
• Keinen Zugriff auf 1 Voting Disk• Keine Auswirkungen
• Handling zur Wiederherstellung der Voting Disk
ASM
• Eine ASM Platte nicht mehr Zugreifbar
• Eine ASM Platte korrupt
24
<Insert Picture Here>
RAC Client
Funktionale Tests
…
…
Database Replay
Produktivsystem Testsystem
Capture ReplayAnalysis &
ReportingProcess
Mid-Tier
Replay Driver
Clients
25
Services
• Parallel Execution sind an den Service gebunden• Keine Angabe von PARALLEL_INSTANCE_GROUP notwendig• Keine Auswirkung auf anderen Parallelen Operationen (z.B.
Recovery)
Failover und Session State
• Session State ist im Fokus bei Failover-Betrachtungen
• Varianten aus Sicht der Anwendungsentwicklung • Gar kein Failover:
Endanwender erhält Fehlermeldung und muss sich neu anmelden
• Failover-Implementierung in der Anwendung:Entwickler fängt Fehler ab und verbindet sich neu mit der Datenbank
• Failover-Implementierung durch DB-SoftwareFailover ist transparent (wie weit?) für den Entwickler
26
Failover und Anwendungsarchitektur
• Unterschiedliche Anwendungsarchitekturen• Client-Server
• Web (J2EE, .NET, PHP)
• Unterschiedliche Failover-Anforderungen• Client-Server
• PC wird abends abgeschaltet: DB-Session endet
• Web
• J2EE, .NET mit Connection PoolDie DB Session endet niemals
• PHP ohne Connection PoolDie DB Session endet nach jedem Seitenaufbau
TAF
• Transparent Application Failover• OCI-Funktionalität
• Server- oder Clientseitige Aktivierung möglich
• Server-Einstellungen gehen vor!
• Client-Einstellungen durch TNS Connect-String
• Grundsätzlich: Session-Failover • OCI verbindet automatisch neu
• Cursor einer SELECT-Anweisung kann "übernommen" werden
• Callback-API
27
TAF - Einstellungentnsnames.ora
TNS_ALIAS= (DESCRIPTION= (FAILOVER=on)(ENABLE=BROKEN) (ADDRESS= (PROTOCOL=tcp)(HOST=sales1-server)(PORT=1521)
)(ADDRESS=(PROTOCOL=tcp)(HOST=sales2-server)(PORT=1521)
)(CONNECT_DATA=(SERVICE_NAME=sales.us.acme.com) (FAILOVER_MODE= (TYPE=select) (METHOD=basic)
))
)
• Basierend auf Fast Application Notification (FAN)• Oracle Connection Cache
• Java (JDBC OCI und thin Treiber) und .NET
• Bei "Service Down" Event• Benachrichtigung des Connection Pools per FAN
• Connection Pool invalidiert DB-Verbindungen
• Anwendung bekommt SQL-Exception bei nächster DB-Aktion
Connection Pool
Fast Connection Failover
28
Fast Application Notification (FAN)Basis für Fast Connection Failover
• Notification Server (ONS) überwacht die Knoten• Ereignisse führen zum Senden einer Benachrichtigung
• Knoten fährt herunter
• Knoten fährt hoch
• Subscription des Clients zu einem ONS
Application Server Cluster Datenbank Cluster (RAC)Web Client
Fast Application Notification (FAN)Basis für Fast Connection Failover
• Notification Server (ONS) überwacht die Knoten• Ereignisse führen zum Senden einer Benachrichtigung
• Knoten fährt herunter
• Knoten fährt hoch
• Subscription des Clients zu einem ONS
Application Server Cluster Datenbank Cluster (RAC)Web Client
Server Down
29
Fast Application Notification (FAN)Basis für Fast Connection Failover
• Notification Server (ONS) überwacht die Knoten• Ereignisse führen zum Senden einer Benachrichtigung
• Knoten fährt herunter
• Knoten fährt hoch
• Subscription des Clients zu einem ONS
Application Server Cluster Datenbank Cluster (RAC)Web Client
ONS Event propagation
!
Event Status
status=up
status=down
status=preconn_up
status=preconn_down
status=not_restarting
status=unknown
Event Type
SERVICE
SRV_PRECONNECT
SERVICE_MEMBER
DATABASE
INSTANCE
ASM
NODE
FAN Events – Struktur
• Neben Event Type und Event Status werden noch Event Reason sowie weitere „Event Metadaten“ mit jedem Event weitergegeben.
• Theoretisch kann jeder Event Type mit jedem Event Status auftreten.
30
Fast Application Notification (FAN)Konfiguration
Application Server Cluster Datenbank Cluster (RAC)Web Client
localport=6100 # This is the port ONS is writing to
remoteport=6200 # This is the port ONS is listening on
loglevel=3
useocr=on
# This is the list of hosts and ports ONS is poting to.
# Include RAC and client nodes.
nodes=hwracs1.de.oracle.com:6200,hwracs2.de.oracle.com:6200
Clients
Load Balancing Advisory (LBA)
• Load Balancing Advisory gibt „Ratschläge“ zur Lastverteilung über RAC Instanzen• Alle Applikationen (OCI, JDBC)
• Lastverteilung (Durchsatz, Priorität)
• Keine Last auf „Hängende“ Knoten
LBA Advice:
OLTP Service
instance1 33%
instance2 33%
instance3 34%
LBA Advice:
OLTP Service
instance1 33%
instance2 33%
instance3 34%
LBA Advice:
OLTP Service
instance1 80%
instance2 10%
instance3 10%
OLTP Service
Batch Job
Connection Pool
���
31
Nutzung Server-seitigen FAN CallOuts
• Nutzen Server-seitiger FAN CallOuts:• Starten, stoppen, verlagern von Server-seitigen Applikationen
• Versenden von Tracking Informationen / Emails / Error-Logs
• CallOuts sind Server-seitige Executables, die RAC automatisch ausführt, sobald ein entsprechendes High Availability Event eintritt
• Voraussetzung:• Ablage eines entsprechenden Skriptes in dem Verzeichnis:
ORA_CRS_HOME/racg/usrco
• README für die zu unterstützenden Argumente beachten
• Skripte müssen dem Oracle Software Owner, nicht dem CRS Software Owner, gehören bzw. von ihm ausführbar sein
Oracle Cluster Ready Services (CRS)HA Framework
Universal Connection Pool (UCP)11.1.0.7
• Ein universeller Connection Pool für alles:• Jede Art von JAVA Connection: JDBC, XA, JCA, LDAP etc.
• Jede Datenbank
• Jeder Applikationsserver
• Optimale Integration mit Oracle Datenbanken• Data Guard
• FCF (Fast Connect Failover)• Runtime Connection Load Balancing (RCLB)
• WebSession basierende Affintät zu RAC Instanzen
• Transaktionsbasierende Affinität (XA) zu RAC Instanzen
32
UCP Standalone
• Standalone JDBC Applikationen
• Direkt integriert mit PoolDataSource im ucp.jar
• PoolDataSource interagiert mit UCP via. DataSource Adapter
• UCP bedient sich der Connection Factory zum Aufbau der physicalischen Verbindung
ApplicationApplicationPoolDataSourcePoolDataSourcePoolXADataSourcePoolXADataSource
UCP
Eingebauter JDBC Adapter
Web ClientWeb Client
RAC
Datenbank
Instance1
Instance2
Instance3
UCP
Affinity Context
Connection
Web Session Affinity
Connect to me
33
DBA Community
• http://www.oracle.com/global/de/community/dbadmin
AQ&Q U E S T I O N SQ U E S T I O N S
A N S W E R SA N S W E R S
Q&A
34