Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ......

34
1 Oracle <Insert Picture Here> RAC Testing Sebastian Solbach BU Database Technology [email protected]

Transcript of Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ......

Page 1: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

1

Oracle

<Insert Picture Here>

RAC Testing

Sebastian SolbachBU Database [email protected]

Page 2: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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

Page 3: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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

Page 4: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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

Page 5: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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

Page 6: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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

Page 7: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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

Page 8: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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

Page 9: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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

Page 10: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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

Page 11: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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

Page 12: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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)

Page 13: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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;

Page 14: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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

Page 15: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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

Page 16: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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

Page 17: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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

Page 18: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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

Page 19: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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

Page 20: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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

Page 21: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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

Page 22: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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!

Page 23: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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

Page 24: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

24

<Insert Picture Here>

RAC Client

Funktionale Tests

Database Replay

Produktivsystem Testsystem

Capture ReplayAnalysis &

ReportingProcess

Mid-Tier

Replay Driver

Clients

Page 25: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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

Page 26: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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

Page 27: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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

Page 28: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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

Page 29: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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.

Page 30: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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

���

Page 31: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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

Page 32: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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

Page 33: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

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

Page 34: Oracle - doag.org · PDF fileHow to Restore a Lost Voting Disk in 10g ... AIX und Solaris: ... ASM Basics: Spiegeln kann, muss aber nicht Disk Group

34