SlideShare a Scribd company logo
ROBIN
SYSTEMS
SUN5617: Docker 101 for Oracle DBAs
Adeesh	Fulay
Director	of	Products
@AdeeshF
adeesh@robinsystems.com
robinsystems.com
ABOUT ME
› Over 14 years of experience across virtualization, storage,
middleware, databases, & big data applications
› Director of Products, Robin Systems
› Application Virtualization Platform for big data apps and
databases
› Previously @
› VMware - vSphere, vCloud Director, vCloud Air (public cloud)
› Oracle America – OEM, DBLM, DBaaS, DB Cloning, Job System,
Reporting, Plugins, etc …
› mValent Inc (acquired by Oracle) - Config mgmt of Middleware
& Database products
Adeesh	Fulay
Director	of	Products
@AdeeshF
adeesh@robinsystems.com
linkedin.com/in/adeeshfulay
AGENDA
› Why Containers?
› Linux Container Overview
› Look Under the Hood
› Getting Hands Dirty!!!
› Containerized Databases
› Summary
WHY CONTAINERS?
4
THE ANALOGY: CARGO TRANSPORT
CARGO SOLUTION: INTERMODAL SHIPPING CONTAINER
THE BUSINESS CHALLENGE
BUSINESS SOLUTION: LINUX CONTAINERS
LINUX CONTAINERS OVERVIEW
9
VIRTUALIZATION
Each virtual machine includes not
only the app binary, but the entire
operating system (Guest OS) and
necessary libraries (which may weight
10s of GB)
Host OS
Hypervisor
Guest OS
Libraries
App A
Guest OS
Libraries
App B
Host OS
Libraries
App A
Libraries
App B
DOCKER
Each container contains only the
necessary application binary and its
dependent libraries (which may
weight 10s of MB). The operating
system is shared by all containers.
CONTAINERS
UNDERSTANDING CONTAINERS
Each container has:
1. Its own network interface (and IP address)
2. Its own file system
3. Isolation (security)
› Container A & B can’t harm (or even see) each other
› Uses Linux kernel’s “namespaces” for this
4. Isolation (resource usage)
› Soft & hard quotas for CPU, RAM and IO
› Uses Linux kernel’s “cgroups” for this
Wait, this looks like a virtual machine!
So, what’s the difference?
Userspace
Linux Kernel
Cgroups Namespaces
Management
Interface
LXC
App A App B
WHY CONTAINERS?
› OS-Based Lightweight Virtualization
Technology
› Content & Resource Isolation
› Better Performance
› Better Efficiency & Smaller footprint
› Build, ship, deploy anywhere
› Separation of Duties
Source: IBM Research
http://domino.research.ibm.com/library/cyberdig.nsf/papers/0929052195DD819C85257D2300681
E7B/$File/rc25482.pdf
TYPES OF CONTAINERS
• The	Ngnix
• Node.js
• Postgres
• Redis
• MariaDB
• Node.js
• ElasticSearch
• Wordpress
• Node.js
SYSTEM	CONTAINERS
• Each container runs an entire service stack
(multiple applications per container)
• Meant to be used as lightweight VM. Examples –
LXC, OpenVZ, Solaris Zones
• No need to repackage applications in any special
way
• Supports in-place patch/upgrade & SSH access
Great	for	Traditional	Applications
Ngnix
Node.js
Postgres
Redis
MariaDB
Node.js
ElasticSearch
Wordpress
Ngnix
APPLICATION	CONTAINERS
• Each container runs a single application
(single concern per container philosophy)
• Most popular container format. Example – Docker
• Requires applications to be repackaged and
reconfigured to work with Docker image format
• Patch/Upgrade entails replacing container image
Great	for	Modern	Applications
Blog on LXC vs Docker: https://robinsystems.com/blog/containers-deep-dive-lxc-vs-docker-comparison/
WHY DOCKER?
A value of 100 is the peak popularity for the term.
~450K	
images	on	DockerHub
~8	Billion
pulls	from	DockerHub
ORACLE SUPPORTS BOTH DOCKER AND LXC
LXC Support: http://www.oracle.com/technetwork/database/virtualizationmatrix-172995.html
› General
› OracleJava
› OpenJDK
› Database
› RDBMS
› MySQL
› NoSQL
› Middleware
› Glassfish
› WebLogic
› Coherence
› Tuxedo
› HTTP Server
Official	Oracle	on	Docker	repository:	
https://github.com/oracle/docker-images
Oracle	Database Oracle	RAC	(CRS +	ASM)
LXC	(Test	&	Production) ✓ ✓
Docker	(Dev Only) ✓ ✘
Docker 101 for Oracle DBAs - Oracle OpenWorld 2017
UNDER THE HOOD
DOCKER ARCHITECTURE
Key Components
Docker Engine / Daemon
Docker Containers
Docker Images
Docker Registry
Docker Client
Client can be on the same or different host as the daemon. They communicate over sockets or REST APIs.
DOCKER ENGINE
Docker Engine: Responsible for
managing networking, images,
containers, volumes, plugins,
orchestration, etc
Install Docker Engine on your
laptops and servers
IMAGES
› Images are made up of multiple r/o
layers
› Containers are a thin r/w layer on top
› Layers are shared by multiple images
› Storage drivers
› AUFS (Ubuntu, OSX)
› Device mapper (RHEL, CentOS)
› BTRFS (Oracle Linux)
› Overlay, Overlay2
› ZFS
› Layer default location: /var/lib/docker
Additional Reading: https://adeeshfulay.wordpress.com/2017/09/08/understanding-docker-images-and-layers/
DOCKERFILES
Base
Docker
Image
New
Docker
Image
Instructions
• Run commands
• Add file or folder
• Define ENV
variables
• Define processes
to run
• Set entrypoint
Dockerfile
$ Docker build –t <tag> <dir with dockerfile>
CONTAINER MANAGEMENT
Container is like a directory. It is
created from an image, and
contains everything required to
run an app. Containers like VMs
have state and are portable.
Containerd: Simple daemon that
uses runtimes to manage
containers
runC: Docker’s default container
runtime. Can be replaced with
other OCI compliant runtimes.
Docker	Engine
IMAGE REGISTRY
Registry is a distribution component of Docker. It can be private or public (Docker Hub: https://hub.docker.com)
NAS	/	SAN	/	CLOUD	/	SDS
DOCKER VOLUMES
Container
Volume
Host	1
Container
Volume
Host	1
Container
Volume
Host	1
Local Storage Distributed / Shared Storage
Choose	between	
mobility	&	
performance
[Host]/opt/data-dir:[Container]/etc/config
Local	Storage
DOCKER NETWORKING
Bridge Network
Overlay Network
Reference: https://blog.docker.com/2016/12/understanding-docker-
networking-drivers-use-cases/
Network types Details
None No external n/w
Host Share host n/w stack
Bridge NATing, expose ports, poor
performance
macvlan Uses host subnet, VLAN, swarm mode
Overlay Multi-host, VXLAN, swarm mode
3rd Party Plugins OpenvSwitch, Weave, …..
CONTAINER ORCHESTRATION
› Multi-container, Multi-Host scheduling
› Supports multiple container formats- Docker & LXC
› Placement, Affinity and Anti-affinity rules
› Multi-Tenancy, RBAC, AuthN, & AuthZ
› Scaling Options – Up/Down, Out/Back
› Management of Storage & Networking
› Data Management - Snapshot, restore, time travel, clone
› High Availability & Auto Failover
› Service discovery and load balancing
› Extensible – Onboard custom apps
ORACLE, DOCKER, & KUBERNETES
Oracle is late to the party, but making big investments now to catch up!!
GETTING HANDS DIRTY!!!
› DEMO
Mike	Rowe	of	Dirty	Jobs
DEMO: DOCKER EXAMPLES
› Docker info
› Dockerhub & Oracle container registry
› Docker images & Docker pull
› Dockerfile
› Docker run –d <oradb> -v …
› Docker ps -a
› Docker exec –ti <cname> bash
› Docker logs …
› Docker inspect <oradb>
› Docker network ls
› Docker volume ls
Containerized Databases
› Good Idea or Disaster?
How do I get the
absolute best performance?
How can I rapidly clone my
production for test/dev runs?
How do I apply patches and upgrades
without bringing down the application?
How do I avoid overprovisioning
from the start?
How do I quickly deploy
my applications?
Can I run multiple applications on the same
setup without worrying about noisy neighbors?
OPERATIONAL CHALLENGES
How do I handle
spikes and growth?
Robin AVP: Virtualize And Manage BigData & Database Apps with Bare Metal Performance
Guaranteed Min and Max IOPS
Consolidate without losing predictability
Push-button Application Provisioning, Elastic Scaling
10x time saving by managing application not infrastructure
Space-efficient snapshots and clones in minutes
Application time travel (storage, app, network and config)
No Virtualization Overhead
40% - 60% performance advantage
VM
INTEGRATED
SCALE-OUT
BLOCK STORAGE
VIRTUAL
NETWORKING
CONTAINER-BASED
VIRTUALIZATION
APPLICATION
LIFECYCLE
MANAGEMENT
CONVERGED
PLATFORM
Application-aware Infrastructure plumbing
Deploy applications guaranteeing compute+storage anti/affinity rules
Custom
Apps
CONSOLIDATION OPTIONS FOR ORACLE DATABASES
Options	à
Virtual	Machine Oracle	12c	Multitenant	 Containers	on	Robin
Criteria	⬇
Performance	
overhead
Significant
Hypervisor	layer,	Guest	OS
Significant
Shared	Redo	logs,	Noisy	neighbors	
problem
Negligible
Completely	independent,	no	
hypervisor
Availability
High
One	VM	doesn’t	impact	another	one
Medium
CDB	shutdown	takes	down	all	PDBs	with	it
High
Just	like	VMs
Isolation	
Excellent Good
Shared	buffer	cache
Excellent
Performance	
predictability
Poor
Cannot cap	IOPS	at	the	hypervisor	
layer
Good	
IOPS	control	only	available	on	Exadata
Excellent.	
Built	into	the	platform
Agility Good Excellent Excellent
Manageability
High
OS	sprawl
High
Challenges	in	getting	patching	window
Low
No	OS	sprawl,	no additional	licenses
33
https://robinsystems.com/solutions/relational-databases/
www.robinsystems.com info@robinsystems.com
THANK YOU
Adeesh	Fulay
Director	of	Products
@AdeeshF
adeesh@robinsystems.com
Ad

More Related Content

What's hot (19)

From VMs to Containers: Introducing Docker Containers for Linux and Windows S...
From VMs to Containers: Introducing Docker Containers for Linux and Windows S...From VMs to Containers: Introducing Docker Containers for Linux and Windows S...
From VMs to Containers: Introducing Docker Containers for Linux and Windows S...
Ido Flatow
 
Anatomy of a Redis Command by Madelyn Olson of Amazon Web Services - Redis Da...
Anatomy of a Redis Command by Madelyn Olson of Amazon Web Services - Redis Da...Anatomy of a Redis Command by Madelyn Olson of Amazon Web Services - Redis Da...
Anatomy of a Redis Command by Madelyn Olson of Amazon Web Services - Redis Da...
Redis Labs
 
Getting Started with NuoDB Community Edition
Getting Started with NuoDB Community Edition Getting Started with NuoDB Community Edition
Getting Started with NuoDB Community Edition
NuoDB
 
Scaling Pinterest
Scaling PinterestScaling Pinterest
Scaling Pinterest
C4Media
 
How MariaDB is approaching DBaaS
How MariaDB is approaching DBaaSHow MariaDB is approaching DBaaS
How MariaDB is approaching DBaaS
MariaDB plc
 
IaaS for DBAs in Azure
IaaS for DBAs in AzureIaaS for DBAs in Azure
IaaS for DBAs in Azure
Kellyn Pot'Vin-Gorman
 
Database Containerization Platform Checklist
Database Containerization Platform ChecklistDatabase Containerization Platform Checklist
Database Containerization Platform Checklist
Adeesh Fulay
 
Virtualization and Containers
Virtualization and ContainersVirtualization and Containers
Virtualization and Containers
Kellyn Pot'Vin-Gorman
 
Storing and processing data with the wso2 platform
Storing and processing data with the wso2 platformStoring and processing data with the wso2 platform
Storing and processing data with the wso2 platform
WSO2
 
2015 deploying flash in the data center
2015 deploying flash in the data center2015 deploying flash in the data center
2015 deploying flash in the data center
Howard Marks
 
Red Hat Summit 2017 - Intro to SQL Server on RHEL and Open Shift
Red Hat Summit 2017 - Intro to SQL Server on RHEL and Open ShiftRed Hat Summit 2017 - Intro to SQL Server on RHEL and Open Shift
Red Hat Summit 2017 - Intro to SQL Server on RHEL and Open Shift
Travis Wright
 
Introducing Node.js in an Oracle technology environment (including hands-on)
Introducing Node.js in an Oracle technology environment (including hands-on)Introducing Node.js in an Oracle technology environment (including hands-on)
Introducing Node.js in an Oracle technology environment (including hands-on)
Lucas Jellema
 
Building Storage for Clouds (ONUG Spring 2015)
Building Storage for Clouds (ONUG Spring 2015)Building Storage for Clouds (ONUG Spring 2015)
Building Storage for Clouds (ONUG Spring 2015)
Howard Marks
 
Database as a Service on the Oracle Database Appliance Platform
Database as a Service on the Oracle Database Appliance PlatformDatabase as a Service on the Oracle Database Appliance Platform
Database as a Service on the Oracle Database Appliance Platform
Maris Elsins
 
Cassandra Introduction & Features
Cassandra Introduction & FeaturesCassandra Introduction & Features
Cassandra Introduction & Features
Phil Peace
 
Managing storage on Prem and in Cloud
Managing storage on Prem and in CloudManaging storage on Prem and in Cloud
Managing storage on Prem and in Cloud
Howard Marks
 
Azure DBA with IaaS
Azure DBA with IaaSAzure DBA with IaaS
Azure DBA with IaaS
Kellyn Pot'Vin-Gorman
 
Power BI with Essbase in the Oracle Cloud
Power BI with Essbase in the Oracle CloudPower BI with Essbase in the Oracle Cloud
Power BI with Essbase in the Oracle Cloud
Kellyn Pot'Vin-Gorman
 
Brk2051 sql server on linux and docker
Brk2051 sql server on linux and dockerBrk2051 sql server on linux and docker
Brk2051 sql server on linux and docker
Bob Ward
 
From VMs to Containers: Introducing Docker Containers for Linux and Windows S...
From VMs to Containers: Introducing Docker Containers for Linux and Windows S...From VMs to Containers: Introducing Docker Containers for Linux and Windows S...
From VMs to Containers: Introducing Docker Containers for Linux and Windows S...
Ido Flatow
 
Anatomy of a Redis Command by Madelyn Olson of Amazon Web Services - Redis Da...
Anatomy of a Redis Command by Madelyn Olson of Amazon Web Services - Redis Da...Anatomy of a Redis Command by Madelyn Olson of Amazon Web Services - Redis Da...
Anatomy of a Redis Command by Madelyn Olson of Amazon Web Services - Redis Da...
Redis Labs
 
Getting Started with NuoDB Community Edition
Getting Started with NuoDB Community Edition Getting Started with NuoDB Community Edition
Getting Started with NuoDB Community Edition
NuoDB
 
Scaling Pinterest
Scaling PinterestScaling Pinterest
Scaling Pinterest
C4Media
 
How MariaDB is approaching DBaaS
How MariaDB is approaching DBaaSHow MariaDB is approaching DBaaS
How MariaDB is approaching DBaaS
MariaDB plc
 
Database Containerization Platform Checklist
Database Containerization Platform ChecklistDatabase Containerization Platform Checklist
Database Containerization Platform Checklist
Adeesh Fulay
 
Storing and processing data with the wso2 platform
Storing and processing data with the wso2 platformStoring and processing data with the wso2 platform
Storing and processing data with the wso2 platform
WSO2
 
2015 deploying flash in the data center
2015 deploying flash in the data center2015 deploying flash in the data center
2015 deploying flash in the data center
Howard Marks
 
Red Hat Summit 2017 - Intro to SQL Server on RHEL and Open Shift
Red Hat Summit 2017 - Intro to SQL Server on RHEL and Open ShiftRed Hat Summit 2017 - Intro to SQL Server on RHEL and Open Shift
Red Hat Summit 2017 - Intro to SQL Server on RHEL and Open Shift
Travis Wright
 
Introducing Node.js in an Oracle technology environment (including hands-on)
Introducing Node.js in an Oracle technology environment (including hands-on)Introducing Node.js in an Oracle technology environment (including hands-on)
Introducing Node.js in an Oracle technology environment (including hands-on)
Lucas Jellema
 
Building Storage for Clouds (ONUG Spring 2015)
Building Storage for Clouds (ONUG Spring 2015)Building Storage for Clouds (ONUG Spring 2015)
Building Storage for Clouds (ONUG Spring 2015)
Howard Marks
 
Database as a Service on the Oracle Database Appliance Platform
Database as a Service on the Oracle Database Appliance PlatformDatabase as a Service on the Oracle Database Appliance Platform
Database as a Service on the Oracle Database Appliance Platform
Maris Elsins
 
Cassandra Introduction & Features
Cassandra Introduction & FeaturesCassandra Introduction & Features
Cassandra Introduction & Features
Phil Peace
 
Managing storage on Prem and in Cloud
Managing storage on Prem and in CloudManaging storage on Prem and in Cloud
Managing storage on Prem and in Cloud
Howard Marks
 
Power BI with Essbase in the Oracle Cloud
Power BI with Essbase in the Oracle CloudPower BI with Essbase in the Oracle Cloud
Power BI with Essbase in the Oracle Cloud
Kellyn Pot'Vin-Gorman
 
Brk2051 sql server on linux and docker
Brk2051 sql server on linux and dockerBrk2051 sql server on linux and docker
Brk2051 sql server on linux and docker
Bob Ward
 

Similar to Docker 101 for Oracle DBAs - Oracle OpenWorld 2017 (20)

ma-formation-en-Docker-jlklk,nknkjn.pptx
ma-formation-en-Docker-jlklk,nknkjn.pptxma-formation-en-Docker-jlklk,nknkjn.pptx
ma-formation-en-Docker-jlklk,nknkjn.pptx
imenhamada17
 
Docker handons-workshop-for-charity
Docker handons-workshop-for-charityDocker handons-workshop-for-charity
Docker handons-workshop-for-charity
Yusuf Hadiwinata Sutandar
 
DevOps Fusion 2019: Docker - Why the future takes place in containers
DevOps Fusion 2019: Docker - Why the future takes place in containersDevOps Fusion 2019: Docker - Why the future takes place in containers
DevOps Fusion 2019: Docker - Why the future takes place in containers
Marc Müller
 
Docker-Intro
Docker-IntroDocker-Intro
Docker-Intro
Sujai Sivasamy
 
Immutable Desktop using Container Orchestration By Mohammed Danish Amber .pdf
Immutable Desktop using Container Orchestration By Mohammed Danish Amber .pdfImmutable Desktop using Container Orchestration By Mohammed Danish Amber .pdf
Immutable Desktop using Container Orchestration By Mohammed Danish Amber .pdf
null - The Open Security Community
 
Killer Docker Workflows for Development
Killer Docker Workflows for DevelopmentKiller Docker Workflows for Development
Killer Docker Workflows for Development
Chris Tankersley
 
Docker - Portable Deployment
Docker - Portable DeploymentDocker - Portable Deployment
Docker - Portable Deployment
javaonfly
 
Accelerate your development with Docker
Accelerate your development with DockerAccelerate your development with Docker
Accelerate your development with Docker
Andrey Hristov
 
Accelerate your software development with Docker
Accelerate your software development with DockerAccelerate your software development with Docker
Accelerate your software development with Docker
Andrey Hristov
 
Docker, Cloud Foundry, Bosh & Bluemix
Docker, Cloud Foundry, Bosh & BluemixDocker, Cloud Foundry, Bosh & Bluemix
Docker, Cloud Foundry, Bosh & Bluemix
IBM
 
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
dotCloud
 
OpenStack Summit
OpenStack SummitOpenStack Summit
OpenStack Summit
Docker, Inc.
 
Journey to the devops automation with docker kubernetes and openshift
Journey to the devops automation with docker kubernetes and openshiftJourney to the devops automation with docker kubernetes and openshift
Journey to the devops automation with docker kubernetes and openshift
Yusuf Hadiwinata Sutandar
 
The Docker Ecosystem
The Docker EcosystemThe Docker Ecosystem
The Docker Ecosystem
Dmitry Skaredov
 
Oracle WebLogic Server 12c with Docker
Oracle WebLogic Server 12c with DockerOracle WebLogic Server 12c with Docker
Oracle WebLogic Server 12c with Docker
Guatemala User Group
 
Docker and Microservice
Docker and MicroserviceDocker and Microservice
Docker and Microservice
Samuel Chow
 
IBM Bluemix Paris Meetup #14 - Le Village by CA - 20160413 - Introduction à D...
IBM Bluemix Paris Meetup #14 - Le Village by CA - 20160413 - Introduction à D...IBM Bluemix Paris Meetup #14 - Le Village by CA - 20160413 - Introduction à D...
IBM Bluemix Paris Meetup #14 - Le Village by CA - 20160413 - Introduction à D...
IBM France Lab
 
Docker Introduction
Docker IntroductionDocker Introduction
Docker Introduction
Jeffrey Ellin
 
Word press and containers
Word press and containersWord press and containers
Word press and containers
wcto2017
 
Introduction to Docker
Introduction to DockerIntroduction to Docker
Introduction to Docker
Aditya Konarde
 
ma-formation-en-Docker-jlklk,nknkjn.pptx
ma-formation-en-Docker-jlklk,nknkjn.pptxma-formation-en-Docker-jlklk,nknkjn.pptx
ma-formation-en-Docker-jlklk,nknkjn.pptx
imenhamada17
 
DevOps Fusion 2019: Docker - Why the future takes place in containers
DevOps Fusion 2019: Docker - Why the future takes place in containersDevOps Fusion 2019: Docker - Why the future takes place in containers
DevOps Fusion 2019: Docker - Why the future takes place in containers
Marc Müller
 
Immutable Desktop using Container Orchestration By Mohammed Danish Amber .pdf
Immutable Desktop using Container Orchestration By Mohammed Danish Amber .pdfImmutable Desktop using Container Orchestration By Mohammed Danish Amber .pdf
Immutable Desktop using Container Orchestration By Mohammed Danish Amber .pdf
null - The Open Security Community
 
Killer Docker Workflows for Development
Killer Docker Workflows for DevelopmentKiller Docker Workflows for Development
Killer Docker Workflows for Development
Chris Tankersley
 
Docker - Portable Deployment
Docker - Portable DeploymentDocker - Portable Deployment
Docker - Portable Deployment
javaonfly
 
Accelerate your development with Docker
Accelerate your development with DockerAccelerate your development with Docker
Accelerate your development with Docker
Andrey Hristov
 
Accelerate your software development with Docker
Accelerate your software development with DockerAccelerate your software development with Docker
Accelerate your software development with Docker
Andrey Hristov
 
Docker, Cloud Foundry, Bosh & Bluemix
Docker, Cloud Foundry, Bosh & BluemixDocker, Cloud Foundry, Bosh & Bluemix
Docker, Cloud Foundry, Bosh & Bluemix
IBM
 
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
dotCloud
 
Journey to the devops automation with docker kubernetes and openshift
Journey to the devops automation with docker kubernetes and openshiftJourney to the devops automation with docker kubernetes and openshift
Journey to the devops automation with docker kubernetes and openshift
Yusuf Hadiwinata Sutandar
 
Oracle WebLogic Server 12c with Docker
Oracle WebLogic Server 12c with DockerOracle WebLogic Server 12c with Docker
Oracle WebLogic Server 12c with Docker
Guatemala User Group
 
Docker and Microservice
Docker and MicroserviceDocker and Microservice
Docker and Microservice
Samuel Chow
 
IBM Bluemix Paris Meetup #14 - Le Village by CA - 20160413 - Introduction à D...
IBM Bluemix Paris Meetup #14 - Le Village by CA - 20160413 - Introduction à D...IBM Bluemix Paris Meetup #14 - Le Village by CA - 20160413 - Introduction à D...
IBM Bluemix Paris Meetup #14 - Le Village by CA - 20160413 - Introduction à D...
IBM France Lab
 
Word press and containers
Word press and containersWord press and containers
Word press and containers
wcto2017
 
Introduction to Docker
Introduction to DockerIntroduction to Docker
Introduction to Docker
Aditya Konarde
 
Ad

Recently uploaded (20)

MINDCTI revenue release Quarter 1 2025 PR
MINDCTI revenue release Quarter 1 2025 PRMINDCTI revenue release Quarter 1 2025 PR
MINDCTI revenue release Quarter 1 2025 PR
MIND CTI
 
Linux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdfLinux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdf
RHCSA Guru
 
Role of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered ManufacturingRole of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered Manufacturing
Andrew Leo
 
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
 
Web and Graphics Designing Training in Rajpura
Web and Graphics Designing Training in RajpuraWeb and Graphics Designing Training in Rajpura
Web and Graphics Designing Training in Rajpura
Erginous Technology
 
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Aqusag Technologies
 
TrsLabs Consultants - DeFi, WEb3, Token Listing
TrsLabs Consultants - DeFi, WEb3, Token ListingTrsLabs Consultants - DeFi, WEb3, Token Listing
TrsLabs Consultants - DeFi, WEb3, Token Listing
Trs Labs
 
Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)
Ortus Solutions, Corp
 
Social Media App Development Company-EmizenTech
Social Media App Development Company-EmizenTechSocial Media App Development Company-EmizenTech
Social Media App Development Company-EmizenTech
Steve Jonas
 
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
organizerofv
 
Technology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data AnalyticsTechnology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data Analytics
InData Labs
 
Build 3D Animated Safety Induction - Tech EHS
Build 3D Animated Safety Induction - Tech EHSBuild 3D Animated Safety Induction - Tech EHS
Build 3D Animated Safety Induction - Tech EHS
TECH EHS Solution
 
Cyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of securityCyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of security
riccardosl1
 
Heap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and DeletionHeap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and Deletion
Jaydeep Kale
 
Build Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For DevsBuild Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For Devs
Brian McKeiver
 
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
BookNet Canada
 
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes
 
tecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdftecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdf
fjgm517
 
HCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser EnvironmentsHCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser Environments
panagenda
 
Vaibhav Gupta BAML: AI work flows without Hallucinations
Vaibhav Gupta BAML: AI work flows without HallucinationsVaibhav Gupta BAML: AI work flows without Hallucinations
Vaibhav Gupta BAML: AI work flows without Hallucinations
john409870
 
MINDCTI revenue release Quarter 1 2025 PR
MINDCTI revenue release Quarter 1 2025 PRMINDCTI revenue release Quarter 1 2025 PR
MINDCTI revenue release Quarter 1 2025 PR
MIND CTI
 
Linux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdfLinux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdf
RHCSA Guru
 
Role of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered ManufacturingRole of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered Manufacturing
Andrew Leo
 
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
 
Web and Graphics Designing Training in Rajpura
Web and Graphics Designing Training in RajpuraWeb and Graphics Designing Training in Rajpura
Web and Graphics Designing Training in Rajpura
Erginous Technology
 
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Aqusag Technologies
 
TrsLabs Consultants - DeFi, WEb3, Token Listing
TrsLabs Consultants - DeFi, WEb3, Token ListingTrsLabs Consultants - DeFi, WEb3, Token Listing
TrsLabs Consultants - DeFi, WEb3, Token Listing
Trs Labs
 
Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)
Ortus Solutions, Corp
 
Social Media App Development Company-EmizenTech
Social Media App Development Company-EmizenTechSocial Media App Development Company-EmizenTech
Social Media App Development Company-EmizenTech
Steve Jonas
 
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
IEDM 2024 Tutorial2_Advances in CMOS Technologies and Future Directions for C...
organizerofv
 
Technology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data AnalyticsTechnology Trends in 2025: AI and Big Data Analytics
Technology Trends in 2025: AI and Big Data Analytics
InData Labs
 
Build 3D Animated Safety Induction - Tech EHS
Build 3D Animated Safety Induction - Tech EHSBuild 3D Animated Safety Induction - Tech EHS
Build 3D Animated Safety Induction - Tech EHS
TECH EHS Solution
 
Cyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of securityCyber Awareness overview for 2025 month of security
Cyber Awareness overview for 2025 month of security
riccardosl1
 
Heap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and DeletionHeap, Types of Heap, Insertion and Deletion
Heap, Types of Heap, Insertion and Deletion
Jaydeep Kale
 
Build Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For DevsBuild Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For Devs
Brian McKeiver
 
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
Transcript: #StandardsGoals for 2025: Standards & certification roundup - Tec...
BookNet Canada
 
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes Partner Innovation Updates for May 2025
ThousandEyes
 
tecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdftecnologias de las primeras civilizaciones.pdf
tecnologias de las primeras civilizaciones.pdf
fjgm517
 
HCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser EnvironmentsHCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser Environments
panagenda
 
Vaibhav Gupta BAML: AI work flows without Hallucinations
Vaibhav Gupta BAML: AI work flows without HallucinationsVaibhav Gupta BAML: AI work flows without Hallucinations
Vaibhav Gupta BAML: AI work flows without Hallucinations
john409870
 
Ad

Docker 101 for Oracle DBAs - Oracle OpenWorld 2017

  • 1. ROBIN SYSTEMS SUN5617: Docker 101 for Oracle DBAs Adeesh Fulay Director of Products @AdeeshF [email protected] robinsystems.com
  • 2. ABOUT ME › Over 14 years of experience across virtualization, storage, middleware, databases, & big data applications › Director of Products, Robin Systems › Application Virtualization Platform for big data apps and databases › Previously @ › VMware - vSphere, vCloud Director, vCloud Air (public cloud) › Oracle America – OEM, DBLM, DBaaS, DB Cloning, Job System, Reporting, Plugins, etc … › mValent Inc (acquired by Oracle) - Config mgmt of Middleware & Database products Adeesh Fulay Director of Products @AdeeshF [email protected] linkedin.com/in/adeeshfulay
  • 3. AGENDA › Why Containers? › Linux Container Overview › Look Under the Hood › Getting Hands Dirty!!! › Containerized Databases › Summary
  • 5. THE ANALOGY: CARGO TRANSPORT
  • 6. CARGO SOLUTION: INTERMODAL SHIPPING CONTAINER
  • 10. VIRTUALIZATION Each virtual machine includes not only the app binary, but the entire operating system (Guest OS) and necessary libraries (which may weight 10s of GB) Host OS Hypervisor Guest OS Libraries App A Guest OS Libraries App B Host OS Libraries App A Libraries App B DOCKER Each container contains only the necessary application binary and its dependent libraries (which may weight 10s of MB). The operating system is shared by all containers. CONTAINERS
  • 11. UNDERSTANDING CONTAINERS Each container has: 1. Its own network interface (and IP address) 2. Its own file system 3. Isolation (security) › Container A & B can’t harm (or even see) each other › Uses Linux kernel’s “namespaces” for this 4. Isolation (resource usage) › Soft & hard quotas for CPU, RAM and IO › Uses Linux kernel’s “cgroups” for this Wait, this looks like a virtual machine! So, what’s the difference? Userspace Linux Kernel Cgroups Namespaces Management Interface LXC App A App B
  • 12. WHY CONTAINERS? › OS-Based Lightweight Virtualization Technology › Content & Resource Isolation › Better Performance › Better Efficiency & Smaller footprint › Build, ship, deploy anywhere › Separation of Duties Source: IBM Research http://domino.research.ibm.com/library/cyberdig.nsf/papers/0929052195DD819C85257D2300681 E7B/$File/rc25482.pdf
  • 13. TYPES OF CONTAINERS • The Ngnix • Node.js • Postgres • Redis • MariaDB • Node.js • ElasticSearch • Wordpress • Node.js SYSTEM CONTAINERS • Each container runs an entire service stack (multiple applications per container) • Meant to be used as lightweight VM. Examples – LXC, OpenVZ, Solaris Zones • No need to repackage applications in any special way • Supports in-place patch/upgrade & SSH access Great for Traditional Applications Ngnix Node.js Postgres Redis MariaDB Node.js ElasticSearch Wordpress Ngnix APPLICATION CONTAINERS • Each container runs a single application (single concern per container philosophy) • Most popular container format. Example – Docker • Requires applications to be repackaged and reconfigured to work with Docker image format • Patch/Upgrade entails replacing container image Great for Modern Applications Blog on LXC vs Docker: https://robinsystems.com/blog/containers-deep-dive-lxc-vs-docker-comparison/
  • 14. WHY DOCKER? A value of 100 is the peak popularity for the term. ~450K images on DockerHub ~8 Billion pulls from DockerHub
  • 15. ORACLE SUPPORTS BOTH DOCKER AND LXC LXC Support: http://www.oracle.com/technetwork/database/virtualizationmatrix-172995.html › General › OracleJava › OpenJDK › Database › RDBMS › MySQL › NoSQL › Middleware › Glassfish › WebLogic › Coherence › Tuxedo › HTTP Server Official Oracle on Docker repository: https://github.com/oracle/docker-images Oracle Database Oracle RAC (CRS + ASM) LXC (Test & Production) ✓ ✓ Docker (Dev Only) ✓ ✘
  • 18. DOCKER ARCHITECTURE Key Components Docker Engine / Daemon Docker Containers Docker Images Docker Registry Docker Client Client can be on the same or different host as the daemon. They communicate over sockets or REST APIs.
  • 19. DOCKER ENGINE Docker Engine: Responsible for managing networking, images, containers, volumes, plugins, orchestration, etc Install Docker Engine on your laptops and servers
  • 20. IMAGES › Images are made up of multiple r/o layers › Containers are a thin r/w layer on top › Layers are shared by multiple images › Storage drivers › AUFS (Ubuntu, OSX) › Device mapper (RHEL, CentOS) › BTRFS (Oracle Linux) › Overlay, Overlay2 › ZFS › Layer default location: /var/lib/docker Additional Reading: https://adeeshfulay.wordpress.com/2017/09/08/understanding-docker-images-and-layers/
  • 21. DOCKERFILES Base Docker Image New Docker Image Instructions • Run commands • Add file or folder • Define ENV variables • Define processes to run • Set entrypoint Dockerfile $ Docker build –t <tag> <dir with dockerfile>
  • 22. CONTAINER MANAGEMENT Container is like a directory. It is created from an image, and contains everything required to run an app. Containers like VMs have state and are portable. Containerd: Simple daemon that uses runtimes to manage containers runC: Docker’s default container runtime. Can be replaced with other OCI compliant runtimes. Docker Engine
  • 23. IMAGE REGISTRY Registry is a distribution component of Docker. It can be private or public (Docker Hub: https://hub.docker.com)
  • 24. NAS / SAN / CLOUD / SDS DOCKER VOLUMES Container Volume Host 1 Container Volume Host 1 Container Volume Host 1 Local Storage Distributed / Shared Storage Choose between mobility & performance [Host]/opt/data-dir:[Container]/etc/config Local Storage
  • 25. DOCKER NETWORKING Bridge Network Overlay Network Reference: https://blog.docker.com/2016/12/understanding-docker- networking-drivers-use-cases/ Network types Details None No external n/w Host Share host n/w stack Bridge NATing, expose ports, poor performance macvlan Uses host subnet, VLAN, swarm mode Overlay Multi-host, VXLAN, swarm mode 3rd Party Plugins OpenvSwitch, Weave, …..
  • 26. CONTAINER ORCHESTRATION › Multi-container, Multi-Host scheduling › Supports multiple container formats- Docker & LXC › Placement, Affinity and Anti-affinity rules › Multi-Tenancy, RBAC, AuthN, & AuthZ › Scaling Options – Up/Down, Out/Back › Management of Storage & Networking › Data Management - Snapshot, restore, time travel, clone › High Availability & Auto Failover › Service discovery and load balancing › Extensible – Onboard custom apps
  • 27. ORACLE, DOCKER, & KUBERNETES Oracle is late to the party, but making big investments now to catch up!!
  • 28. GETTING HANDS DIRTY!!! › DEMO Mike Rowe of Dirty Jobs
  • 29. DEMO: DOCKER EXAMPLES › Docker info › Dockerhub & Oracle container registry › Docker images & Docker pull › Dockerfile › Docker run –d <oradb> -v … › Docker ps -a › Docker exec –ti <cname> bash › Docker logs … › Docker inspect <oradb> › Docker network ls › Docker volume ls
  • 30. Containerized Databases › Good Idea or Disaster?
  • 31. How do I get the absolute best performance? How can I rapidly clone my production for test/dev runs? How do I apply patches and upgrades without bringing down the application? How do I avoid overprovisioning from the start? How do I quickly deploy my applications? Can I run multiple applications on the same setup without worrying about noisy neighbors? OPERATIONAL CHALLENGES How do I handle spikes and growth?
  • 32. Robin AVP: Virtualize And Manage BigData & Database Apps with Bare Metal Performance Guaranteed Min and Max IOPS Consolidate without losing predictability Push-button Application Provisioning, Elastic Scaling 10x time saving by managing application not infrastructure Space-efficient snapshots and clones in minutes Application time travel (storage, app, network and config) No Virtualization Overhead 40% - 60% performance advantage VM INTEGRATED SCALE-OUT BLOCK STORAGE VIRTUAL NETWORKING CONTAINER-BASED VIRTUALIZATION APPLICATION LIFECYCLE MANAGEMENT CONVERGED PLATFORM Application-aware Infrastructure plumbing Deploy applications guaranteeing compute+storage anti/affinity rules Custom Apps
  • 33. CONSOLIDATION OPTIONS FOR ORACLE DATABASES Options à Virtual Machine Oracle 12c Multitenant Containers on Robin Criteria ⬇ Performance overhead Significant Hypervisor layer, Guest OS Significant Shared Redo logs, Noisy neighbors problem Negligible Completely independent, no hypervisor Availability High One VM doesn’t impact another one Medium CDB shutdown takes down all PDBs with it High Just like VMs Isolation Excellent Good Shared buffer cache Excellent Performance predictability Poor Cannot cap IOPS at the hypervisor layer Good IOPS control only available on Exadata Excellent. Built into the platform Agility Good Excellent Excellent Manageability High OS sprawl High Challenges in getting patching window Low No OS sprawl, no additional licenses 33 https://robinsystems.com/solutions/relational-databases/