database as a service on the oracle database appliance platform

46
Database as a Service on the Oracle Database Appliance Platform MARC FIELDING MARIS ELSINS

Upload: maris-elsins

Post on 13-Jul-2015

422 views

Category:

Technology


3 download

TRANSCRIPT

Page 1: Database as a Service on the Oracle Database Appliance Platform

Database as a Service on the Oracle Database Appliance Platform

MARC FIELDING

MARIS ELSINS

Page 2: Database as a Service on the Oracle Database Appliance Platform

© 2014 Pythian Confidential

Marc Fielding

2

•  Principal consultant with Pythian’s Advanced Technology Consulting Group

•  13+ years Oracle production systems experience starting with Oracle 7

•  Expertise in the entire enterprise application stack

•  Blogger and conference presenter www.pythian.com/news/author/fielding

•  Occasionally on twitter: @mfild

Page 3: Database as a Service on the Oracle Database Appliance Platform

Lead Database Consultant at Pythian Located in Riga, Latvia

DBA since 2005 Frequent speaker at conferences

@MarisElsins [email protected]

© 2014 Pythian Confidential

Maris Elsins

3

http://bit.ly/getMOSPatch

Page 4: Database as a Service on the Oracle Database Appliance Platform

WHO IS PYTHIAN?

• 200+ leading brands trust us to keep their systems fast, up & secure • Utterly elite DBA & SysAdmin workforce, 9 Oracle ACEs, 2 ACE

directors, 5 Microsoft MVPs, 1 Cloudera Champion of Big Data • Oracle, SQL Server, MySQL, Netezza, Cassandra, Hadoop and

MongoDB plus UNIX SysAdmin and Apps DBA • Big Data Services counter includes architects, R&D, data science

and operations capabilities in one easy to buy vehicle • Industry leading DevOps implementation practice transforms

customer dev and ops strategies to compete with velocity • Zero lock-in, utility billing model, easily blended into existing teams

38% Pythian has grown an average of 38% every year for

the past five years

345 Pythian employs more than 345 leading minds in

26 countries worldwide.

1997 Pythian was founded in 1997 by Paul Vallee

Page 5: Database as a Service on the Oracle Database Appliance Platform

Velocity

Velocity

https://www.flickr.com/photos/fun_flying/2761918512/

Page 6: Database as a Service on the Oracle Database Appliance Platform
Page 7: Database as a Service on the Oracle Database Appliance Platform

Identifying top IT performers •  Company Survey

•  14 000 companies surveyed

•  110 countries

•  Completed 2014

•  40% running 500+ servers

•  Source: Nicole Forsgren Velasquez, Jez Humble, Nigel Kersten, and Gene Kim, Velocity conference, Santa Clara, June 26, 2014

Page 8: Database as a Service on the Oracle Database Appliance Platform

Top IT performers…

•  Deploy changes 30x more often

•  Have 8000x faster change deployments

•  Experience half the deployment failure rate

•  Recover from failures 12x faster

•  But also

–  Twice as likely to exceed profitability, market share, productivity goals

–  50% higher market capitalization growth

Page 9: Database as a Service on the Oracle Database Appliance Platform

Source: John Jenkins, Amazon.com, Velocity conference 2011

Page 10: Database as a Service on the Oracle Database Appliance Platform

What we need

•  Fast, frequent environment builds

•  Similar to production

•  Without sacrificing –  Availability

–  Reliability

–  Security

–  Manageability

Page 11: Database as a Service on the Oracle Database Appliance Platform

Tools Available

Page 12: Database as a Service on the Oracle Database Appliance Platform
Page 13: Database as a Service on the Oracle Database Appliance Platform
Page 14: Database as a Service on the Oracle Database Appliance Platform
Page 15: Database as a Service on the Oracle Database Appliance Platform
Page 16: Database as a Service on the Oracle Database Appliance Platform

Why ODA is interesting?

•  Oracle Engineered systems

•  Single point of support

•  No single point of failure

•  Built for Oracle RAC

•  Relatively low cost

–  60K USD list price for an ODA

–  40K USD list price for storage expansion

–  Provides capacity-on-demand Licensing

•  Scalable by purchasing multiple units

Page 17: Database as a Service on the Oracle Database Appliance Platform

Is ODA suitable for DBaaS?

Photo by Lee Morley (spookman01) on Flickr Photo by Darren Rogers (Daz) on Flickr

Page 18: Database as a Service on the Oracle Database Appliance Platform

Is DBaaS possible on ODA? – Hardware

ODA ODA X3-2 ODA X4-2

CPU cores 2 x 12 cores 3.06 GHz

2 x 16 cores 2.9 GHz

2 x 24 cores2.7 GHz

RAM 2 x 96 GB 2 x 256 GB 2 x 256 GB Shared Storage HDD

(raw) 12 TB

4.8G TB* 18 TB (36TB)

7.2G TB* 18 TB (36TB)

7.2G TB*

Shared Storage SSD (raw) 292 GB 800 GB (1.6 TB) 800 GB (1.6 TB)

ODA provides the HW suitable for a small-medium private cloud platform

ODA V1 ODA X3-2 and X4-2

* Max Useable in +DATA

Page 19: Database as a Service on the Oracle Database Appliance Platform

Is DBaaS possible on ODA? – Software

•  Oracle Appliance Kit (OAK) 12.1.2.1.0 (Nov 2014) –  Grid Infrastructure 12.1.0.2

–  Database EE 12.1.0.2

–  EE options: RAC, Multitenant, In-Memory, ...

–  ACFS and Storage snapshots

–  Oracle Linux 5.10 and Oracle VM 3.2.8

ODA provides the technology backbone required for implementation of DBaaS

Page 20: Database as a Service on the Oracle Database Appliance Platform

Is DBaaS possible on ODA? – Tools •  “oakcli” – Oracle Appliance Kit Command Line

Interface –  Deploy software to ODA –  Patch all components of ODA –  Manage ODA configuration –  Collect diagnostics information –  Create DBs –  Clone DBs (non-CDBs only) –  *Manage CPU pools –  *Create and (snap-)Clone VMs –  *Manage vdisks and vlans

“oakcli” has been developed to provide “as a Service” management functionality

Page 21: Database as a Service on the Oracle Database Appliance Platform

Is ODA suitable for DBaaS?

Hardware

Software

Tools

?

Is ODA an “out of the box”

private could platform for DBaaS

Photo by yourcottoncandyhammer (dracena) on Flickr

Page 22: Database as a Service on the Oracle Database Appliance Platform

My wishes DBaaS on ODA •  Scope: Bare Metal or Virtualized platform •  Choice of DB version: 12c or 11g •  Choice of DB type: non-CDB or CDB •  Fast / snapshot based provisioning of:

–  A new DB (or a PDB) –  A clone from existing DB (or a PDB)

•  Production •  Development gold image

•  Using the rich features of EM 12c + Cloud Management Pack –  The self-service –  The service catalog –  Monitoring –  Chargeback (optional)

Page 23: Database as a Service on the Oracle Database Appliance Platform

Challenges

Page 24: Database as a Service on the Oracle Database Appliance Platform

Challenge #0

OAK 12.1.2 is a “big jump” since OAK 2.10

Release date: November 2014

MOS: Doc Id 888888.1

Page 25: Database as a Service on the Oracle Database Appliance Platform

Challenge #1: The EM

•  EM 12c is not ODA-aware –  ODA is just a cluster of 2 servers to EM 12c

–  no EM 12c plugin for ODA (yet)

–  EM 12c can’t make calls to “oakcli”

–  EM 12c does not provide snap-clone feature for PDBs on ACFS (even with Cloud MP)

–  Rumors from #DOAG 2014!

•  How do we implement self-service functionality?

•  Can we find an alternative to EM 12c?

Page 26: Database as a Service on the Oracle Database Appliance Platform

Challenge #2: Interaction with “oakcli”

•  “oakcli” must be executed as root

•  Passwords need to be typed in

•  No Non-interactive mode

•  Can we “hack” it to automate the DB provisioning?

Page 27: Database as a Service on the Oracle Database Appliance Platform

Challenge #3: Customizations •  We can “hack” it! But, we don’t want to “hack” it! •  Customization is a configuration that’s not expected by

“oakcli” •  Unclear boundaries between customizations and

supported configurations when manual changes are done (non-”oakcli”) are done. I.e. –  Create database manually (files layout) –  Create additional ACFS snapshots –  Change the DB file layout

•  Possible impact? –  patching and upgrades –  stability

•  Any “customization” needs to be thoroughly tested before allowing into production (test upgrading too)

•  Can affect the supportability

Page 28: Database as a Service on the Oracle Database Appliance Platform

Challenges #4: DB provisioning with “oakcli” •  ODA provisions new databases using “oakcli” •  Very limited configurability, i.e.

–  Non-CDB or CDB 11.2.0.2+ and 12.1.0.2 –  Choice of size (memory-wise) –  Storage quota

•  All non-CDBs are stored in common ACFS volumes –  Smart use of the “empty snapshot” to segregate DBs

•  Each CDB is stored it’s own 3 ACFS volumes •  All CDB data files are in a single ACFS volume

–  All PDBs are in the same bucket –  Snap-cloning a PDB manually, will take a snapshot of the

whole ACFS volume, which is not efficient. –  You can create additional ACFS volume for each PDB to

avoid unnecessary snapshots of CDB$ROOT

Page 29: Database as a Service on the Oracle Database Appliance Platform

Challenges #5: “oakcli” snap-clones

•  Only for DB 11.2.0.4 and 12.1.0.2

•  Not supported for Physical standby (yet)

•  Could be used to snap-clone PROD to DEV on another ODA

•  Non-CDBs

–  Done by “oakcli”

–  Clever use of ACFS snapshots

•  CDBs

–  No “oakcli” support, but SQLPlus can be used

–  Inefficient ACFS layout

Page 30: Database as a Service on the Oracle Database Appliance Platform

So we can’t use ODA for DBaaS?

Photo by zeitfaenger.at (kwarz) on Flickr

Page 31: Database as a Service on the Oracle Database Appliance Platform

What we can do on ODA NOW! •  Schema as a Service •  Limited self service possibilities with non-CDBs

–  Provisioning features provided by “oakcli” –  Administrators need to be involved

•  ODA is not ready for DBaaS with PDBs –  Limited support built in “oakcli” –  Database 12c features compensates for these limitations –  Adjust storage layout to support snap-clones for PDBs

better –  One CDB per ODA (if possible) to avoid restarts for memory

re-configuration

•  Self-Service –  EM 12c - not yet –  Custom built? – Too difficult, too intrusive –  Multitenant Self-Service Provisioning (MSSP)

Page 32: Database as a Service on the Oracle Database Appliance Platform

Using MSSP with ODA •  “Multitenant Self-Service Provisioning”

•  Currently in beta test

•  Run on Apex inside CDB$ROOT

•  Install into a new CDB

•  Provides self-service interface for creating, cloning, plugging and unplugging PDBs

•  Supports snapshot cloning!

•  Supports user quotas!

•  No DB management and monitoring L

Page 33: Database as a Service on the Oracle Database Appliance Platform

MSSP: Creating a PDB

Page 34: Database as a Service on the Oracle Database Appliance Platform

MSSP: Creating a PDB

Page 35: Database as a Service on the Oracle Database Appliance Platform

MSSP: Creating a PDB

Page 36: Database as a Service on the Oracle Database Appliance Platform

MSSP: Creating a PDB

Page 37: Database as a Service on the Oracle Database Appliance Platform

MSSP: Creating a PDB

Page 38: Database as a Service on the Oracle Database Appliance Platform

MSSP: Cloning a PDB

Page 39: Database as a Service on the Oracle Database Appliance Platform

MSSP: Cloning a PDB

Page 40: Database as a Service on the Oracle Database Appliance Platform

MSSP: Cloning a PDB

Page 41: Database as a Service on the Oracle Database Appliance Platform

Extending to multiple ODAs •  Benefits

–  Standardized platform –  Avoiding “surprises” during configuration, patching and

upgrades –  Predictable performance and accurate estimates

•  Single database is limited to running on 1 ODA –  Use Data Guard or other replication solutions to extend or

migrate between ODAs –  Use NFS to facilitate inter-ODA provisioning

•  Self-service challenge –  Managing multiple ODAs from the same tool –  One MSSP instance needed per ODA

•  Some manual tasks are expected •  Horizontal scaling is not possible – buy an Exadata!

Page 42: Database as a Service on the Oracle Database Appliance Platform

A possible use case (1) 1. PROD runs on 12c Multitenant

2. Automated snap-clone create pluggable database PRODSNAP from PROD snapshot copy;

3. PRODSNAP is read-only

4. Automated PDB cloning over DB link create pluggable database DEVGOLD from PRODSNAP@PROD_ODA_PS;

5. Prepare the DEV Gold image –  Purging and cleanup

–  Data masking

–  Open it as read only

–  Remove PRODSNAP

6. Users can clone their environments from the DEV Gold using MSSP.

Frequent refreshing of DEVGOLD will exhaust space quickly. Use dedicated

volume for each clone.

Page 43: Database as a Service on the Oracle Database Appliance Platform

A possible use case (2) 1.  PROD runs on 12c Singletenant or multitenant!!! 2. DG redo apply to the physical standby3. The standby is continuously updated

4. Storage snapshot –  Temporarily stop redo apply

–  Sharing the ACFS volume between 2 DBs

–  Possible with manual ACFS snapshot

5. Create the DEVGOLD –  DBMS_PDB.RECOVER

–  Plugin the PDB with nocopy

–  Purging and cleanup

–  Data masking

–  Open it as read only

6. Users can clone their environments from the DEVGOLD

–  Does it work “create pluggable … snapshot copy”?

–  Works with manual snapshots

Frequent refreshing of DEVGOLD is possible!

Page 44: Database as a Service on the Oracle Database Appliance Platform

Recommendations and lessons learned

•  Start small

•  Set expectations for the service levels

•  Review tools included with the platform

•  Plan the Storage carefully

–  Multiple DB vs ACFS storage snapshots

–  With storage cloning, high-volume data changes are expensive

•  Controls and resource management are important

•  Many out-of-the box tools are inflexible

Page 45: Database as a Service on the Oracle Database Appliance Platform

Conclusions about DBaaS on ODA •  Sufficient SW and HW •  The tools are not ready yet •  Limited DBaaS capabilities at the moment

–  “oakcli” for non-CDB

–  “Create pluggable database .. snapshot copy” SQL for PDBs

–  No ready built Self-service

•  Oracle is working on improvements –  EM 12c Plugin for ODA

–  Support for snap-clones from Physical Standby

–  Frequent OAK releases = new features

•  Flexible VM provisioning on the virtualized platform gives hope for more flexibility around DBs in future.

Page 46: Database as a Service on the Oracle Database Appliance Platform

[email protected] [email protected]

@mfild @MarisElsins @Pythian

http://pythian.com/blog

http://is.gd/PythianFacebook

https://www.linkedin.com/company/pythian

46

?