Database as a Service

Werbung
update
Database as a Service
Eine Oracle Private Cloud Datenbank-Strategie
Ein Whitepaper der avato consulting ag
Seite 2/33
update
Gegenstand
Dieses Dokument beschreibt eine Strategie für Database as a Service auf Basis einer Oracle Cloud. Betrachtet
werden Anforderungen, technologische Konzepte, Architekturen, Migrationsstrategien sowie Erfolgsfaktoren
bei der Einführung.
Control Table
Contact Person:
Ronny Egner
Lutz Fröhlich
Gregor Bister
Classification
White Paper Oracle Database as a Service
Functional Applicability:
Last Revision Date:
27.01.2013
Version:
1.0
Change History
Version
Date
Revision Description
Revision Details, Authors
0.1
Initial Draft
Gregor Bister
1.0
Anforderungskriterien, Architektur
Ronny Egner, Lutz Fröhlich
& Erfolgsfaktoren
Seite 3/33
Inhalt
update
1 Cloud-Strategie für Oracle Datenbanken . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2 Klassische Oracle Cloud-Konzepte auf Basis Oracle 11.x . . . . . . . . . . . . . . . . . 4
2.1
2.2
2.3
Database Machine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Database Instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Database Schema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3 Kriterien & Anforderungen für die Oracle-Cloud der Zukunft . . . . . . . . . . . . 5
3.1 Kosten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.1.1 Investition & Return-on-Investment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.1.2 Investitionssicherheit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.1.3 Betriebskosten / Kostenverrechnung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.2 Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.2.1 Skalierbarkeit / Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.2.2 Flexibilität / Individualität der Services & Agilität der Serviceanpassung . . . . . . . . 7
3.2.3 Quality of Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.2.4 Compliance & Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.3
Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.3.1 Managebility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.3.2 Flexibilität bei der Serviceerbringung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.3.3 Reduktion von Komplexität . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.3.4 Release- & Patch-Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
4 Entwicklung einer zeitgemäßen Plattformstrategie . . . . . . . . . . . . . . . . . . . . . . 9
4.1Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
4.2 Architektur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
4.2.2 Was ist zu beachten? Ein paar Erfahrungen aus der Praxis . . . . . . . . . . . . . . . . . . . 21
4.2.3 Virtualisierung – Ja oder Nein und wenn ja, wo? . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4.2.4 Lizenzierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
5 Erfolgsfaktoren bei der Umsetzung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
5.1
5.2
5.3
5.4
Flexibilität der Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Database Provisioning & Onboarding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
5.2.1 Ressourcenanforderung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Migrationsstrategie und -support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Modelle zur Kostenverrechnung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
6 Betrieb einer Oracle Cloud . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
7 Ausblick: Oracle Private Cloud / Oracle 12c . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
7.1
Oracle Private Cloud . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
7.2
Oracle 12c: Pluggable Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
8 Links & Literatur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Seite 4/33
1
update
Cloud-Strategie für Oracle Datenbanken
Manch einem mag es vorkommen wie die Quadratur des Kreises: die Anforderungen an eine Oracle Cloud
unter einen Hut zu bringen, eine zeitgemäße Lösung zu entwickeln und „Alt-Systeme“ mit überschaubarem
Aufwand auf eine Oracle Cloud zu migrieren. Dabei ist es heute keine Frage mehr, ob für Datenbankkonsolidierung Cloud-Computing die sinnvollste Plattformstrategie ist. Unbestritten sind die Kostenvorteile und die Flexibilität des Cloud-Computing.
Es ist eher in der Diskussion, ob eine Public Cloud oder eine Private Cloud genutzt wird, ob universelle Infrastruktur Cloud oder spezialisierte Datenbank Cloud die richtige Antwort auf aktuelle und zukünftige Herausforderungen darstellen. Die Frage nach Public Cloud oder Private Cloud in Bezug auf Datenhaltung ist für die
meisten Unternehmen durch regulatorische Anforderungen, benötigte individuelle Services und langfristige
Kostenmodelle schnell beantwortet: Datenbanken gehören in eine Private Cloud.
Somit bleiben wenige Fragen: Zunächst ist zu klären, ob man mit einer Private Infrastructure Cloud (IaaS, Infrastructure as a Service) oder einer spezialisierten Datenbank Cloud (PaaS, Platform as a Service) besser fährt.
Wir wollen diese Frage hier für Oracle-Datenbanken intensiver betrachten und dies unter folgenden Gesichtspunkten tun: Was sind die Anforderungen an eine Oracle Cloud, was sind die Erfolgsfaktoren bei einer Implementierung.
Zudem wollen wir beleuchten, welche Services Oracle zukünftig offerieren wird.
2
Klassische Oracle Cloud-Konzepte auf Basis Oracle 11.x
Wenn Anforderungen an einen Database-Service formuliert werden um Cloud-Ansätze zu implementieren,
treten immer sehr unterschiedliche oder sogar konkurrierende Anforderungen auf. Im Ergebnis findet man
heute Cloud-Ansätze mit sehr unterschiedlichen Eigenschaften sowie Reifegraden implementiert. Dabei lassen sich die Ansätze, so verschieden sie auch sein mögen, in drei Kategorien zusammenfassen und zuordnen:
• Database Machine: Dedizierter physikalischer oder virtueller Server
• Database Instance: Dedizierte Datenbank auf einer Shared Plattform
• Database Schema: Schema in einer Shared Database
Allen Ansätzen sind Zielsetzungen wie Kostenoptimierung, Flexibilisierung der Services sowie Skalierbarkeit
gemein. Zudem werden in den meisten Fällen Datenbanken auf eigens hierfür konzipierten und optimierten
Plattformen betrieben. Manche Individualität der Plattform wurde in der Praxis dadurch gemindert, dass Basis-Technologien wie Hardware, Netzanbindung oder Storage vereinheitlicht sind.
Seite 5/33
2.1
update
Database Machine
Der Begriff Database Machine lehnt sich am Konzept dedizierter Systeme an. Er beschreibt Installationen, bei
denen eine Datenbank auf dedizierten physikalischen oder virtuellen Servern als eigenständige Datenbank
betrieben werden. Die Database Machine basiert meist auf einer sogenannten Infrastructure Cloud (IaaS)
und nutzt standardisierte oder virtualisierte Infrastruktur (Hardware, Storage, Virtualisierung sowie OS).
2.2
Database Instance
Database Instance beschreibt die klassische Datenbank-Instanz, die sich mit weiteren Datenbank-Instanzen
einen physikalischen oder virtuellen Server teilt. Realisieren lässt sich dies sowohl auf einer Infrastructure
Cloud als auch auf einer für Datenbanken spezialisierte Cloud (PaaS).
2.3
Database Schema
Das Database Schema ist in jüngster Vergangenheit gebräuchlicher geworden. Hier werden Datenbanken als
Schema in eine gemeinsame Datenbank konsolidiert. In Kombination mit RAC kann eine Datenbank dann
mehrere (virtuelle) Server nutzen und so eine große Skalierungsmöglichkeit für viele Schemas bieten. Der
Ansatz verspricht die größten Kostenvorteile, birgt aber eine Vielzahl von Limitierungen. Abhilfe verspricht
hier das Konzept der Pluggable Database aus der neue Version 12c (s.u. 7.2 Oracle 12c: Pluggable Database).
3
Kriterien & Anforderungen für die Oracle-Cloud der Zukunft
Bevor wir Vor- und Nachteile einzelner Konzepte beurteilen, wollen wir typische Anforderungen an einen
Database Service sammeln und hieraus eine Plattformstrategie ableiten.
Was benötigt der Kunde? Er benötigt einen flexiblen Datenbank-Service zu geringen Kosten und in der Regel
hoher Verfügbarkeit. Der Service soll den Compliance- und Security-Richtlinien des Unternehmens entsprechen und das Provisioning sollte möglichst zügig und unkompliziert erfolgen können (Self-service-Portal).
Kosten
Services
Operations
Investition & RoI
Skalierbarkeit / Performance
Manageability
Investitionssicherheit
Flexibilität / Individualität der
Flexibilität bei der Serviceerbringung
Services & Agilität der
Serviceanpassung
Betriebskosten & Kostenverrechnung
Quality of Service
Reduktion von Komplexität
Compliance & Security
Release- & Patch-Management
Seite 6/33
update
3.1Kosten
Die Kosten einer Cloud fallen in aller Regel geringer aus als die Summe der Kosten entsprechender Einzelsysteme. Die Kostenvorteile basieren im Wesentlichen auf der Verwendung von preiswerten Standardkomponenten und der effizienteren Nutzung solcher Komponenten. Zu beachten sind aber auch ganz wesentlich
Lizenzkosten. Hier ergeben sich in den meisten Fällen klare Vorteile, wenn man auf eine dediziert Datenbank-Cloud (PaaS) setzt und primär Oracle Software wie OEL und OVM (Oracle Enterprise Linux, Oracle Vitual
Machine) zum Einsatz kommt.
3.1.1 Investition & Return-on-Investment
Möglichst geringe Investitionen fördern im Allgemeinen einen schnellen Return-on-Investment. Ideal für jede
Investition ist, wenn ein Return-on-Investment noch innerhalb eines Budgetjahres erreicht werden kann. Deshalb sollten soweit wie eben möglich Standard-Komponenten, die sich bereits im Betrieb bewährt haben,
eingesetzt werden. Hier sind vor allem x86-Hardware und Storage zu betrachten. Möglichst viel sollte out-ofthe-box genutzt werden können, ohne dass aufwändige, teure und zeitraubende Anpassungen und Zertifizierungen notwendig werden. Durch den primären Einsatz von Oracle-Produkten (zum Beispiel Oracle Linux als
Betriebssystem)kann vieles ohne umfangreiche Anpassungen und eigenes Engineering direkt eingesetzt werden.
Um die Investitionen zu minimieren, kann die Strategie auch lauten: Aufbau einer möglichst einfach skalierbaren Cloud und sukzessiver Move von Anwendungen auf die Oracle Cloud, zum Beispiel im Rahmen des
nächsten Tech-Refresh oder der nächsten Release-Migration.
3.1.2 Investitionssicherheit
Um eine langfristige Investitionssicherheit zu gewährleisten, sollten keine umfangreichen individuellen Standards für einen PaaS entwickelt werden. Entweder werden Standard-Komponenten des Unternehmens oder
fertige Komponenten des Herstellers eingesetzt. Die Strategie des Herstellers muss bei allen Architekturentscheidungen im Auge behalten werden. Oracle wird zukünftig eine immer stärkere Integration des eigenen
Produktportfolios verfolgen und versuchen, möglichst umfangreiche Vorteile durch „Engineered Systems“ zu
bieten. Das verspricht langfristig auch Kostenvorteile. Um eine langfristige Plattformstrategie entwickeln zu
können, sollte man ein möglichst genaues Bild zukünftiger Kundenanforderungen haben. Zudem sollte die
Architektur der Plattform eine größtmögliche Flexibilität bei der Erweiterbarkeit und Managebarkeit bieten.
Hierzu gehören auch Integration neuer Hardwarekomponenten, Software-Releases, Services sowie Service-Provider.
Seite 7/33
update
3.1.3 Betriebskosten / Kostenverrechnung
Betriebskosten sind stets ein wesentlicher Aspekt bei Plattformentscheidungen. Hier sind in erster Linie der
Footprint im Rechenzentrum sowie die Aufwände im Operations zu nennen. Zudem sollte hier immer betrachtet werden, wie gut die Management-Tools sind, welche Kosten hier entstehen und wie deren Einbindung in die vorhandene Tool-Landschaft möglich ist.
Die Einbindung der Plattform in vorhandene Operation-Standards (Tools, Prozesse) sowie in andere Services
wie zentrales Monitoring sind weitere Aspekte, die die Betriebskosten einer Plattform wesentlich beeinflussen.
Neben den Kosten spielen aber auch die Kosten-Verrechnungsmodelle eine zentrale Rolle. Die Kosten dedizierter Systeme sind im Allgemeinen einfach zu ermitteln, bei einer Cloud ist dies eine Herausforderung.
Zentrales Anliegen eines Modells sollte hier immer sein: Die Verrechnung verursachergerecht, transparent
und so einfach einfache wie möglich zu gestalten. Zudem sollte sie dem Kunden Möglichkeiten aufzeigen,
durch Ressourcen-Einsparungen auch zu wirklichen Kostenreduktionen zu gelangen und sie sollten nicht im
Widerspruch zur Strategie des Unternehmens stehen. Als Stellschrauben bieten sich neben dem Storage,
CPU, Memory sowie I/O an.
3.2Services
3.2.1 Skalierbarkeit / Performance
Die Skalierbarkeit eines Services basiert vor allem darauf, dass dem Nutzer ein einheitliches Interface für seine Anwendungen zur Verfügung gestellt wird. Zusätzliche Ressourcen müssen zeitnah und ohne wesentliche
Einschränkungen bereitgestellt werden können. Das bedeutet auch, dass sich Anwendungen ohne größeren
Aufwand auf leistungsstärkere Plattformen migrieren lassen, also auch ohne Anpassungen aus einer Oracle
Cloud auf eine dedizierte Plattform wie beispielsweise Exadata migriert werden können.
3.2.2 Flexibilität / Individualität der Services & Agilität der Serviceanpassung
Durch Plattformen wie Amazon AWS haben sich auch die Anforderungen an PaaS verändert. Rapid Deployment oder ein On-demand Provisioning über ein Self-Service-Portal sind heute gefragt. Soll die Plattform auch
Kurzzeitnutzung, beispielsweise für Test- und Demosysteme, bieten? Wie flexibel kann die Ressourcen-Anpassung (CPU, Speicher, Storage) durchgeführt werden?
Anforderungen an das Release-Management und Maintenance sowie spezielle Features spielen in der Diskussion eine große Rolle.
3.2.3 Quality of Service
Unter Quality of Service sollen hier Service Level Anforderungen verstanden werden. Was kann eine Plattform
grundsätzlich in Bezug auf Verfügbarkeit, Performance, Security sowie Reaktions- und Wiederherstellungszeiten leisten?
Wie störanfällig ist die Plattform, wie lassen sich Incidents auf der Plattform isolieren und reduzieren und wie
sind die Behebungszeiten von Incidents und Problems, welche Analyse-Möglichkeiten bietet die Plattform.
Seite 8/33
update
3.2.4 Compliance & Security
Ist auf Basis der gewählten Architektur die Umsetzung von Compliance- und Security-Anforderungen möglich? Da solche Anforderungen länderspezifisch oder auch anwendungsspezifisch sein können, muss die Oracle Cloud hier auch unterschiedliche Level ermöglichen. Die Auditierung muss möglich bleiben und die „Segregation of Duties“ darf nicht beeinträchtigt werden. Zudem müssen sich Anforderungen wie die Härtung von
Datenbanksystemen, die Trennung der Zuständigkeiten, Authentifizierung, Autorisierung, Zugriffskontrolle,
Verschlüsselung, Anonymisierung sowie die Auditierung und die Rückverfolgbarkeit und Wiederherstellbarkeit historischer Daten genauso implementieren lassen wie auf dedizierten Systemen.
3.3
Operations
Im Operations sollten alle Standardtasks mit möglichst geringen Aufwänden durchgeführt werden können. In
einer Mischumgebung von Oracle Cloud und dedizierten Systemen sollten gleiche Aufgaben nach Möglichkeit
mit gleichen Tools erledigt werden. Die Plattform muss sich zudem ohne große Aufwände in bestehende Operations-Prozesse und –Tools integrieren lassen.
Eine shared Plattform wird zunächst einmal mit deutlich reduzierten Aufwänden für das Patch-Management
verbunden. Die Herausforderung liegt hier weniger im Patchen als vielmehr in der Organisation des Patch-Managements.
Eine einfache und einheitliche Management-Plattform ist erforderlich, mit der sich alle wesentlichen Tätigkeiten ausführen lassen. Für Oracle-Datenbanken ist fast immer der Enterprise Manager die sinnvollste Lösung.
3.3.1 Manageability
Wie oben bereits erwähnt, ist der Enterprise Manager 12c Cloud Control für Oracle-Datenbanken meist das
geeignetste Werkzeug, für eine Oracle-Cloud ist er nach unserer Ansicht auf jeden Fall anzuraten, auch wenn
die Funktionalität durchaus auch mit anderen Tools nachgebildet werden kann.
3.3.2 Flexibilität bei der Serviceerbringung
Selbst bei Nutzung unterschiedlicher Dienstleister oder bei einem Wechsel von Dienstleistern sollten Anwendungen ohne großen Aufwand von einem Service Provider zu einem anderen verlagert werden können. Wenn
unterschiedliche Support-Einheiten tätig sind, Off- / Near-Shoring von bestimmten Support-Tätigkeiten oder
ein globaler 24*7 Support eine Rolle spielen, ist es zwingend erforderlich, dass eine Oracle Cloud entsprechende Rollen- und Security-Konzepte zulässt.
Sollten Compliance-Anforderungen Separierungen oder Besonderheiten für Teile der genutzten Daten erfordern, muss dies auch auf einer Shared-Plattform realisiert werden können.
3.3.3 Reduktion von Komplexität
Um die Komplexität erfolgreich zu reduzieren, sind Plattformstandardisierung, zentrales Plattform-Management, Reduktion von Releases, Vereinheitlichung von Tools und Dokumentation mit hohem Reifegrad erforderlich.
Seite 9/33
update
3.3.4 Release- & Patch-Management
Was ist die Realität in heutigen Infrastrukturen? Meist wird eine Vielzahl von Releases genutzt. Die Herausforderung der Oracle Cloud ist es nun, die Anzahl auf ein sinnvolles Maß zu reduzieren. Dies bedeutet, dass in
aller Regel mehr als 1 Release zur Verfügung gestellt werden muss. Wir empfehlen jedoch, maximal 2 Releases zuzulassen.
Die Patch-Strategie muss den Anforderungen des Unternehmens gerecht werden. Es ist zu empfehlen, ein
vollständiges Lifecycle-Management aufzubauen. Sie gelangen hier zu unserem Whitepaper „Oracle Lifecycle- & Security-Management“. Als Tool ist hier der Enterprise Manager bzw. der Nachfolger Cloud Control die
erste Wahl.
4
Entwicklung einer zeitgemäßen Plattformstrategie
Anforderungen an Service
Private Cloud oder Public Cloud: Für Datenbanken gelten im Grunde fast immer sehr hohe Compliance und
Security-Anforderungen, wodurch sich in aller Regel eine Public Cloud verbietet. Eine Hybrid-Strategie, bei
der neben Private Cloud auch Public Cloud-Dienste für Kurzzeit-Anforderungen genutzt werden, ist im Allgemeinen weniger zu empfehlen. Wenn, dann bietet es sich an, die Entwicklungsumgebungen in die Public
Cloud und Test sowie Produktion in die Private Cloud zu legen
Um möglichst flexible Services bieten und wesentliche Anforderungen an einen Datenbank-Service erfüllen
zu können, wird in aller Regel eine Standard Infrastruktur Cloud (IaaS) nicht ausreichen. Eine Oracle Cloud-Strategie wird sich mit steigenden Anforderungen an den Service auf Basis einer PaaS-Architektur (Platform as a
Service) wesentlich einfacher, flexibler und kostengünstiger realisieren lassen.
Public Cloud
Private Cloud
PaaS auf Basis Public Cloud
Oracle as a Service
IaaS auf Basis Public Cloud
IaaS auf Basis Private Cloud
PaaS
IaaS
Compliance & Security-Anforderungen
4.1Services
Aus Sicht des Kunden soll eine Anwendung genutzt werden, und es wird hierzu eine Datenbank benötigt. Die
soll schnell, kostengünstig und hochverfügbar sein, muss schnell implementiert werden und sehr einfach
skalieren. Im Allgemeinen ist für Kunden die Frage nach einem dediziertem System oder einer Oracle Cloud
zweitrangig.
Die Erfahrung zeigt: Mehr als 80% aller Oracle-Implementierungen sind in der Regel konsolidierungs- und
Cloud-fähig.
Seite 10/33
update
4.2Architektur
Um auf Basis der oben erwähnten Anforderungen eine geeignete Plattformstrategie zu entwickeln, werden
heute eine Reihe von Grundsätze stets ins Feld geführt: Standardisierung, Automatisierung sowie Virtualisierung auf Basis einer x86 Hardware-Plattform stehen im Vordergrund der Betrachtung. Im Ergebnis ließen sich
nahezu alle formulierten Anforderungen auf Basis einer x86 basierten Oracle Cloud abbilden. Die in den Unternehmen entwickelten Plattformen entsprechen vielfach den aktuellen Technologie-Standards. Sie unterscheiden sich gegenüber einer Oracle Cloud aber in wenigen. So werden beispielsweise in einer Oracle Cloud
sinnvollerweise OEL sowie Oracle VM (Oracle Enterprise Linux, Oracle Virtual Machine) eingesetzt, im Bereich
Exadata wird selbstverständlich kein Standard-Storage eingesetzt.
Application
Database as a Service
Oracle x86 Cloud
•
•
•
•
•
Oracle 11gR2 / 10.x
Oracle Enterprise Linux 5.6 x64
RAC (optional)
ASM (optional)
OVM (optional)
Exadata
•
•
•
•
Oracle 11gR2
Oracle Enterprise Linux 5.6 x64
RAC
ASM
X86-Hardware
Standard-Storage
Database as a Service ermöglicht für alle Anwendungen eine einheitliche Applikationsschnittstelle. Um die
Skalierbarkeit zu erhöhen oder um Hochlastdatenbanken zu betreiben, wird eine sinnvolle Plattformstrategie
durch Oracle Exadata ideal ergänzt.
Eine zeitgemäße Plattformstrategie setzt sinnvollerweise auf so genannte „Standardhardware“ auf. Dies sind
heute X86-kompatible Server mit Intel- oder AMD-CPUs welche von vielen verschiedenen Herstellern (u.a.
HP, IBM, Dell, ...) in verschiedenen Größen (von 1 bis 160 Cores und von ein paar GB bis 4 TB Arbeitsspeicher)
geliefert werden können.
Seite 11/33
update
Die verschiedenen Komponenten sind in der folgenden Tabelle dargestellt und werden nachfolgend erläutert:
Database Management
Oracle Enterprise Manager 11
Database DR
Oracle Data Guard 11gR2
3rd Party Applikationen
Beliebiger Hersteller
Database Software
Oracle 11gR2 (11.2.0.x)
Automatic Storage
Oracle Automatic Storage Manager (ASM 11.2)
Management (ASM)
O/S Clusterware
Oracle Grid Infrastruktur (CRS 11.2)
O/S
Oracle Enterprise Linux 5.x oder 6.x 64-bit Operating System
Netzwerk
Ethernet für Enduser und Applikationen; Infiniband (wenn nicht vorhanden, 10 Gbit Ethernet) für den Interconnect
X86 Hardware
Beliebiger Hersteller
Storage
Beliebiger Hersteller; FC-SAN empfohlen, iSCSI nur bei geringerem
I/O
4.2.1.1Design-Grundsätze
Das Design der Plattform folgt zwei Grundsätzen:
KISS (Keep it Simple & Stupid)
Kein Single-Point-of-Failure
„KISS“ steht für „Keep it Simple
Stupid“ und bezeichnet eine
Maxime, bei der das einfachere Verfahren meist auch das
bessere ist.
Die andere Maxime bezieht
sich auf alle Komponenten einer Plattform, zielt also auch
auf einen durchgehend redundanten Aufbau der gesamten
Infrastruktur – angefangen von
der Stromverkabelung über
die Server und den Storage bis
hin zur Anbindung der Applikationen und Benutzer.
Seite 12/33
update
4.2.1.2 Storage und Protokolle
Als Storage für die Oracle Cloud kann im Grund jede Art von Storage jedes Hersteller verwendet werden.
Einschränkungen gelten aber für die verwendeten Protokolle: So können für den Aufbau eines Clusters sowohl dateibasierte Protokolle wie NFS als auch blockbasierte Protokolle wie iSCSI oder normal SCSI über Fibre Channel zum Einsatz kommen. Allerdings hat die Wahl des Protokolls Auswirkungen auf Verfügbarkeit und
Performance:
NFS
iSCSI, SCSI über Fibre Channel
Das Network File System (NFS) stammt ursprünglich von SUN und liegt heutzutage in
Version 4 vor. Es arbeitet dateibasiert und
kann als „Shared Storage“ für einen RAC und
dessen Datenbanken benutzt werden. Von
Vorteil ist, dass ein NFS sehr flexibel ist, was
die Speicherplatzzuteilung angeht und keine
Fibre Channel-Infrastruktur benötigt wird.
Problematisch sind die durch den Transport
über Ethernet hervorgerufenen relativ großen
Latenzen (1-2ms) im Vergleich zu Fibre Channel. Dies wirkt sich negativ auf die gesamte
IO-Leistung aus. Zudem muss Hochverfügbarkeit des NFS-Storages selber sowie die Kommunikation zwischen NFS-Storage und Datenbankserver gewährleistet werden. Als weitere
Nachteile sind der hohe Konfigurationsaufwand für die Platzierung der Voting Disk (diese kann nicht direkt auf einem NFS liegen,
sondern muss über Umwege angebunden
werden) sowie die je nach NFS-Server gar
nicht oder nur mit hohem Aufwand vorhandene Möglichkeit Strechted Cluster aufzubauen
zu nennen.
iSCSI ist genau wie SCSI über Fibre Channel ein
blockbasiertes Protokoll. Die Server nehmen
den präsentierten Speicherplatz – die „LUN“
– als weitere Festplatte im System wahr. Bei
iSCSI werden die Daten ähnlich wie bei NFS
per Ethernet übertragen während bei einem
klassischem Fibre Channel SAN die Daten per
Lichtwellenleiter übertragen werden. iSCSI
hat demnach genau wie NFS eine relativ hohe
Latenz von 1-2 Millisekunden(ms, 10-3 Sekunden) im Vergleich zu wenigen Mikrosekunden
(µs, 10-6 Sekunden). Ebenfalls ist die Realisierung von fehlertoleranten Verbindungen beim
Einsatz von iSCSI schwieriger.
Obwohl RACs auch mit NFS als Protokoll betrieben werden können, ist das bevorzugte Protokoll aufgrund der
Probleme und Einschränkungen von NFS ganz klar entweder FC-SCSI oder - wenn keine Fibre Channel-Infrastruktur zur Verfügung steht - iSCSI.
Im Zusammenspiel dieser Protokolle mit ASM (Automatic Storage Management) können sehr leicht hochverfügbare Cluster errichtet werden, die Verfügbarkeiten jenseits von 99,99% erreichen können.
Seite 13/33
update
Costs per Unit
4.2.1.3Hardware
Als Hardwareplattform kann jedes X86-kompatible System zum Einsatz kommen. Ob hierbei CPUs von Intel
oder AMD eingesetzt werden spielt ebenfalls keine Rolle. Bei der Anzahl der CPUs muss eine genaue Planung
erfolgen, da jede vorhandene CPU auch lizenziert werden muss. Ausnahmen von dieser Regel sind im Abschnitt „Virtualisierung und Lizenzierung“ weiter unten beschrieben.
Die Größe des Arbeitsspeichers lässt sich mit dem Satz „Je mehr, desto besser“ umschreiben. Hierbei sollte
die Wirtschaftlichkeit allerdings nicht vernachlässigt werden. Häufig entwickelt sich der Preis und die damit
einhergehende Größe des Arbeitsspeichers bis zu einem bestimmten Punkt linear um dann exponentiell zu
steigen. Dieser Punkt stellt die wirtschaftlich sinnvollste Größe des Arbeitsspeichers dar.
32
64
128
Memory
Außerdem sollten möglichst große interne Festplatten gewählt werden um möglichst viele unterschiedliche
Datenbankversionen installieren zu können.
Neben weiteren Standardkriterien wie redundanten Netzteilen und Lüftern ist zum einen die Anzahl der freien PCI-Slots für die Ausbaubarkeit und zum anderen die Anzahl der Netzwerkschnittstellen wichtig. In die
freien PCI-Slots kommen später unter anderem Fibre Channel-HBAs für den Anschluss des Servers an ein SAN
oder weitere Netzwerkkarten (Ethernet oder Infiniband).
In jedem Fall müssen die HBAs für den Anschluss an egal welches Netzwerk (Ethernet, Infiniband, Fibre Channel) redundant ausgelegt werden um einen Single Point of Failure zu vermeiden. Best Practise ist jeweils zwei
verschiedene HBAs – ggf. mit mehreren Ports pro HBA – zu verwenden.
Es wird empfohlen alle Server im Cluster gleichmäßig auszustatten, auch wenn eine unterschiedliche Ausstattung der Systeme möglich ist. In diesem Fall kommt dem Ressourcenmanagement eine noch wichtigere Rolle
zu.
Seite 14/33
update
4.2.1.4Netzwerke
Ein weiteres Kriterium bei der Auswahl der Hardware ist die Entscheidung welche Technologie für den Interconnect benutzt werden soll. Gegenwärtig stehen zwei zur Auswahl: Ethernet und Infiniband.
Ethernet
Infiniband
Ethernet ist die „Standardtechnologie“ zur Realisierung eines Interconnects. Aufgrund der relativ hohen Latenz von Ethernet hat dies
Auswirkungen auf die Performance
des Gesamtsystems. Neben der Latenz ist hier die Bandbreite ein weiterer entscheidender Faktor. Hier
sollte 1 Gbit/s als Mindestanforderung für kleine RACs gelten.
Infiniband ist ein speziell auf geringe
Latenz hin entwickeltes Protokoll. Es
weist Latenzen im zweistelligen Nanosekundenbereich auf. Das ist ein
Faktor 10-5 weniger im Vergleich zu
Ethernet. Die Bandbreite beträgt bis
zu 40 Gbit/s. Infiniband eignet sich
vor allem für große Cluster mit viel
Arbeitsspeicher und hoher Last. Leider benötigt Infiniband eine eigene
Infrastruktur.
Die erste Wahl bei großen Clustern sollte Infiniband sein. Sollte dies aus Kostengründen nicht favorisiert werden, so sollte zumindest die Wahl auf 10 Gbit/s Ethernet („10 GE“) fallen, da diese Technologie genügend
Bandbreite für den Interconnect für die nächsten Jahre bietet. In keinem Fall sollten große Cluster mit 1 Gbit/s
aufgebaut werden, da dies sehr schnell zum Flaschenhals wird.
4.2.1.5 Betriebssystem
Auf X86-kompatibler Hardware läuft eine Vielzahl unterschiedlicher Betriebssysteme. Nur Windows, x86 Solaris und Linux sind derzeit für Oracle Datenbanken sinnvoll.
Während Windows ein Betriebssystem mit unterschiedlichen Versionen ist, bezeichnet Linux eine ganze
Gruppe von unterschiedlichen Distributionen: SuSE Linux, Debian, Red Hat, Ubuntu, Kubuntu, Gentoo, Oracle
Enterprise Linux, Cent OS und viele mehr. Von diesen Distributionen sind aktuell nur vier von Oracle für den
Einsatz mit der Oracle Datenbank zertifiziert:
•
•
•
•
Asianux
Red Hat Enterprise Server
SuSE Linux Enterprise Server
Oracle Linux Enterprise Server
Die Empfehlung für das Betriebssystem für die Oracle Cloud fällt in diesem Paper auf Linux, genauer auf OEL
(Oracle Enterprise Linux) in der aktuellsten Version 5.x oder sofern möglich 6.x.
Seite 15/33
update
Die Gründe für die Entscheidung gegen Windows und für Linux liegen vor allem in dem Fakt, dass Oracle
selbst auf Linux entwickelt und auf alle anderen Plattformen im Anschluss portiert. Ebenfalls ist die installierte Basis von Oracle unter Linux weltweit gesehen am größten. Weiterhin gibt es nur relativ wenige große RAC
Cluster, die auf Windows laufen, wohingegen die größten Cluster sowie Exadata auf Linux laufen.
Oracle Enterprise Linux als Betriebssystem wurde unter anderem gewählt, weil der Support durch den gleichen Hersteller erfolgt – häufig wird hierbei von „Support aus einer Hand“ gesprochen. In der Praxis bietet
dies eine schnellere Bearbeitung von Problemen.
Natürlich ist die Realisierung einer Oracle Cloud auch mit Windows oder einer anderen Linux-Distribution
möglich. Im Detail können die Konzepte sich hierdurch allerdings unterscheiden.
4.2.1.6Clusterware
Die Clusterware bildet das Fundament des Gesamtsystems und stellt zentrale Infrasktruktur-Dienste wie
ASM, Clustersynchronisation und Listener für den gesamten Cluster zur Verfügung. Die hierfür notwendige
Komponente hieß früher „Oracle Clusterware“ und wurde mit Version 11g Release 2 in „Grid Infrastruktur“
umbenannt und muss für den Aufbau eines RACs zwingend installiert sein.
Auch wenn andere Hersteller wie beispielsweise Symantec (ehemals Veritas) Clustersoftware anbieten, die
sich mit der immer notwendigen Grid Infrastruktur verbinden lassen, besteht aus Sicht der Autoren keinerlei
Anlass eine weitere Clustersoftware einzusetzen, da dies einerseits der Maxime „KISS“ widerspricht und andererseits die Grid Infrastruktur alle notwendigen Services bereits zur Verfügung stellt. Zudem ermöglicht sie
auch eine problemlose Integration von Non-Oracle-Software.
Zur eingesetzten Version gilt die Empfehlung: Stets die aktuellste Version der Grid Infrastruktur plus aktuellstem PSU nutzen (siehe hierzu auch avato Whitepaper Lifecycle and Security Management).
Seite 16/33
update
4.2.1.7 Automatic Storage Management
Das Automatic Storage Management - oder kurz ASM – regelt als eine Art Volume Manager alle den Speicherplatz betreffenden Funktionalitäten und ist der zentrale Layer zwischen Datenbank und Storage.
Application
Oracle
Database
Automatic Storage
Management
Das Automatic Storage Management (ASM) selbst ist
ein plattformunabhängiges und High-Performance
Cluster Filesystem, welches sowohl für die Speicherung von Oracle Datenfiles also auch als universell
einsetzbares Filesystem eingesetzt warden kann.
ASM ist in der Lage die, ihm anvertrauten Daten
durch Spiegelung entweder doppelt oder dreifach
vorzuhalten und somit eine sehr hohe Verfügbarkeit
der Daten zu garantieren.
ASM Cluster
File System
ASM
Dynamic
Volume
Manager
ASM Files
for Oracle
Database
Operating System
ASM organisiert den Storage intern in so genannte Disk Groups welche aus möglichst gleich großen LUNs
bestehen. Von diesen Disk Groups gibt es genau zwei: DATA und FRA.
DATA speichert alle Datenfiles (inklusive
TEMP und UNDO), sowie jeweils eine
Kopie des Control Files und einen Member einer jeden Redo Log Gruppe.
FRA speichert die jeweils andere Kopie
des Controlfiles und der Redo Log Member. Zusätzlich werden hier die Archivelogs, Flashback Logs, Exporte und
RMAN-Backups gespeichert – eben alles, was mit der Wiederherstellung der
Datenbank zu tun hat.
Kern dieser Idee ist, dass die LUNs, die DATA und FRA bilden, nicht aus den gleichen Festplatten bestehen und
im Optimalfall nicht zum gleichen Array im Storage gehören, so dass selbst ein Komplettverlust einer Disk
Group zu keinerlei Datenverlust führt, da mit Hilfe der anderen Disk Group immer eine vollständige Wiederherstellung der Datenbank möglich.
Seite 17/33
update
Die Disk Groups selbst weisen eine von drei möglichen Redundanztypen auf:
EXTERNAL: ASM kümmert sich nicht selbst um die Redundanz und verlässt sich einzig auf den
Storage.
NORMAL: ASM hält von jedem geschriebenen Byte eine Kopie. Die Daten sind also zwei Mal
vorhanden.
HIGH: ASM hält zwei statt einer Kopie von den Daten, so dass die Daten drei Mal vorhanden
sind.
Bei der Konfiguration der Redundanztyp werden die LUNs im Level NORMAL und HIGH in sogenannte Fail
Groups eingeteilt. Eine Fail Group besteht dabei aus LUNs, die einen gemeinsamen Single Point of Failure
teilen. Im folgenden Bild arbeitet ASM mit einer NORMAL Redunanz, welche garantiert, dass die Daten immer
zwei Mal vorgehalten werden. Die LUNs selbst kommen von zwei verschiedenen Storages, und jeder Storage
für sich bildet eine Failure Group. Durch diese Einteilung der LUNs wird ASM in die Lage versetzt zu verstehen,
welche LUNs zusammengehören und demzufolge auch gemeinsam ausfallen können. In der Konsequenz
sorgt ASM dafür, dass das Original und die Kopie der Daten niemals in der gleichen Failure Group liegen.
ASM
Fail Group 1
Fail Group 2
LUNs
Storage-System 1
LUNs
Storage-System 2
Aus diesem Grund ist es dringend empfohlen alle LUNs eines Storage-Systems einer gemeinsamen Fail Group
zuzuweisen.
Seite 18/33
update
Durch die Kombination von Redundanzlevel und Fail Group erhält ASM seine wichtigste Eigenschaft: den
Schutz vor einem Ausfall eines Storages (sofern als Redundanzlevel NORMAL oder HIGH gewählt wurde). Fällt
ein Storage aus, so kann ASM dies kompensieren und die Datenbanken und der gesamte Cluster funktionieren ohne Unterbrechung weiter. Wird die Funktionsfähigkeit des ausgefallenen Storages später wiederhergestellt, so kann der Storage ebenfalls transparent und ohne Downtime wieder in das ASM integriert werden.
Dies ist sogleich die zweite wichtige Eigenschaft von ASM: Das Hinzufügen und Entfernen von Storage zum
ASM ist für die auf ASM aufbauenden Datenbanken und Applikationen ein absolut transparenter Prozess, der
ohne Downtime abläuft. Selbst eine Migration von einem Storage zu einem anderen kann im laufenden Betrieb erfolgen.
Als weitere Eigenschaft kann ASM ab Version 11g Release 2 nicht nur von den Datenbanken direkt benutzt
werden sondern bietet auch ein auf ASM aufbauenden Clusterdateisystem an, welches von Anwendungen
wie zum Beispiel Tomcat oder mySQL genutzt werden kann um diese ebenfalls hochverfügbar zu machen.
Die Empfehlung der Autoren geht eindeutig dahin, ASM mit NORMAL Redundanz zu nutzen. Wo eine größtmögliche Fehlertoleranz erreicht werden soll, ist der Einsatz von HIGH als Redundanzlevel zu überlegen.
4.2.1.8 Database Software
Als Datenbanksoftware kommt entweder die Standard oder Enterprise Edition (siehe auch unten Lizenzierung) zum Einsatz.
Durch den Aufbau des Clusters und die Wahl des Betriebssystems ist es möglich jede Datenbankversion von
10g Release 1 bis 11g Release 2 einzusetzen. Einziges Kriterium ist, dass die Version der Grid Infrastruktur
immer größer oder gleich der höchsten eingesetzten Datenbankversion ist. Sind die internen Festplatten ausreichend groß gewählt, können möglichst viele unterschiedliche Datenbankversionen eingesetzt werden.
Allerdings sollte wenn möglich nur die aktuelle Version 11g Release 2 oder 11g Release 1 eingesetzt werden,
da es nur für diese noch Support von Oracle gibt (siehe hierzu auch avato Whitepaper Oracle Lifecycle & Security-Management).
4.2.1.9 3rd Party Applikationen
Die Grid Infrastruktur verfügt über ein anpassbares Framework mit dem auch Nicht-Oracle-Produkte einfach
in den Cluster integriert werden können. So kann die Oracle Cloud um kleinere, eng mit der Datenbank oder
einer Applikation verbundene Services erweitert werden (Database Machine).
Bei der Integration ist allerdings ein zu starker Mischbetrieb von Datenbank und Applikation nicht ratsam, da
der gesamte Server inklusive aller Cores für die Oracle Datenbank lizenziert werden muss. Wenn durch das
parallele Betreiben anderer Applikationen ein größerer Teil der CPUs belegt wird so ist dies ineffektiv und
teuer.
Seite 19/33
update
4.2.1.10 Database Desaster Recovery
Zum Schutz der Oracle Cloud vor Ausfällen wird neben dem RAC und dem zwischen zwei Storage spiegelnden
ASM zusätzlich ein Data Guard mit aktiviertem Flashback empfohlen. Hier sind sehr unterschiedliche Varianten möglich:
a) Stretched Cluster über zwei Datacenter mit Replikation in ein drittes
Datacenter A
Datacenter B
Datacenter C
RAC
Standby
Cluster
RAC Stretched Cluster
Dataguard Replication
Node C
Node A
Node B
Node D
b) Cluster mit Replikation auf einen anderen Cluster in anderem Rechenzentrum
Datacenter A
Datacenter A
RAC Cluster
RAC Cluster
Dataguard Replication
Database A
Replication B
Replication A
Database B
Seite 20/33
update
c) Stretched Cluster mit Replikation auf einen Standby-Node in einem der Datacenter
Datacenter A
Datacenter B
RAC Stretched Cluster
Node A
Node B
Dataguard Replication
Standby
Node
•
•
Physically seperated
Storage seperated
RAC und ASM schützen gegen den Ausfall eines Servers oder eines Storages – nicht aber gegen Benutzerfehler. Eine gelöschte Tabelle ist auch in einem RAC gelöscht – hochverfügbar garantiert.
Hier bietet sich Data Guard an um die Daten nochmal an eine andere Lokation zu spiegeln – wahlweise synchron, garantiert ohne Datenverlust oder asynchron, wenn geringfügiger Datenverlust akzeptabel ist.
Data Guard schützt durch die Kombination mit Flashback vor Benutzerfehlern. Mittels Flashback kann eine
Datenbank auf einen Punkt in der Vergangenheit zurückgesetzt, die versehentlich gelöschte Tabelle extrahiert
und die Datenbank wieder mit der Primärdatenbank synchronisiert werden.
Database Management
Für das einfache Management und zur Überwachung der Datenbanken kommt Oracle Enterprise Manager
Cloud Control 12c zum Einsatz. Es bietet neben dem detaillierten Monitoring zahlreiche weitere Features wie
beispielsweise ein automatisches Provisioning von Datenbanken.
Seite 21/33
update
4.2.2 Was ist zu beachten? Ein paar Erfahrungen aus der Praxis
Der Aufbau einer Oracle Cloud kennt einige Fallstricke, von denen ein paar in diesem Abschnitt angesprochen
werden sollen.
4.2.2.1 Platzierung der dritten Voting Disk
Für den ordnungsgemäßen Betrieb eines Clusters sind zur Mehrheitsfindung mindestens 1 (EXTERNAL Reundanz), 3 (NORMAL) bzw. 5 (HIGH) Voting Disks notwendig. Von diesen müssen zu jeder Zeit mehr als die Hälfte (also > 50%) verfügbar sein. Ist dies nicht gegeben, so schalten sich der Cluster bzw. die betroffenen Knoten
selbstständig ab. Daher kommt der Platzierung der dritten bzw. fünften Voting Disk eine besondere Rolle zu,
welche nachfolgend für die am häufigsten vorkommende Konfiguration mit NORMAL Redundanz vorgestellt
werden soll.
Ein Cluster mit NORMAL Redundanz zeichnet sich durch das Vorhandensein von zwei möglichst völlig unabhängigen Storages aus. Auf jeden dieser Storages wird eine Voting Disk platziert. Die dritte Voting Disk kann
nicht auf einen der beiden vorhanden Storages platziert werden, da beim Ausfall des Storages mit den dann
zwei Voting Disks weniger als 50% der Voting Disks verfügbar wären, was zu einem Komplettausfall des Clusters führen würde. Daher muss die dritte Voting Disk auf einen dritten Storage platziert werden. In größeren
Umgebungen kann das ein dritter Storage sein. Alternativ ist es auch möglich und von Oracle supported,
iSCSI für die dritte Voting Disk zu nutzen, so dass ein bereits vorhandender Server als iSCSI Target (ein „Target“
stellt anderen Servern Speicherplatz zur Verfügung) konfiguriert werden kann, der dann den Clusterknoten
die Voting Disk präsentiert.
4.2.2.2 Blades vs. Single Server
Die Wahl zwischen Blades und Single Servern ist immer von den aktuellen Anforderungen und Standards abhängig. Blades bieten vor allem den Vorteil eines geringen Platzverbrauches, sind aber durch die Abhängigkeiten vom Chassis und deren Komponenten sowie der Software im Chassis aufwändiger in der Wartung als
Single Server. Mitunter sind bei einem Problem in einem Bladechassis (oder Bladecenter) gleich mehrere
Server betroffen – bis hin zum gesamten Cluster oder einem großen Teil davon.
Daher geht die Empfehlung klar Richtung Single Server. Sollte dies aufgrund der Unternehmensstrategie nicht
möglich sein, so sollten die einzelnen Knoten des Clusters auf mehrere Bladecenter aufgeteilt werden. In keinem Fall sollten alle Knoten im gleichen Bladecenter sitzen, da dies einen Single Point of Failure schaffen
würde.
Seite 22/33
update
4.2.2.3 Größe des Clusters
Die Größe eines RAC ist durch die eingesetzte Datenbankversion beschränkt: Beim Einsatz von Oracle Standard Edition sind maximal vier Knoten und in Summe vier CPU-Sockel pro Cluster zulässig. Die Anzahl der
Cores ist aktuell nicht limitiert. Die Enterprise Edition ermöglicht bis zu 100 Knoten.
Zwei Knoten sind der kleinstmögliche sinnvolle Cluster (es ist auch möglich einen Knoten wie einen Cluster zu
installieren um ihn später zu erweitern) und zugleich ein Sonderfall, weil eine Fehlerisolierung mit zwei Knoten nicht möglich ist. Erst mit drei Knoten wird eine Fehlerisolierung möglich und ein Cluster bestehend aus
drei Knoten gilt gemeinhin als kleinster „richtiger Cluster“, der allerdings ebenfalls eine Besonderheit hat:
Fällt ein Knoten aus besteht der Cluster wieder nur aus zwei Knoten und das oben Gesagte trifft wieder zu.
Erst vier Knoten haben all diese Einschränkungen nicht, so dass bei größeren Umgebungen die Cluster aus
mindestens vier Knoten bestehen sollten.
Ein praktikables Limit würde der Autor bei 8 bis 16 Knoten sehen, da bei steigender Anzahl der Knoten auch
der Wartungs- und Patchaufwand steigt.
4.2.2.4 Aufteilung der Ressourcen im Cluster
Ressourcenkontrolle und -management sind in einem Cluster eine zentrale Aufgabe – insbesondere wenn
einzelne Knoten unterschiedlich gut ausgestattet sind. Oracle selbst stellt mit der Einführung von Server Pools
ein Instrument zur Verfügung mit dem nur noch angegeben wird, wie oft Ressourcen (Datenbankinstanzen
und auch Drittsoftware) im Cluster laufen soll und welche Hosts hierfür in Frage kommen. Die Verteilung der
Ressourcen auf die Knoten regelt die Clusterware selbst.
Zusätzlich zu den Server Pools können die Ressourcen in der Datenbank selbst mit dem Parameter „CPU_
COUNT“ für die ganze Datenbank global limitiert und mittels des Ressource Managers innerhalb der Datenbank zugewiesen werden.
4.2.2.5 Zertifizierung beachten!
Damit im Fehlerfall auch Support von den jeweiligen Herstellern in Anspruch genommen werden kann, ist es
wichtig beim Aufbau der Plattform auf die Zertifizierung aller eingesetzten Komponenten zu achten.
Insbesondere der Zertifizierung der Hardware, des Betriebssystems und der HBAs untereinander kommt hier
eine zentrale Bedeutung zu, so dass keiner der Hersteller sich im Problemfall auf eine nicht vorhandene Zertifizierung zurückziehen kann.
Seite 23/33
update
4.2.3 Virtualisierung – Ja oder Nein und wenn ja, wo?
Virtualisierung als Möglichkeit, vorhandene Hardware besser zu nutzen, ist in aller Munde, und auch für die
Realisierung der Oracle Cloud eine sinnvolle Möglichkeit. Allerdings hat diese Technologie für Oracle Datenbanken einige Grenzen, welche im Folgenden erläutert werden sollen.
Technologisch kann Virtualisierung durch eine ganze Reihe von unterschiedlichen Ansätzen erreicht werden:
• Softwarevirtualisierung
- Virtualisierung mittels Containern (z.B. Solaris, BSD Jails, OpenVZ, ...)
- Virtualisierung mittels Virtual Machine Monitors (aka „Hypervisor“)
* ohne Anpassung des Betriebssystems:
Hardware-Emulation (z.B. Bochs)
Hardware-Virtualisierung (VMware, Xen, OVM)
* mit Anpassung des Betriebssystems:
Paravirtualisierung (auch VMware, Xen, OVM)
• Hardwarevirtualisierung
- Feste Partition
- Dynamische Partition
Virtualisierung mittels Container bezeichnet eine Technologie bei der eine komplette Betriebssystemlaufzeitumgebung virtuell innerhalb eines in sich geschlossenen Containers zur Verfügung gestellt wird. Hierbei wird
allerdings kein neues Betriebssystem gestartet, so dass es nicht möglich ist, ein anderes Betriebssystem innerhalb eines Containers zu starten oder Treiber nachzuladen. Der Vorteil des Verfahrens liegt in der Geschwindigkeit, da keine wie auch immer geartete Emulation stattfindet.
Zu den wichtigsten Technologien der Virtualisierung gehört die Hardware-Virtualisierung, bei der die virtuelle Maschine dem Gastbetriebssystem Teilbereiche der physikalischen Hardware in Form von virtueller Hardware zur Verfügung stellt. Diese virtuelle Hardware ist allerdings ausreichend damit das virtualisierte Betriebssystem in unveränderter Form betrieben werden kann.
Bei der Paravirtualisierung wird keine Hardware emuliert oder virtualisiert. Stattdessen verwenden die Betriebssysteme eine abstrakte Verwaltungsschicht um auf Ressourcen zuzugreifen. Dies erfordert immer Anpassungen am Betriebssystem, verspricht aber die höchste Leistung verglichen mit den anderen Ansätzen.
Wie oben gezeigt gibt es am Markt derzeit zwei dominierende Software-Technologien zur Virtualisierung:
VMware und XEN. Während VMware ein Produkt bezeichnet, steht XEN für eine ganze Reihe von abgeleiteten Produkten, wie zum Beispiel der Citrix XenDesktop, SuSE Linux Enterprise Server mit Xen oder auch das
Oracle-eigene Produkt Oracle Virtual Machine – OVM.
Seite 24/33
update
Aus Sicht des Autors ist es wichtig sich zu vergegenwärtigen, dass Virtualisierung immer mit einer Leistungseinbuße verbunden ist. Zudem entstehen durch die eingesetzte Virtualisierung Abhängigkeiten und Einschränkungen in den technischen wie auch organisatorischen Möglichkeiten, die es im Auge zu behalten gilt.
Ebenfalls problematisch ist die Frage nach dem Support durch Oracle. Dieser ist - mit Ausnahme bei Einsatz
des Produktes aus dem eigenen Haus - nicht gegeben.
Aufgrund dieser Einschränkungen und technischen Limitationen kann eine Empfehlung für Virtualisierung nur
für nicht-produktionsrelevante Datenbanken gegeben werden, bei denen Performance und Verfügbarkeit keine Schlüsselrolle spielen, sondern vielmehr Flexibilität gefragt ist.
Häufig wird Virtualisierung auch als eine Methode zur Lizenzkostenkontrolle gesehen. Allerdings ist dies nur
gegeben wenn gewisse Einschränkungen beachtet werden. Diese Einschränkungen werden im folgenden Abschnitt angesprochen.
4.2.4Lizenzierung
4.2.4.1 Standard / Enterprise Edition im RAC
Je nach Größe des Clusters ist es möglich die Standard Edition statt der Enterprise Edition zu verwenden. Die
entscheidenden Kriterien für die Möglichkeit des Einsatzes der Standard Edition sind:
• maximal 4 Sockel (unabhängig von den Cores pro Sockel!)
• auf maximal zwei Servern
• ASM muss genutzt werden (kein NFS!)
Doch nicht nur die Größe des Clusters diktiert diese Entscheidung, sondern vielmehr folgende Faktoren:
• Größe der Datenbank
• Benötigte Spezialfeatures wie zum Beispiel Partitioning
• Parallelisierung bei Abfragen oder auch dem Backup
4.2.4.2 Virtualisierung und Lizenzierung
Virtualisierung als Methode zur Lizenzkostenkontrolle folgt der Annahme, dass nur die der Virtuellen Maschine wirklich zugeteilten Ressourcen (hier vor allem die Anzahl der CPUs) auch lizenziert werden müssen und
so auf einem auch für anderen Applikationen verwendeten Cluster Oracle Datenbanken mit nur geringen
Mehrkosten mitbetrieben werden können. Dies ist nur bedingt so. Zunächst ist diese Art der Lizensierung nur
beim Einsatz von so genanntem „Hard Partitioning“ möglich. Virtuelle Maschinen per se sind „Soft Partitioned“, so dass eine Lizenzierung basierend auf den der VM zugewiesenen CPUs nicht zulässig ist. Erst durch
die Erfüllung spezieller Bedingungen, die gleichzeitig mit technischen Limitationen einhergehen, kann aus
Seite 25/33
update
einer „Soft Partitioned“ VM eine „Hard Partitioned“ VM im Sinne der Lizenzbedinungen von Oracle gemacht
werden.
Welche Virtualiserungsprodukte unter welchen Bedingungen als „Hard Partitioning“ anzusehen sind, ist im
Oracle Whitepaper „Oracle Partitioning Policy“ beschrieben.
VMware und andere Produkte sind hiervon generell ausgenommen, da immer der gesamte Cluster mit allen
CPUs lizenziert werden muss. Da der Cluster in den allermeisten Fällen aus mehr als 4 CPU-Sockeln und zwei
Hosts bestehen wird, muss dann sogar die teurere Enterprise Edition lizenziert werden.
Solaris Container sind unter gewissen Bedingungen als „Hard Partitioned“ anzusehen, insbesondere dann,
wenn keine Ressourcen dynamisch zugewiesen werden können und die Anzahl der CPUs statisch begrenzt
wird.
Bei Einsatz von Oracle VM sind virtuelle Maschinen als solche ebenfalls nur „Soft Partitioned“. Erst durch das
„pinnen“ von Virtuellen Maschinen auf eine oder mehrere physikalische CPUs wird das geforderte “Hard Partitioning“ erreicht. Diese statische Zuweisung von CPUs zu virtuellen Maschinen geht mit zwei gravierenden
Nachteilen einher:
1. Es muss manuell nachgehalten werden, welche VM welche physikalischen CPU benutzt, um so eine doppelte Belegung der gleichen CPU durch mehr als eine virtuelle Maschine zu vermeiden. Dieses Mapping
muss kontinuierlich angepasst werden, da laufend Änderungen zum Beispiel durch den Start einer VM
erfolgen.
2. Eine „Live-Migration“, also ein Verschieben der laufenden virtuellen Maschine von einem Host auf den
anderen, ist durch das „pinnen“ auf bestimmte CPUs nicht mehr möglich. Hiermit geht eine Kernfunktionalität verloren.
Seite 26/33
5
update
Erfolgsfaktoren bei der Umsetzung
Entscheidende Erfolgsfaktoren neben dem Management-Buy-in für die Etablierung einer standardisierten
Plattform:
1.
Flexibilität der Services
Nicht zu unterschätzen ist die Frage nach Anzahl implementierter Oracle-Releases. Zudem
sollte eine Plattform neben der Datenbank Instanz auch immer eine Datenbank Maschine
bieten.
2.
Database Provisioning & Onboarding
Es müssen klare Kriterien für das Onboarding und den Verbleib auf eine Shared-Plattform
definiert sein, zudem muss der Prozess schnell durchlaufen werden.
3.
Migrationsstrategie und -support
Sandbox-Systeme und umfangreicher Projektsupport sind partiell erforderlich, das Verhalten
der Datenbank muss vor allem bei Systemen mit hoherI/O getestet werden. Unterstützung
für Migration auf neue Version ist teilweise erforderlich.
4.
Modelle zur Kostenverrechnung
Die Kostenvorteile der Plattform müssen für Kunden greifbar sein und sich schnell realisieren
lassen.
5.1
Flexibilität der Services
Eine zentrale Frage für jeden Oracle Cloud-Service lautet: Wie viele Releases sollen bereitgestellt werden?
Eine Release-Policy, der nur ein Teil der Anwendung genügen kann, ist unter dem Gesichtspunkt Kosten- und
Aufwandsreduktion wenig erfolgversprechend. Grundsätzlich zwei unterschiedliche Release-Stände (aktuell
10.x / 11.2) anbieten zu können, kann im Einzelfall die Anzahl der Nutzer beträchtlich erhöhen und am Ende
die Vorteile für alle Nutzer überwiegen lassen.
Ein zweites Kriterium für den Erfolg der Oracle Cloud-Services sind die Wartungsfenster, die angeboten werden können. Erscheinen individuelle Wartungsfenster für eine Anwendung erforderlich, sollte nicht der Versuch unternommen werden, Anwendungen durch Kostenvorteile entgegen ihrer eigentlichen Anforderungen
auf eine Plattform zu locken. Durch das Konzept der Datenbank-Instanz mit geringer Verdichtung auf Servern
(virtuell oder physikalisch) kann hier ausreichend Individualität geboten werden. Gleiches gilt für die
Patch-Strategie.
Sind spezielle Features erforderlich oder werden solche zukünftig benötigt, kann man solchen Anforderungen
durch die Database Instance sowie der Database Machine begegnen. Zu solchen Anforderungen können external data access, access to external data by user out of database (e.g. external tables, UTL_FILE operations
…), special database options, external OS access by application users, national language settings, global objects (e.g. directory, scheduler), special interfaces (e.g. Mail, FTP …), non Oracle RDBMS components sowie
Database parameter customization gehören.
Seite 27/33
update
Weitere Individualität an Services entsteht durch Anforderungen an Backup, Recovery und Archiving. Hier
sind Backup schedules, Recovery max. time for database backup, Backup method, Backup Redundancy, Backup incremental strategy, Backup further requirements, Archiving, Flashback auf verschiedenen Ebenen angesprochen.
5.2
Database Provisioning & Onboarding
Jede Oracle Cloud ist selbstverständlich immer eine Shared-Plattform. Damit sind die wesentlichen Kriterien
für ein Onboarding skizziert: Jede Anwendung muss die Spielregeln der Plattform einhalten. Kann eine Anwendung diesen Regeln nicht mehr genügen, muss sie auf eine andere Infrastruktur weichen. Aber was sind
empfehlenswerte Regeln, wie kann man sie sinnvoll abstufen für die offerierten Services? Regeln und Onboarding-Kriterien lassen sich im Grunde in zwei Kategorien zusammenfassen: Services (s.o. 27 Flexibilität der
Services) sowie Ressourcenanforderungen.
5.2.1Ressourcenanforderung
Ressourcenanforderungen stehen hinter den Services erst an zweiter Stelle. Für die meisten Anwendungen
stößt man bei einer modernen x86-basierten Oracle Cloud-Architektur selten an Grenzen. Size-Restrictions
sollten aber immer formuliert werden. Ab einer gewissen Leistungsanforderung sollte über ein Scale-out auf
die Exadata-Plattform oder eine dedizierte Database-Machine nachgedacht werden.
5.3
Migrationsstrategie und –support
Nachdem eine Datenbank als Kandidat für eine Migration in die Oracle Cloud auf Basis von technischen und
geschäftlichen Kriterien identifiziert ist, müssen die Voraussetzungen für die Migration geschaffen werden. Im
betrachteten Modell „Database as a Service“ ist es nicht notwendig, die Infrastruktur in der sich die Datenbank befindet, zu verwalten. Es kann also davon ausgegangen werden, dass die Infrastruktur bereit steht.
Damit beschränkt sich die Migrationsstrategie auf die Rahmenbedingungen. Dabei sollte nicht außer Acht
gelassen werden, dass die Datenbank mit einer Applikation verknüpft ist, die wiederum den Cloud-Dienst
„Application as a Service“ verwendet oder auch nicht.
Seite 28/33
update
Dieser Ansatz erscheint sehr attraktiv, allerdings müssen wichtige Punkte für Migration und Betrieb beachtet
werden. Dazu gehören:
•
•
•
•
•
Erwartungen an den Service Level
Portabilität der Daten
Kosten auf lange Sicht
Verwaltung von Benutzern
Sicherheit
Erwartungen an den Service Level
Der Anbieter muss ein SLA mit Aussagen zur allgemeinen Verfügbarkeit, Skalierbarkeit und Performance zur
Verfügung stellen. Dazu gehören auch klare Aussagen über Wartungsfenster und die Durchführung von
Upgrades. Skalierbarkeit kann durch Hinzunahme vom Hardware-Ressourcen, Parallelisierung oder Erweiterung eines Clusters realisiert werden. Der Provider muss adäquate Ressourcen in der Hinterhand haben, um
kurzfristig auf solche Forderungen reagieren zu können.
Portabilität der Daten
Der Kunde muss in die Lage versetzt werden, über die Daten seiner Applikation zu herrschen. Dazu gehört
auch die Möglichkeit, diese in gängige Formate zu exportieren und einfach an andere Applikationen weiterreichen zu können. Für die Initiale Migration müssen entsprechende Schnittstellen zum Laden von Daten zur
Verfügung gestellt werden. Um dieses Prinzip umzusetzen, müssen dem Kunden die notwendigen Rechte an
den Daten gewährt werden. Für große Datenbanken ist zu berücksichtigen, dass für Export- und Importaktivitäten der entsprechende freie Festplattenplatz zur Verfügung steht. Darüber hinaus muss der Kunde die Möglichkeit haben, Aufträge für das Cloning stellen zu können. Der Provider sollte Standard-Cloning-Verfahren,
zum Beispiel mit dem RMAN, anbieten und vorsehen.
Kosten
Rechtemäßig sollte eine strikte Trennung zwischen Datenmanipulationen und Schema-Änderungen erfolgen.
Während das Recht auf Datenmanipulation dauerhaft erteilt werden sollte, muss das Recht auf Schema-Änderung im Normalbetrieb entzogen und nur für das Einspielen neuer Releases erteilt werden. Auch in der
Oracle Cloud müssen die Regeln des Change Request Verfahrens angewandt werden können.
Das Modell „Database as a Service“ kann sowohl für mittelständische Unternehmen als auch für große Konzerne, die keine großen Investitionen in die eigene Infrastruktur getätigt haben, finanziell attraktiv sein. Insbesondere die Initialkosten sind sehr gering. Allerdings sollte mit wachsendem Datenvolumen und wachsender Anzahl von Benutzern auch die Langzeitkosten betrachtet werden (Cost of Ownership). Die Entwicklung
der Langzeitkosten ist abhängig vom Kostenmodell des Service. Aus Sicht des Providers ist die Größe der Datenbank nicht zwangsläufig der Kostenfaktor Nummer eins. Andere Faktoren wie die Anzahl von neuen Releases oder auch die Userverwaltung können die Kosten in die Höhe treiben.
Seite 29/33
update
Verwaltung von Benutzern / Sicherheit
Für Applikationen mit einer großen Anzahl von Benutzern werden normalerweise Directory-Dienste für die
Zugriffskontrolle verwendet. Häufig schlagen sich Änderungen (Hinzunahme oder Entfernen von User-Accounts) nicht automatisch auf die „Database as a Service“ nieder. Dies kann ein zusätzliches Arbeits- und ein
Sicherheits-Risiko für die IT-Administratoren bedeuten. Die Sicherheitsvorschriften in den meisten Unternehmen fordern eine regelmäßige Re-Zertifizierung von Benutzern. Diese müssen entsprechend umgesetzt werden.
In den Datenbanken können sich sensible Daten befinden. Deshalb sollte der Service Provider seine Sicherheitspolicies offen legen und für den Benutzer transparent machen, damit dieser eigenständig verifizieren
kann, ob die Datenbanksicherheit seinen Anforderungen entspricht. Definition und Umsetzung von Sicherheitsrichtlinien für die Datenbank können sich sehr aufwändig entwickeln. Sie umfassen viele Themenbereiche, über die Umsetzung von Passwort-Regeln über die individuelle Rechte-Vergabe, das Auditing von Zugriffen bis hin zur Intrusion Detection-Kontrolle. Einerseits muss der Provider kritische Privilegien sperren,
andererseits muss er dem Kunden noch Spielraum für eigene Gestaltung lassen.
Für die Migration sind Randbedingungen wie der Zeichensatz in der Datenbank oder ein verändertes Verhalten von Datenbank und SQL-Anweisungen im Falle einer Migration auf eine andere Version stets im Auge zu
behalten. Im Fall von Oracle bietet sich der Einsatz des Tools „Real Application Testing“ an, mit dem der reale
Workload vorab auf die neue Umgebung gebracht werden kann.
Seite 30/33
5.4
update
Modelle zur Kostenverrechnung
Eine der zentralen Fragen beim Betrieb jeder Plattform ist die Verrechnung von Kosten. Wie werden Kosten
verursachergerecht verrechnet, wie wird das Modell einfach und praktikabel gehalten und wie flexibel kann
es sich verändernden Anforderungen angepasst werden? Grundsätzlich können mehrere Komponenten einzeln berechnet werden und pro Nutzungsdauer ausgewiesen werden. Mögliche Komponenten sind DBA- und
SA-Kosten, Lizenzen sowie Hardware und Storage.
Database
Administration
Standard 2nd and 3rd level support not including database provisioning,
changes and project support like optimization
System
Administration
Standard 2nd and 3rd level support not including OS provisioning and changes
Licences
Could be integrated into Cloud Units
Hardware
Cloud-Unit
Cloud Unit: Server Hardware, CPU, Memory, Datacenter Costs
Storage
Storage used by databases, not including storage needed for system
5.4.1.1 Kosten Database Administration
Die Kosten der Datenbankadministration lassen sich einfach pro Datenbank-Instanz und Monat ausweisen.
Wichtige Fragen sind hier, ob zwischen unterschiedlichen Service-Leveln unterschieden werden soll und welche Leistungen in einem Basis-Support enthalten sein sollen. Ein Hinweis sei noch mit Blick auf das Schema-Konzept gegeben: Werden Schemata nicht stark standardisiert (User, Tablespaces), können sie schnell
einen höheren Betriebsaufwand produzieren als Datenbank-Instanzen.
5.4.1.2 Kosten System Administration
Auch die Kosten der Systemadministration lassen sich pro Database Machine ausweisen und, um es möglichst
einfach zu halten, mit festem Schlüssel auf Datenbank-Instanzen verteilen. Auch hier stellt sich die Frage, ob
unterschiedliche Service Level angeboten werden sollen und welche Leistungen im Basis-Support enthalten
sein sollen.
Seite 31/33
update
5.4.1.3Lizenzen
Lizenzkosten können sich an Cloud-Units orientieren (s.u.).
5.4.1.4Hardware
Ein sinnvolles Konzept ist es, Cloud-Units zu definieren. Ein Gesamtsystem kann so inklusive seiner Spareparts, des benötgten Storage für das Basissystem und seiner Wartungskosten auf Cloud-Units aufgeteilt werden. Hierbei empfiehlt sich eine feste Zuordnung von Speicher und CPU zu einer Unit.
5.4.1.5Storage
Storage kann nach bekannten Modellen verrechnet werden. So lange beim Schema-Konzept die Richtlinie ein
Tablespace pro Schema eingehalten wird, können Storage-Einheiten nach Nutzung monatlich verrechnet
werden.
6
Betrieb einer Oracle Cloud
Lifecycle-Management auf einer Shared-Plattform unterscheidet sich grundsätzlich von dedizierten Plattformen. In erster Linie sind hier Release-Stände und Patch-Level zu erwähnen. Aber auch in Bezug auf Event-Monitoring und die Vereinbarung von Schwellwerten ergeben sich deutliche Unterschiede. Eine der größten
Herausforderungen stellt die Wartung dar. Wie viele Datenbanken können auf einem System gemeinsam mit
einem gemeinsamen Wartungsfenster betrieben werden? Können unplanmäßige Wartungsfenster erzwungen werden und welchen organisatorischen Aufwand muss man hierbei betreiben? Wann und mit welchem
Aufwand können neue Versionen und/oder Patches durchgesetzt werden, wie sehen Testprozeduren aus?
Ähnliches gilt für das Change Management. Changes können eine Vielzahl von Anwendungen betreffen und
müssen deshalb mit besonderer Sorgfalt vorbereitet und getestet werden.
Das User Management wird immer dann zu einer besonderen Herausforderung, wenn Schemas genutzt werden. Wenn also auf Schemas nicht verzichtet werden soll, ist eine Reduktion der User pro Schema grundsätzlich zu empfehlen. Im Idealfall existieren pro Schema zwei User: Schema Owner und Access User.
Die Rollenverteilung zwischen DBA und Systemadministrator (SA) bedarf auf der hier empfohlenen Architektur durch den Einsatz von ASM einer besonderen Betrachtung. Oracle bewirbt diese Architektur unter anderem mit den Vorteilen in der Administration. Die Aufgaben im Bereich der Unix Sytemadministration und im
Storage-Management können in Teilen über den Enterprise Manager vom DBA übernommen werden. Dies ist
sicher richtig, erfordert aber neue Konzepte bei der Rechtevergabe, da der DBA hier zumindest temporär
über Zugriffsrechte verfügen muss, die so im Standard nicht vorgesehen sind.
Auch beim Backup und Restore steht man immer dann vor besonderen Herausforderungen, wenn ein Schema-Konzept genutzt wird. Empfehlenswert ist hier, ein Schema immer auf genau einen Tablespace zu begrenzen, um hier bei Bedarf point-in-time Recovery des Tablespaces durchführen zu können.
Betrachtet man das Gesamtrisiko bei Ausfall, so bleibt festzuhalten: Die Ausfallwahrscheinlichkeit lässt sich
bei der vorgeschlagenen Architektur minimieren und der Aufwand hierzu ist auf Einzelanwendungen gerechnet sicher bedeutend geringer als dies bei Einzellösungen der Fall wäre. Kommt es dann doch einmal zu Ausfällen oder Fehlern, ist auf der anderen Seite auch immer eine Vielzahl von Systemen betroffen.
Seite 32/33
7
Ausblick: Oracle Private Cloud / Oracle 12c
7.1
Oracle Private Cloud
update
Oracles Database Cloud Service als Private Cloud stehen kurz vor der Markteinführung. Auch wenn noch nicht
alle Details feststehen, bewirbt der Hersteller die Services bereits. Womit ist zu rechnen?
Oracle wird in seinen Database Cloud Service Tools zum Laden von Daten, zum Entwickeln und Ausführen von
SQL sowie zum Anzeigen von Daten und Datenstrukturen integrieren. Zudem soll es einen Wizard zur Erstellung von RESTful Web Services geben, der SQL oder PL/SQL Code ausführen kann und Werte im JSON-Format,
CSV-Format oder beliebigen anderen Formaten zurückliefert.
Die gesamte Development und Deployment-Architektur des Oracle Database Cloud Service ist in die Oracle
Datenbank integriert. Dadurch können Applikationen und sogenannte RESTful Web Services auf jede andere
Oracle Datenbank verschoben werden, unabhängig wo diese betrieben wird.
Oracle Application Express, ist eine weitere zentrale Komponente des Oracle Database Cloud Service. Nach
Oracle handelt es sich um eine robuste Entwicklungsumgebung, die inzwischen von mehr als 100.000 Entwicklern weltweit genutzt wird, um geschäftskritische Anwendungen zu erstellen.
Oracles Database Cloud Service ist auf Exadata implementiert und nutzt somit alle Features (u.a. EHCC, Smart
Scanning, Cell Offloading, und viele mehr), die aktuell durch Exadata geboten werden.
7.2
Oracle 12c: Pluggable Database
Das Konzept der Pluggable Database (PDB) ist aus anderen Umfeldern bereits bekannt. Es handelt sich hierbei
um eine Datenbankinstanz, welche viele einzelne, unabhängige Datenbanken enthält. Die Realisierung in der
Version 12c unterscheidet zwischen der „Container Database“ (CDB) und den „Pluggable Databases“ (PDB).
Das Konzept der Pluggable Database bietet viele Vorteile. So ist die Datenbankkonsolidierung nun sehr einfach, weil eine vorhandene Datenbank in eine CDB eingeklinkt und sofort genutzt werden kann. Eine Konsolidierung verschiedener Applikationen durch Trennung in verschiedene Schemata ist nicht mehr notwendig.
Weiterhin spart dieses Verfahren Zeit beim Datenbankupgrade, da ein Upgrade zwischen verschiedenen Datenbankversionen ab 12c im Hintergrund erfolgt – die Datenbank kann sofort genutzt werden.
Über das Fast Provisioning kann eine vorhandene PDB in eine neue PDB geclont werden. Hierbei wurde der
RMAN so erweitert, dass ein Recovery auf Ebene der PDB möglich ist.
Zum Transport der PDBs können diese „unplugged“ werden. Die Datenfiles der PDB können dann kopiert und
in eine neue CDB wieder eingefügt (Oracle spricht hier vom „plug-in“) werden. Dieses Verfahren funktioniert
ab der Version 12c auch zwischen verschiedenen Datenbankversionen und soll das neue Standardverfahren
für Datenbankupgrades werden. Zudem bietet PDB eine saubere Rollentrennung sowohl für Administration
als auch für Applikation.
Seite 33/33
8
update
Links & Literatur
• Lifecycle- & Security Management für Oracle Datenbanken
avato Whitepaper beschreibt eine Filecycle-Strategie für Oracle Datenbanken (Release- und PatchManagement).
• Oracle Whitepaper “Oracle Partitioning Policy“
Beschreibt welche technologischen Plattformen Soft- und Hard-Partioning ermögli­chen und welche
Lizenzbestimmungen jeweils gelten.
• Oracle Whitepaper „Database Consolidation onto Private Clouds“
Das Dokument beschreibt, wie Oracle Datenbanken (11g) in unterschiedlichen Mo­dellen erfolgreich
konsolidiert werden können.
Herunterladen