Klonen von Exadata Datenbanken 
mit der Oracle ZFS Appliance 
Ein Erfahrungsbericht 
DOAG 
Konferenz 
2014 
1
database 
intelligence 
| 
opera1ons 
excellence 
| 
lizenzberatung 
• Oracle-Projekte seit 2003 
• Data Warehouse und 
Business Intelligence Projekte 
• Wartungsverträge 
DOAG 
Konferenz 
2014 
2 
„we 
go 
the 
extra 
mile“ 
Jan Schreiber, Senior Consultant 
Loopback.ORG GmbH
KUNDE UND ANWENDUNG 
Deutschlandweiter Kommunikationsdienstleister 
DWH/BI Landschaft mit mehreren ExaData-Systemen 
Datenbeladungen von 2 TB pro Tag 
Tägliche Bereitstellung von Key-Performance-Indikatoren 
DOAG 
Konferenz 
2014 
3
Ausgangssituation (physisch) 
RMAN 
10 Gbit/sec. 
DOAG 
Konferenz 
2014 
4 
RMAN 
1 Gbit/sec. 
SAN Storage 
Produktionsumgebung 
Testumgebung 
FC
Ausgangssituation (logisch) 
Post-Tasks: 
- Anonymisierung 
- Maskierung 
- Security-Refit 
- Database Links 
- … 
Produktion Produktion’ Test 
DOAG 
Konferenz 
2014 
5
Ausgangssituation (logisch) 
Produktion Produktion’ 
DOAG 
Konferenz 
2014 
6 
Post-Tasks 
- Anonymisierung 
- Security-Refit 
- Database Links 
- … 
- Anonymisierung 
- Security-Refit 
- Database Links 
- … 
lots of times... 
- Anonymisierung 
- Security-Refit 
- Database Links 
- … 
Test 
Entwicklung 
T/E
Nachteile 
• Platzverbrauch (ein n-faches der Originalvolumens) 
• Lange Laufzeiten 
• Hoher Netzwerk-Traffic durch Datenbewegung 
• Lange Anpassungszeiten für Post-Tasks 
• Insgesamt lange Bereitstellungszeiten 
• Test / Entwicklungsumgebungen wurden zu selten aktualisiert 
DOAG 
Konferenz 
2014 
7
Oracle ZFS Appliance 
• Direkt an Exadata-Infiniband angeschlossen 
• Hohe Durchsatzraten bei der Datensicherung 
• ZFS bietet Snapshots und Klone 
• Schnelle Bereitstellung, geringer Platzverbrauch 
• HCC Kompression kann beibehalten werden 
• Native dNFS 
DOAG 
Konferenz 
2014 
8
Oracle ZFS Appliance 
• „Application Engineered Storage: 
– Speziell für Datenbank-Storage entworfen 
• „17,3GB/s bei $23/MB/s“ 
• dTrace-GUI Analytics 
• Oracle Database Integration: SMU 
• EM Cloud Control Plugin 
• Thin Provisioning / Deduplication / Compression 
DOAG 
Konferenz 
2014 
9
dTrace Analysis 
DOAG 
Konferenz 
2014 
10
Infiniband-Integration Exa / ZS 
Exadata Rack 1 
Leaf Switch 1 Leaf Switch 2 
IB0 IB1 IB2 IB3 IB0 IB1 IB2 IB3 
Oracle ZFS Storage Cluster Head 1 Oracle ZFS Storage Cluster Head 2 
DOAG 
Konferenz 
2014 
11 
Exadata Rack 2 
Leaf Switch 1 Leaf Switch 2 
Active IPMP Link 
Failover Link
Configuring a Single Oracle ZFS Storage Appliance into an 
InfiniBand Fabric with Multiple Oracle Exadata Machines 
„Two Exadata racks can be cabled together to share the same IB 
fabric mesh. The merged Exadata racks can then be connected to a 
single clustered Oracle ZFS Storage Appliance. Successful setup 
requires adherence to some critical prerequisites and instructions, 
including physical cabling procedures. Be sure to reference the 
Oracle Exadata Database Machine Owner's Guide, 
Part IV: Extension Configuring a Single Oracle ZFS Storage 
Appliance into an InfiniBand Fabric with Multiple Oracle Exadata 
Machines of the Oracle Database Machine and Oracle Exadata 
Storage Expansion Rack“ 
http://www.oracle.com/technetwork/server-storage/sun-unified-storage/ 
documentation/multiple-exadata-zfssa-121013-2080035.pdf 
DOAG 
Konferenz 
2014 
12
IB-Konfiguration 
• Enable LACP Link Aggregation 
• Active/Active-Konfiguration für IPMP nicht empfohlen* 
• Linux ifcfg-ibx: MTU=65520 
• Connected Mode 
DOAG 
Konferenz 
2014 
13 
*siehe 
MOS 
Note: 
283107.1
Durchsatz 
• Infiniband Bus Transferrate 2.0Gb/sec 
• 40Gb/s mit QDR auf Eda-Seite 
• Erwarteter Durchsatz 4GB/s 
DOAG 
Konferenz 
2014 
14
Klon-Erzeugung 
Filesystem-Klon: 
• offline 
• online mit recovery 
– Zugriff auf Archive 
Logs notwendig 
– Quell- und Klon-DB 
liegen in einem 
Filesystem oder 
sind per zfs send 
repliziert 
RMAN-Klon: 
• Sicherung der Quell-DB 
mit RMAN AS COPY auf 
ein (d)NFS-Share der 
ZS 
• RMAN Recovery auf der 
ZS 
• zfs clone 
• Start auf DB-Host per 
(d)NFS Mount 
DOAG 
Konferenz 
2014 
15 
Data-Guard-Klon: 
• DataGuard statt RMAN 
• Point In Time Klon 
möglich 
• Verbindung mit 
Desaster Recovery
Ausgewählte Strategie 
Oracle RMAN Incremental Backup Oracle RMAN Incremental Backup 
MCL@t1 MCL@t2 MCL@t3 MCL@t4 
MTD@t1 MTD@t2 MTD@t3 MTD@t4 
S1 S2 S4 
C4 
S3 
S5 S6 S7 S8 
C1 C2 C3 
C6 
C5 C7 C8 C9 C10 C13 
DOAG 
Konferenz 
2014 
16 
C12 
C11 
Oracle 
ASM 
Database 
Source-­‐DB 
Loopback.ORG
Ausgewählte Strategie 
Oracle RMAN Incremental Backup Oracle RMAN Incremental Backup 
MCL@t1 MCL@t2 MCL@t3 MCL@t4 
MTD@t1 MTD@t2 MTD@t3 MTD@t4 
S1 S2 S4 
C4 
S3 
S5 S6 S7 S8 
C1 C2 C3 
C6 
C5 C7 C8 C9 C10 C13 
DOAG 
Konferenz 
2014 
17 
C12 
C11 
Oracle 
ASM 
Database 
Source-­‐DB 
Restored 
DB 
Loopback.ORG
Ausgewählte Strategie 
Oracle RMAN Incremental Backup Oracle RMAN Incremental Backup 
MCL@t1 MCL@t2 MCL@t3 MCL@t4 
MTD@t1 MTD@t2 MTD@t3 MTD@t4 
S1 S2 S4 
C4 
S3 
S5 S6 S7 S8 
C1 C2 C3 
C6 
C5 C7 C8 C9 C10 C13 
DOAG 
Konferenz 
2014 
18 
C12 
C11 
Oracle 
ASM 
Database 
Source-­‐DB 
Restored 
DB 
Master 
Test 
DB 
Loopback.ORG
Ausgewählte Strategie 
MCL@t1 MCL@t2 MCL@t3 MCL@t4 
MTD@t1 MTD@t2 MTD@t3 MTD@t4 
S1 S2 S4 
DOAG 
Konferenz 
2014 
19 
Snapshots 
Oracle RMAN Incremental Backup Oracle RMAN Incremental Backup 
C4 
S3 
S5 S6 S7 S8 
C1 C2 C3 
C6 
C5 C7 C8 C9 C10 C13 
C12 
C11 
Oracle 
ASM 
Database 
Source-­‐DB 
Restored 
DB 
Master 
Test 
DB 
Loopback.ORG
Ausgewählte Strategie 
Oracle RMAN Incremental Backup Oracle RMAN Incremental Backup 
MCL@t1 MCL@t2 MCL@t3 MCL@t4 
MTD@t1 MTD@t2 MTD@t3 MTD@t4 
S1 S2 S4 
C4 
S3 
S5 S6 S7 S8 
C1 C2 C3 
C6 
C5 C7 C8 C9 C10 C13 
DOAG 
Konferenz 
2014 
20 
C12 
Oracle 
ASM 
Database 
Source-­‐DB 
Restored 
DB 
Master 
Test 
DB 
C11 
Snapshots 
Klone
Zusammenspiel RMAN und ZA 
• RMAN AS COPY 
– 1,75x längere Laufzeit als AS BACKUPSET 
• Incrementally updated backup 
• ENABLE BLOCK TRACKING 
• BACKUP AS COPY SKIP INACCESSIBLE (ARCHIVELOG ALL) 
DOAG 
Konferenz 
2014 
21
RMAN Konfiguration 
• RMAN Channel SBT_TAPE ohne Komprimierung, wenn 
Backup Software bereits komprimiert 
• RMAN Compression ist sehr CPU intensiv 
• Höhere Datenraten mit mehreren RMAN-Channels 
• Mount der Backup Shares mit Automounter oder init.d- 
Skript 
DOAG 
Konferenz 
2014 
22
Datenbank-Kloning und ZA 
• Alle zusammengehörigen Dateien müssen konsistent 
geklont werden 
• Schreiboperationen müssen auf Redo ausgelagert werden 
• Archive Logs müssen berücksichtigt werden 
DOAG 
Konferenz 
2014 
23
DB-Kloning mit SMU 
• Management der Kloning 
• iSCSI und dNFS 
• WebGUI und CLI 
• Oracle 10,11, RAC, Linux, Solaris 
DOAG 
Konferenz 
2014 
24
DB-Kloning mit SMU 
DOAG 
Konferenz 
2014 
25
SMU: Ablauf 
1. Klon des Backup Share 
2. Mount Klon auf Target Host 
3. Start Temp-Instanz aus Backup, mount Controlfile, 
read parameters (maxSCN, FRA-Size) 
4. Start Klon-DB mit neuem PFile 
5. Recover Control File 
6. Database Recovery 
7. OPEN RESETLOGS 
8. Recompile aller Schema-Objekte 
DOAG 
Konferenz 
2014 
26
Host-Anbindung ZS 
• L2: FC, IB oder (10G) Ethernet 
• TCP/IP über Ethernet und IB 
• ZA Protokolle: ftp, smb, nfs, iSCSI 
• iSCSI: ZFS datasets (Volumes) als raw devices für ASM 
– Nur eine ASM-Instanz pro Host 
– iSCSI Volumes werden im Stück geklont 
DOAG 
Konferenz 
2014 
27
Oracles dNFS 
• NFS-Implementation im Oracle-Prozess 
– Für Datenbank-Zugriffe optimiertes Verhalten 
– Für Datafiles, RMAN, Temp, Redo, Controlfiles… 
– Keine serverseitige Komponenten 
– Weniger CPU-Overhead 
• Von Oracle empfohlen für Datenbankfiles auf ZA Storage 
• 300% der kNFS-Performance in Linux 
– 100% in Solaris ;) 
DOAG 
Konferenz 
2014 
28
k NFS 
I/O Client 
Oracle 
Process 
kernel 
NFS-Client 
NFS-Service 
I/O Client 
Oracle 
Process 
I/O Client 
Oracle 
Process 
File A File B File B 
DOAG 
Konferenz 
2014 
29 
d NFS 
I/O Client 
Oracle 
Process 
NFS-Client NFS-Client 
NFS-Service 
I/O Client 
Oracle 
Process 
NFS-Client 
I/O Client 
Oracle 
Process 
File A File B File B 
USER KERNEL MODE 
USER KERNEL MODE 
Loopback.ORG
SMU 
• Konfiguriert Snapshots und Klone von Oracle-Datenbanken auf 
ZFS-Storage 
• Oracle Datenbank 10,11 auf ZA 
• Solaris, Linux, Windows Clients, RAC 
• NAS & SAN 
• Snapshot, Clone, Rollback 
• Online, Offline, Standby Snapshots 
DOAG 
Konferenz 
2014 
30
ZFS-Snapshots 
• ZFS: Allocate on Write 
• Änderungen werden stets auf neue Blöcke geschrieben 
• Nach einem Snapshot werden keine obsoleten Blöcke mehr 
gelöscht 
• Ein Klon ist ein beschreibbarer Snapshot 
• Schreiben auf einen Klon ist nicht langsamer 
DOAG 
Konferenz 
2014 
31
ZFS-Konfiguration: ARC & ZIL 
• ARC Adaptive Read Cache in RAM oder auf 
SSD (Readzilla/L2ARC) 
– „Buffer Cache“ des Filesystems 
• ZIL ZFS Intent Log (Writezilla) 
– „Redo Log“ des Filesystems 
– Synchrones Schreiben 
– Asynchrones Schreiben geht ins RAM 
DOAG 
Konferenz 
2014 
32
Schreiben in ZFS 
Get into a 
transaction group 
Update our 
in-memory buffer 
no 
yes 
DOAG 
Konferenz 
2014 
33 
Create in-memory 
log record 
Sync? Commit transaction 
Commit ZIL record to disk 
Return
ZFS logbias 
• Latency: mit ZIL 
• Throughput: ohne ZIL 
• Auf SSD schreibt es sich schneller 
• Aber viele Disks haben mehr Bandbreite als wenige SSDs 
DOAG 
Konferenz 
2014 
34
ZIL Konfiguration 
• Gestripte SSDs für ZIL 
– Maximale Performance 
– Doppelfehler führt zu Datenverlust 
• Gespiegelte SSDs für ZIL 
– Maximale Schreibrate im Latency-Mode = Bandbreite eines SSD-Anschlusses 
DOAG 
Konferenz 
2014 
35
ZFS Share Konfiguration für 
Datenbanken 
Share Logbias Recordsize Primarycache Compression 
DATAFILES latency db_blocksize all LZJB 
Share Logbias Recordsize Primarycache Compression 
DATAFILES latency db_blocksize all LZJB 
INDIZES latency db_blocksize all off 
CONTROLFILES latency 128k all LZJB 
DOAG 
Konferenz 
2014 
36
Pool-Konfiguration 
• Oracle empfiehlt verschiedene Pools für Datafiles und Redo 
• Mirrored Pool für Klon-Shares? 
• RAID-Z für RMAN, Archive Log? 
• HDDs können nur einem Pool zugewiesen werden 
• HDDs können nie mehr aus Pool entfernt werden 
• … Ein Pool pro Head 
• Oracle empfielt 4 Schreib-SSDs für Klone und inkrementelle Backups 
DOAG 
Konferenz 
2014 
37
ZA „Cluster“ 
• 2 Heads, n Storage Bays 
• Storage Bays sind untereinander querverbunden 
• HDDs des anderen Heads können importiert werden 
• Heads müssen einzeln konfiguriert werden 
• Readzilla pro Head, verliert nach Schwenk Status 
– Aufwärmphase nach dem Neustart 
DOAG 
Konferenz 
2014 
38
Projekt-Konfiguration 
• ZFS datasets heissen in der ZA Shares 
• Ein ZA Projekt ist ein Template für Shares 
• iSCSI Block Devices werden immer synchron geschrieben, daher kein Latency 
Mode 
• Auf keinen Fall Deduplikation verwenden, da umfangreiche 
Speicherstrukturen aufgebaut werden müssen (im RAM sollte der Cache sein) 
• Shares müssen in beiden Köpfen angelegt werden 
• User und Group ID in den Share Voreinstellungen anpassen (1001) 
• Eindeutiges Namens-Schema für Shares und Snapshots einhalten! 
DOAG 
Konferenz 
2014 
39
SMU-Konfiguration 
• Archive Logs müssen in von Datafiles getrenntes Share 
• Ab SMU 1.2 können Datenbank-Shares auf beiden Cluster- 
Köpfen liegen 
• Bei einem RMAN Backup AS COPY auf ein Share darf sonst 
nichts auf dem Share liegen 
DOAG 
Konferenz 
2014 
40
Manuelle Klon-Konfiguration 
• Löschen der obsoleten Snapshots automatisieren 
• Klon Refresh erfordert einen neuen Snapshot 
• Löschen des Snapshots löscht alle Klone mit 
DOAG 
Konferenz 
2014 
41
Client-Konfiguration 
• Linux Mount Options 
– rw, bg, hard, nointr, rsize=1048576, wsize=1048576, tcp, 
vers=3,timeo=600 
– NFS Version 3 vorausgesetzt 
• Solaris 
– rw ,bg, hard, nointr, rsize=1048576, wsize=1048576, proto=tcp, vers=3, 
forcedirectio 
DOAG 
Konferenz 
2014 
42
Linux Native NFS abschalten 
# chkconfig portmap on 
# service portmap start 
# chkconfig nfs on 
# service nfs start 
# chkconfig nfslock on 
# service nfslock start 
DOAG 
Konferenz 
2014 
43
Linux /etc/sysctl.conf 
hKp://serverfault.com/quesPons/327947/set-­‐up-­‐simple-­‐infiniband-­‐block-­‐ 
storage-­‐srp-­‐or-­‐iser 
net.ipv4.tcp_timestamps=0 
net.ipv4.tcp_sack=0 
net.core.netdev_max_backlog=250000 
net.core.rmem_max=16777216 
net.core.wmem_max=16777216 
net.core.rmem_default=16777216 
net.core.wmem_default=16777216 
net.core.optmem_max=16777216 
net.ipv4.tcp_mem="16777216 
16777216 16777216" 
net.ipv4.tcp_rmem="4096 87380 
16777216" 
net.ipv4.tcp_wmem="4096 65536 
16777216" 
DOAG 
Konferenz 
2014 
44
Linux RDMA 
• NFS over RDMA brachte die besten Ergebnisse 
• Offiziell von Oracle nicht unterstützt 
DOAG 
Konferenz 
2014 
45
Klonen des Oracle Homes 
1. ORACLE_HOME Master auf der ZA erstellen 
2. Klonen auf der ZA 
3. Mount des geklonten Shares 
4. Konfigurieren des ORACLE_HOME Shares mit dem „clone“ 
Perl Skript* 
DOAG 
Konferenz 
2014 
46 
*MOS 
Dokument 
ID300062.1
ZA Performance 
Konfiguration / Test Durchsatz lesend Durchsatz schreibend 
Initiale Konfig, RMAN/OS 260 MB/s 
CTAS, INSERT APPEND 100 MB/s 
Kernel-NFS 400 MB/s 
dNFS 1,9 GB/s 
Adaptive Direct IO, NOLOG, 
throughput bias, rs=128k, IPoIB 1,6 GB/s 
NFS over RDMA 3,5 GB/s 400 MB/s pro Pool 
Bündel-Test, Latency Mode 5,5 GB/s mit beiden Köpfen 1 GB/s 
ORION Test 600 MB/s (ein Kopf) 
_adaptive_direct_read=TRUE 55 MB/s (DOP=10) 
Mit Patch BUG 19339320 115 MB/s 
_direct_io_wslots=32, 
parallel_execution_message_size=6 
5536 
DOAG 
Konferenz 
2014 
47 
315 MB/s 
Schreiben mit vielen parallelen 
Sessions 1,2 GB/s 
Mit allen SSDs 1,7 GB/s 
NFS/IPoIB Durchsatz X4-2 / ZA 1,25GB/s pro Interface 
Ziel mit 2x 4G Wirespeed 7 GB/s 4 GB/s (sustained IO) 
Oracle-Angabe 27TB/h, 17,3GB/s on ZA
ZA Performance II 
• 3 Oracle SRs 
• 1 Oracle Bug… 
• Development is still working… 
DOAG 
Konferenz 
2014 
48
Vielen Dank für Ihre 
Aufmerksamkeit 
Jan Schreiber, Hamburg 
DOAG 
Konferenz 
2014 
49

Klonen von Exadata-Datenbanken mit der Oracle ZFS Appliance - Ein Erfahrungsbericht

  • 1.
    Klonen von ExadataDatenbanken mit der Oracle ZFS Appliance Ein Erfahrungsbericht DOAG Konferenz 2014 1
  • 2.
    database intelligence | opera1ons excellence | lizenzberatung • Oracle-Projekte seit 2003 • Data Warehouse und Business Intelligence Projekte • Wartungsverträge DOAG Konferenz 2014 2 „we go the extra mile“ Jan Schreiber, Senior Consultant Loopback.ORG GmbH
  • 3.
    KUNDE UND ANWENDUNG Deutschlandweiter Kommunikationsdienstleister DWH/BI Landschaft mit mehreren ExaData-Systemen Datenbeladungen von 2 TB pro Tag Tägliche Bereitstellung von Key-Performance-Indikatoren DOAG Konferenz 2014 3
  • 4.
    Ausgangssituation (physisch) RMAN 10 Gbit/sec. DOAG Konferenz 2014 4 RMAN 1 Gbit/sec. SAN Storage Produktionsumgebung Testumgebung FC
  • 5.
    Ausgangssituation (logisch) Post-Tasks: - Anonymisierung - Maskierung - Security-Refit - Database Links - … Produktion Produktion’ Test DOAG Konferenz 2014 5
  • 6.
    Ausgangssituation (logisch) ProduktionProduktion’ DOAG Konferenz 2014 6 Post-Tasks - Anonymisierung - Security-Refit - Database Links - … - Anonymisierung - Security-Refit - Database Links - … lots of times... - Anonymisierung - Security-Refit - Database Links - … Test Entwicklung T/E
  • 7.
    Nachteile • Platzverbrauch(ein n-faches der Originalvolumens) • Lange Laufzeiten • Hoher Netzwerk-Traffic durch Datenbewegung • Lange Anpassungszeiten für Post-Tasks • Insgesamt lange Bereitstellungszeiten • Test / Entwicklungsumgebungen wurden zu selten aktualisiert DOAG Konferenz 2014 7
  • 8.
    Oracle ZFS Appliance • Direkt an Exadata-Infiniband angeschlossen • Hohe Durchsatzraten bei der Datensicherung • ZFS bietet Snapshots und Klone • Schnelle Bereitstellung, geringer Platzverbrauch • HCC Kompression kann beibehalten werden • Native dNFS DOAG Konferenz 2014 8
  • 9.
    Oracle ZFS Appliance • „Application Engineered Storage: – Speziell für Datenbank-Storage entworfen • „17,3GB/s bei $23/MB/s“ • dTrace-GUI Analytics • Oracle Database Integration: SMU • EM Cloud Control Plugin • Thin Provisioning / Deduplication / Compression DOAG Konferenz 2014 9
  • 10.
    dTrace Analysis DOAG Konferenz 2014 10
  • 11.
    Infiniband-Integration Exa /ZS Exadata Rack 1 Leaf Switch 1 Leaf Switch 2 IB0 IB1 IB2 IB3 IB0 IB1 IB2 IB3 Oracle ZFS Storage Cluster Head 1 Oracle ZFS Storage Cluster Head 2 DOAG Konferenz 2014 11 Exadata Rack 2 Leaf Switch 1 Leaf Switch 2 Active IPMP Link Failover Link
  • 12.
    Configuring a SingleOracle ZFS Storage Appliance into an InfiniBand Fabric with Multiple Oracle Exadata Machines „Two Exadata racks can be cabled together to share the same IB fabric mesh. The merged Exadata racks can then be connected to a single clustered Oracle ZFS Storage Appliance. Successful setup requires adherence to some critical prerequisites and instructions, including physical cabling procedures. Be sure to reference the Oracle Exadata Database Machine Owner's Guide, Part IV: Extension Configuring a Single Oracle ZFS Storage Appliance into an InfiniBand Fabric with Multiple Oracle Exadata Machines of the Oracle Database Machine and Oracle Exadata Storage Expansion Rack“ http://www.oracle.com/technetwork/server-storage/sun-unified-storage/ documentation/multiple-exadata-zfssa-121013-2080035.pdf DOAG Konferenz 2014 12
  • 13.
    IB-Konfiguration • EnableLACP Link Aggregation • Active/Active-Konfiguration für IPMP nicht empfohlen* • Linux ifcfg-ibx: MTU=65520 • Connected Mode DOAG Konferenz 2014 13 *siehe MOS Note: 283107.1
  • 14.
    Durchsatz • InfinibandBus Transferrate 2.0Gb/sec • 40Gb/s mit QDR auf Eda-Seite • Erwarteter Durchsatz 4GB/s DOAG Konferenz 2014 14
  • 15.
    Klon-Erzeugung Filesystem-Klon: •offline • online mit recovery – Zugriff auf Archive Logs notwendig – Quell- und Klon-DB liegen in einem Filesystem oder sind per zfs send repliziert RMAN-Klon: • Sicherung der Quell-DB mit RMAN AS COPY auf ein (d)NFS-Share der ZS • RMAN Recovery auf der ZS • zfs clone • Start auf DB-Host per (d)NFS Mount DOAG Konferenz 2014 15 Data-Guard-Klon: • DataGuard statt RMAN • Point In Time Klon möglich • Verbindung mit Desaster Recovery
  • 16.
    Ausgewählte Strategie OracleRMAN Incremental Backup Oracle RMAN Incremental Backup MCL@t1 MCL@t2 MCL@t3 MCL@t4 MTD@t1 MTD@t2 MTD@t3 MTD@t4 S1 S2 S4 C4 S3 S5 S6 S7 S8 C1 C2 C3 C6 C5 C7 C8 C9 C10 C13 DOAG Konferenz 2014 16 C12 C11 Oracle ASM Database Source-­‐DB Loopback.ORG
  • 17.
    Ausgewählte Strategie OracleRMAN Incremental Backup Oracle RMAN Incremental Backup MCL@t1 MCL@t2 MCL@t3 MCL@t4 MTD@t1 MTD@t2 MTD@t3 MTD@t4 S1 S2 S4 C4 S3 S5 S6 S7 S8 C1 C2 C3 C6 C5 C7 C8 C9 C10 C13 DOAG Konferenz 2014 17 C12 C11 Oracle ASM Database Source-­‐DB Restored DB Loopback.ORG
  • 18.
    Ausgewählte Strategie OracleRMAN Incremental Backup Oracle RMAN Incremental Backup MCL@t1 MCL@t2 MCL@t3 MCL@t4 MTD@t1 MTD@t2 MTD@t3 MTD@t4 S1 S2 S4 C4 S3 S5 S6 S7 S8 C1 C2 C3 C6 C5 C7 C8 C9 C10 C13 DOAG Konferenz 2014 18 C12 C11 Oracle ASM Database Source-­‐DB Restored DB Master Test DB Loopback.ORG
  • 19.
    Ausgewählte Strategie MCL@t1MCL@t2 MCL@t3 MCL@t4 MTD@t1 MTD@t2 MTD@t3 MTD@t4 S1 S2 S4 DOAG Konferenz 2014 19 Snapshots Oracle RMAN Incremental Backup Oracle RMAN Incremental Backup C4 S3 S5 S6 S7 S8 C1 C2 C3 C6 C5 C7 C8 C9 C10 C13 C12 C11 Oracle ASM Database Source-­‐DB Restored DB Master Test DB Loopback.ORG
  • 20.
    Ausgewählte Strategie OracleRMAN Incremental Backup Oracle RMAN Incremental Backup MCL@t1 MCL@t2 MCL@t3 MCL@t4 MTD@t1 MTD@t2 MTD@t3 MTD@t4 S1 S2 S4 C4 S3 S5 S6 S7 S8 C1 C2 C3 C6 C5 C7 C8 C9 C10 C13 DOAG Konferenz 2014 20 C12 Oracle ASM Database Source-­‐DB Restored DB Master Test DB C11 Snapshots Klone
  • 21.
    Zusammenspiel RMAN undZA • RMAN AS COPY – 1,75x längere Laufzeit als AS BACKUPSET • Incrementally updated backup • ENABLE BLOCK TRACKING • BACKUP AS COPY SKIP INACCESSIBLE (ARCHIVELOG ALL) DOAG Konferenz 2014 21
  • 22.
    RMAN Konfiguration •RMAN Channel SBT_TAPE ohne Komprimierung, wenn Backup Software bereits komprimiert • RMAN Compression ist sehr CPU intensiv • Höhere Datenraten mit mehreren RMAN-Channels • Mount der Backup Shares mit Automounter oder init.d- Skript DOAG Konferenz 2014 22
  • 23.
    Datenbank-Kloning und ZA • Alle zusammengehörigen Dateien müssen konsistent geklont werden • Schreiboperationen müssen auf Redo ausgelagert werden • Archive Logs müssen berücksichtigt werden DOAG Konferenz 2014 23
  • 24.
    DB-Kloning mit SMU • Management der Kloning • iSCSI und dNFS • WebGUI und CLI • Oracle 10,11, RAC, Linux, Solaris DOAG Konferenz 2014 24
  • 25.
    DB-Kloning mit SMU DOAG Konferenz 2014 25
  • 26.
    SMU: Ablauf 1.Klon des Backup Share 2. Mount Klon auf Target Host 3. Start Temp-Instanz aus Backup, mount Controlfile, read parameters (maxSCN, FRA-Size) 4. Start Klon-DB mit neuem PFile 5. Recover Control File 6. Database Recovery 7. OPEN RESETLOGS 8. Recompile aller Schema-Objekte DOAG Konferenz 2014 26
  • 27.
    Host-Anbindung ZS •L2: FC, IB oder (10G) Ethernet • TCP/IP über Ethernet und IB • ZA Protokolle: ftp, smb, nfs, iSCSI • iSCSI: ZFS datasets (Volumes) als raw devices für ASM – Nur eine ASM-Instanz pro Host – iSCSI Volumes werden im Stück geklont DOAG Konferenz 2014 27
  • 28.
    Oracles dNFS •NFS-Implementation im Oracle-Prozess – Für Datenbank-Zugriffe optimiertes Verhalten – Für Datafiles, RMAN, Temp, Redo, Controlfiles… – Keine serverseitige Komponenten – Weniger CPU-Overhead • Von Oracle empfohlen für Datenbankfiles auf ZA Storage • 300% der kNFS-Performance in Linux – 100% in Solaris ;) DOAG Konferenz 2014 28
  • 29.
    k NFS I/OClient Oracle Process kernel NFS-Client NFS-Service I/O Client Oracle Process I/O Client Oracle Process File A File B File B DOAG Konferenz 2014 29 d NFS I/O Client Oracle Process NFS-Client NFS-Client NFS-Service I/O Client Oracle Process NFS-Client I/O Client Oracle Process File A File B File B USER KERNEL MODE USER KERNEL MODE Loopback.ORG
  • 30.
    SMU • KonfiguriertSnapshots und Klone von Oracle-Datenbanken auf ZFS-Storage • Oracle Datenbank 10,11 auf ZA • Solaris, Linux, Windows Clients, RAC • NAS & SAN • Snapshot, Clone, Rollback • Online, Offline, Standby Snapshots DOAG Konferenz 2014 30
  • 31.
    ZFS-Snapshots • ZFS:Allocate on Write • Änderungen werden stets auf neue Blöcke geschrieben • Nach einem Snapshot werden keine obsoleten Blöcke mehr gelöscht • Ein Klon ist ein beschreibbarer Snapshot • Schreiben auf einen Klon ist nicht langsamer DOAG Konferenz 2014 31
  • 32.
    ZFS-Konfiguration: ARC &ZIL • ARC Adaptive Read Cache in RAM oder auf SSD (Readzilla/L2ARC) – „Buffer Cache“ des Filesystems • ZIL ZFS Intent Log (Writezilla) – „Redo Log“ des Filesystems – Synchrones Schreiben – Asynchrones Schreiben geht ins RAM DOAG Konferenz 2014 32
  • 33.
    Schreiben in ZFS Get into a transaction group Update our in-memory buffer no yes DOAG Konferenz 2014 33 Create in-memory log record Sync? Commit transaction Commit ZIL record to disk Return
  • 34.
    ZFS logbias •Latency: mit ZIL • Throughput: ohne ZIL • Auf SSD schreibt es sich schneller • Aber viele Disks haben mehr Bandbreite als wenige SSDs DOAG Konferenz 2014 34
  • 35.
    ZIL Konfiguration •Gestripte SSDs für ZIL – Maximale Performance – Doppelfehler führt zu Datenverlust • Gespiegelte SSDs für ZIL – Maximale Schreibrate im Latency-Mode = Bandbreite eines SSD-Anschlusses DOAG Konferenz 2014 35
  • 36.
    ZFS Share Konfigurationfür Datenbanken Share Logbias Recordsize Primarycache Compression DATAFILES latency db_blocksize all LZJB Share Logbias Recordsize Primarycache Compression DATAFILES latency db_blocksize all LZJB INDIZES latency db_blocksize all off CONTROLFILES latency 128k all LZJB DOAG Konferenz 2014 36
  • 37.
    Pool-Konfiguration • Oracleempfiehlt verschiedene Pools für Datafiles und Redo • Mirrored Pool für Klon-Shares? • RAID-Z für RMAN, Archive Log? • HDDs können nur einem Pool zugewiesen werden • HDDs können nie mehr aus Pool entfernt werden • … Ein Pool pro Head • Oracle empfielt 4 Schreib-SSDs für Klone und inkrementelle Backups DOAG Konferenz 2014 37
  • 38.
    ZA „Cluster“ •2 Heads, n Storage Bays • Storage Bays sind untereinander querverbunden • HDDs des anderen Heads können importiert werden • Heads müssen einzeln konfiguriert werden • Readzilla pro Head, verliert nach Schwenk Status – Aufwärmphase nach dem Neustart DOAG Konferenz 2014 38
  • 39.
    Projekt-Konfiguration • ZFSdatasets heissen in der ZA Shares • Ein ZA Projekt ist ein Template für Shares • iSCSI Block Devices werden immer synchron geschrieben, daher kein Latency Mode • Auf keinen Fall Deduplikation verwenden, da umfangreiche Speicherstrukturen aufgebaut werden müssen (im RAM sollte der Cache sein) • Shares müssen in beiden Köpfen angelegt werden • User und Group ID in den Share Voreinstellungen anpassen (1001) • Eindeutiges Namens-Schema für Shares und Snapshots einhalten! DOAG Konferenz 2014 39
  • 40.
    SMU-Konfiguration • ArchiveLogs müssen in von Datafiles getrenntes Share • Ab SMU 1.2 können Datenbank-Shares auf beiden Cluster- Köpfen liegen • Bei einem RMAN Backup AS COPY auf ein Share darf sonst nichts auf dem Share liegen DOAG Konferenz 2014 40
  • 41.
    Manuelle Klon-Konfiguration •Löschen der obsoleten Snapshots automatisieren • Klon Refresh erfordert einen neuen Snapshot • Löschen des Snapshots löscht alle Klone mit DOAG Konferenz 2014 41
  • 42.
    Client-Konfiguration • LinuxMount Options – rw, bg, hard, nointr, rsize=1048576, wsize=1048576, tcp, vers=3,timeo=600 – NFS Version 3 vorausgesetzt • Solaris – rw ,bg, hard, nointr, rsize=1048576, wsize=1048576, proto=tcp, vers=3, forcedirectio DOAG Konferenz 2014 42
  • 43.
    Linux Native NFSabschalten # chkconfig portmap on # service portmap start # chkconfig nfs on # service nfs start # chkconfig nfslock on # service nfslock start DOAG Konferenz 2014 43
  • 44.
    Linux /etc/sysctl.conf hKp://serverfault.com/quesPons/327947/set-­‐up-­‐simple-­‐infiniband-­‐block-­‐ storage-­‐srp-­‐or-­‐iser net.ipv4.tcp_timestamps=0 net.ipv4.tcp_sack=0 net.core.netdev_max_backlog=250000 net.core.rmem_max=16777216 net.core.wmem_max=16777216 net.core.rmem_default=16777216 net.core.wmem_default=16777216 net.core.optmem_max=16777216 net.ipv4.tcp_mem="16777216 16777216 16777216" net.ipv4.tcp_rmem="4096 87380 16777216" net.ipv4.tcp_wmem="4096 65536 16777216" DOAG Konferenz 2014 44
  • 45.
    Linux RDMA •NFS over RDMA brachte die besten Ergebnisse • Offiziell von Oracle nicht unterstützt DOAG Konferenz 2014 45
  • 46.
    Klonen des OracleHomes 1. ORACLE_HOME Master auf der ZA erstellen 2. Klonen auf der ZA 3. Mount des geklonten Shares 4. Konfigurieren des ORACLE_HOME Shares mit dem „clone“ Perl Skript* DOAG Konferenz 2014 46 *MOS Dokument ID300062.1
  • 47.
    ZA Performance Konfiguration/ Test Durchsatz lesend Durchsatz schreibend Initiale Konfig, RMAN/OS 260 MB/s CTAS, INSERT APPEND 100 MB/s Kernel-NFS 400 MB/s dNFS 1,9 GB/s Adaptive Direct IO, NOLOG, throughput bias, rs=128k, IPoIB 1,6 GB/s NFS over RDMA 3,5 GB/s 400 MB/s pro Pool Bündel-Test, Latency Mode 5,5 GB/s mit beiden Köpfen 1 GB/s ORION Test 600 MB/s (ein Kopf) _adaptive_direct_read=TRUE 55 MB/s (DOP=10) Mit Patch BUG 19339320 115 MB/s _direct_io_wslots=32, parallel_execution_message_size=6 5536 DOAG Konferenz 2014 47 315 MB/s Schreiben mit vielen parallelen Sessions 1,2 GB/s Mit allen SSDs 1,7 GB/s NFS/IPoIB Durchsatz X4-2 / ZA 1,25GB/s pro Interface Ziel mit 2x 4G Wirespeed 7 GB/s 4 GB/s (sustained IO) Oracle-Angabe 27TB/h, 17,3GB/s on ZA
  • 48.
    ZA Performance II • 3 Oracle SRs • 1 Oracle Bug… • Development is still working… DOAG Konferenz 2014 48
  • 49.
    Vielen Dank fürIhre Aufmerksamkeit Jan Schreiber, Hamburg DOAG Konferenz 2014 49