Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Tecnologias Oracle em Docker
Containers: On-premise...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
•Bruno Borges
–Product Manager / Developer Advocate...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Safe Harbor Statement
The following is intended to ...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Program Agenda
Docker Overview
Strategy and Positio...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Program Agenda
Docker Overview
Strategy and Positio...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
What is Docker?
And why should we care?
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
• Developers care because:
– Quickly create ready-t...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
What are the Benefits and Use Cases with Docker?
• ...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
How does Docker works?
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Docker
Comparing Docker against LXC and Hypervisors...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Docker Architecture 101
• Docker Client talks to
Do...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Declaratively Build Containers Using Dockerfiles
# ...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Building a container image
[bruno@orcl:~/gf-docker]...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Creating and running a container
[bruno@orcl:~]$ su...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Accessing a service/application running within a co...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
One Application Instance Per Container
• Running mu...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Docker Ecosystem
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Docker Hub
Docker Swarm
Docker Compose
Docker Machi...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Program Agenda
Docker Overview
Strategy and Positio...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Oracle Docker Support Enables Customers to
Keep Inv...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Oracle joined OCI – Open Container Initiative
• Gov...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Containers Are The New Virtualization Trend
Four ma...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Stop Manually Fixing Problems
In no case should an ...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Economical Incentives
• Containers let customers is...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Program Agenda
Docker Overview
Strategy and Positio...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
How Do You Deploy Containers?
The emerging space of...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
DIY
Docker on Oracle Cloud – The Big Picture
Contai...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Oracle Container Cloud Service
Provides Out of the ...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Oracle Application Container Cloud Service
• Deploy...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Docker and Oracle Cloud
• Oracle Cloud provides a l...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Program Agenda
Docker Overview
Strategy and Positio...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
• Oracle Linux
– 5.11, 6.6+, 7.0+
• MySQL Server
– ...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Oracle Solaris
Not ready, but actively working on s...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Docker on Oracle Solaris
• A native Docker on Oracl...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Oracle Linux
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Oracle Linux and Docker
• Docker engine binary for ...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Docker Binary by Oracle Linux
• Binary available on...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Benefits of Docker on btrfs
• Btrfs (B-Tree File Sy...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Advantages of Docker on Oracle Linux
• Runs on Orac...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
WebLogic on Docker
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Certification of WebLogic Running on Docker
WLS Ver...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Support and Licensing
• Support details on Support ...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Deploying WebLogic on Docker
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Building WebLogic Docker Images
• Download JDK 8 bi...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Runtime Topologies for WebLogic on Docker
Supported...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
WebLogic Domain
Cluster
50
MS Container 1
NM
MS
App...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Linux Host
server 0
Domain
Cluster 1
51
WLS Contain...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Artifacts Are Now Immutable Containers – Not EARs, ...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Linux Host 0 Linux Host 3Linux Host 1 Linux Host 2
...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Program Agenda
Docker Overview
Strategy and Positio...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Recipes and Samples for Docker Images
• GitHub proj...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Other Docker Recipes Published on Oracle GitHub
• O...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Links and External Resources
• Oracle WebLogic Dock...
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Tecnologias Oracle em Docker Containers On-premise e na Nuvem
Nächste SlideShare
Wird geladen in …5
×

Tecnologias Oracle em Docker Containers On-premise e na Nuvem

887 Aufrufe

Veröffentlicht am

OpenWorld LAD 2016

Veröffentlicht in: Technologie
  • Als Erste(r) kommentieren

Tecnologias Oracle em Docker Containers On-premise e na Nuvem

  1. 1. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Tecnologias Oracle em Docker Containers: On-premise e Cloud SES12234 Bruno Borges Principal Product Manager Oracle Cloud
  2. 2. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | •Bruno Borges –Product Manager / Developer Advocate –Oracle Cloud –Twitter: @brunoborges Speaker @brunoborges
  3. 3. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Safe Harbor Statement The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.
  4. 4. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Program Agenda Docker Overview Strategy and Positioning Docker on Oracle Cloud Oracle Technology on Docker Extras 1 2 3 4 5
  5. 5. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Program Agenda Docker Overview Strategy and Positioning Docker on Oracle Cloud Oracle Technology on Docker Extras 1 2 3 4 5
  6. 6. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | What is Docker? And why should we care?
  7. 7. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
  8. 8. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
  9. 9. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
  10. 10. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | • Developers care because: – Quickly create ready-to-run packaged applications – A clean, safe, hygienic, portable runtime environment – No missing/conflicting dependencies or packages – Each app runs in an isolated container – Automate testing, integration, packaging – Reduce/eliminate platform compatibility issues – Cheap/zero cost deployment, with instant replay and reset • Administrators care because: – Configure once, run many times – Makes app lifecycle efficient, consistent and repeatable – Eliminate environment inconsistencies between development, test, production – Supports segregation of duties – Improve speed and reliability of continuous integration and deployment – Lightweight containers address performance, costs, deployment and portability issues So Why IT Cares About Docker? Why Adopt It?
  11. 11. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | What are the Benefits and Use Cases with Docker? • Benefits – Using containers allows developers and sysadmins to isolate each application, providing specific dependencies for each application – Docker containers are tiny; they are designed to run a single application – Docker combines filesystem layers to improve re-use between containers – Cost savings on conventional virtualization due to greater density using containers • Spin off isolated infrastructures/processes within same VM. Better consumption of resources. • Use Cases – Application Deployment without “dependency hell” of multiple applications – Continuous Integration – Platform-as-a-Service (PaaS) – Development and Test Environment
  12. 12. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | How does Docker works?
  13. 13. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Docker Comparing Docker against LXC and Hypervisors Hardware Hardware Hardware Hardware Hypervisor Operating System Operating System Operating System HypervisorVM 0 OS bins/libs apps VM 1 OS bins/libs apps VM 0 OS bins/libs apps VM 1 OS bins/libs apps bins/libsContainer0 bins/libs apps Container1 apps bins/libs Container0 bins/libs apps Container1 apps Hypervisor Type1 Hypervisor Type2 LXC Docker CLI REST Dockerfile volumes
  14. 14. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Docker Architecture 101 • Docker Client talks to Docker Daemon • Client can run on a same machine or connect remotely • Docker Registries or Hubs hold images
  15. 15. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Declaratively Build Containers Using Dockerfiles # Pull from base image of Oracle Linux and install pkgs FROM oraclelinux:7 RUN yum install -y unzip java-1.7.0-openjdk-headless RUN yum clean all # Download and extract GlassFish RUN curl -O -L http://bit.ly/glassfish-4_1_zip RUN unzip glassfish-4_1_zip # Default CMD upon container execution CMD /glassfish4/bin/asadmin
  16. 16. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Building a container image [bruno@orcl:~/gf-docker]$ sudo docker build -t glassfish:4.1 –f Dockerfile . Sending build context to Docker daemon Step 0 : FROM oraclelinux:7.0 ---> 5f1be1559ccf Step 1 : RUN yum install -y unzip java-1.7.0-openjdk-headles ---> Running in 7b1583feb2bc Step 2 : RUN curl –O –L http://bit.ly/glassfish-4_1_zip ---> 4abe64ef7934 Step 3 : RUN unzip glassfish-4_1_zip ---> 1ac729d9809a Step 4 : CMD /glassfish4/bin/asadmin ---> Running in 6aab421a83ff Successfully built 8f1106a1d7d0
  17. 17. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Creating and running a container [bruno@orcl:~]$ sudo docker images REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE glassfish 4.1 8f1106a1d7d0 3 minutes ago 1.081 GB [bruno@orcl:~]$ sudo docker run -ti glassfish:4.1 Use "exit" to exit and "help" for online help. asadmin> start-domain Waiting for domain1 to start ..... Successfully started the domain : domain1 domain Location: /root/glassfish4/glassfish/domains/domain1 Admin Port: 4848 Command start-domain executed successfully. asadmin>
  18. 18. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Accessing a service/application running within a container [bruno@orcl:~]$ sudo docker ps CONTAINER ID IMAGE CREATED STATUS 9ebf7544f8e9 glassfish:4.1 3 minutes ago Up 3 minutes [bruno@orcl:~]$ sudo docker inspect 9ebf7544f8e9 | grep IPAddress "IPAddress": "172.17.0.8", [bruno@orcl:~]$ firefox http://172.17.0.8:4848 [bruno@orcl:~]$ ifconfig docker0 docker0 Link encap:Ethernet HWaddr 56:84:7a:fe:97:99 inet addr:172.17.42.1 Bcast:0.0.0.0 Mask:255.255.0.0
  19. 19. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | One Application Instance Per Container • Running multiple instances of the same application or different applications will make scheduling very difficult • Expose very few ports per container (preferably one) Physical Host Operating System Container App Container App Just One Per Container
  20. 20. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Docker Ecosystem
  21. 21. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Docker Hub Docker Swarm Docker Compose Docker Machine Docker Cloud Docker Registry Docker Datacenter
  22. 22. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
  23. 23. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Program Agenda Docker Overview Strategy and Positioning Docker on Oracle Cloud Oracle Technology on Docker Extras 1 2 3 4 5
  24. 24. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Oracle Docker Support Enables Customers to Keep Investments on Our Products While Moving Forward with a New Trend
  25. 25. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Oracle joined OCI – Open Container Initiative • Governance structure for the express purpose of creating industry standards around container formats and runtime. • Customers can commit to container technologies w/o worrying on being locked up. • Oracle joined in 2015. – blogs.oracle.com/solaris/entry/oracl e_joins_the_open_container
  26. 26. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Containers Are The New Virtualization Trend Four main use cases Hardware Operating System Container App Container App Container App Container App Container App Container App Container App Container App Container App Hardware Operating System Container App Container App Container App Container App Container App Container App Container App Container App Container App Hardware Operating System Container App Container App Container App Container App Container App Container App Container App Container App Container App Hardware Operating System Container App Container App Container App Container App Container App Container App Container App Container App Container App Hardware Operating System Container App Container App Container App Container App Container App Container App Container App Container App Container App Hardware Operating System Container App Container App Container App Container App Container App Container App Container App Container App Container App Hardware Operating System Container App Container App Container App Container App Container App Container App Container App Container App Container App Hardware Operating System Container App Container App Container App Container App Container App Container App Container App Container App Container App Application Packaging Continuous Integration DIY PaaS Infrastructure Consolidation Neatly package applications and supporting environment in immutable, portable containers All changes to an app are contained in one immutable container image. Container is tested and deployed as one atomic unit Get infrastructure utilization up to 100% (vs 5-10% with VMs) due to over-subscription of resources and near bare metal performance. Build a simple PaaS by wiring up containers to a load balancer. New code, patches, etc pushed as new immutable containers.
  27. 27. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Stop Manually Fixing Problems In no case should an administrator fix issues by hand. Should be 100% automated Auto-scaling will automatically launch a new container on new hardware as load dictates Hardware Failure Example: motherboard failed Auto-scaling will automatically launch new containers as load dictates Network Failure Example: switch failed Health checking should fail and the container will be culled. Auto-scaling will automatically launch a new container as load dictates System Software Failure Example: kernel panic Application Software Failure Example: bad file permissions Fix the source (your application, your container, your Dockerfile, etc) and re-deploy your entire application
  28. 28. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Economical Incentives • Containers let customers isolate environments, processes, applications, within the same hardware or VM without having to create another VM. • It helps reduce virtualization costs • Increased density • Speeds delivery of packaged solutions – Container images are much smaller than traditional VMs images. – Full Guest OS is not needed. • Speeds development cycle – Onboarding new developers is much faster with predefined development environments
  29. 29. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Program Agenda Docker Overview Strategy and Positioning Docker and Oracle Cloud Oracle Technology on Docker Extras 1 2 3 4 5
  30. 30. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | How Do You Deploy Containers? The emerging space of container orchestration What Do Container Orchestration Solutions Do? • Map containers back to physical hosts, taking into account user- defined placement rules, the utilization of each host, and the needs of each container. Can be very complex • Set up overlay networking, firewalls, ensure network QoS, etc • Auto-scaling • Local and external load balancers • Service registry / discovery Host Host Host Host Host Host Host Host Host Host Container • Inventory Microserv ice • AcmeCo • v1.2 Container • Inventory Microserv ice • AcmeCo • v1.2 Container • Inventory Microserv ice • AcmeCo • v1.2 Container • Inventory Microserv ice • AcmeCo • v1.2 Container • Inventory Microserv ice • AcmeCo • v1.2 Container • Inventory Microserv ice • AcmeCo • v1.2 Container • Inventory Microserv ice • AcmeCo • v1.2 Container • Inventory Microserv ice • AcmeCo • v1.2 Container • Inventory Microserv ice • AcmeCo • v1.2 Container App Container • Inventory Microserv ice • AcmeCo • v1.2 Container • Inventory Microserv ice • AcmeCo • v1.2 Container • Inventory Microserv ice • AcmeCo • v1.2 Container • Inventory Microserv ice • AcmeCo • v1.2 Container • Inventory Microserv ice • AcmeCo • v1.2 Container • Inventory Microserv ice • AcmeCo • v1.2 Container • Inventory Microserv ice • AcmeCo • v1.2 Container • Inventory Microserv ice • AcmeCo • v1.2 Container • Inventory Microserv ice • AcmeCo • v1.2 Container App Many Containers Host Host Host Host Host Host Host Host Host Host Many Hosts Docker Swarm Emerging space. Solutions are very early and lack any real notion of an application. Still very much infrastructure-focused
  31. 31. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | DIY Docker on Oracle Cloud – The Big Picture Container CS App. Container CS JavaNode.js Any container workload PHP Python Ruby C++ Go Compute Cloud Service • Application Container Cloud Service • Run Cloud Native applications with ease • Container Cloud Service • Oracle-provided container orchestration tooling • Compute Cloud Service • DIY Docker orchestration
  32. 32. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Oracle Container Cloud Service Provides Out of the Box Functionality ● Define Resource Pools ● Add Private Registries ● Administer Users / Groups ● Edit Create New Services ● Compose Application Stacks ● Deploy Stacks with 1 Click ● Automated Deployment ● Multi-Host, Easy Scale Out ● Built in Service Discovery ● Integrated Health Checks ● Unified Dashboard ● Monitoring and Auditing Configuration Management Application Deployment Container Orchestration Operations Management
  33. 33. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Oracle Application Container Cloud Service • Deploy Cloud Native applications with ease • Applications run on Oracle Linux inside Docker containers – Docker image definition and container creation is abstracted from developers • Stateless Applications – Ephemeral disk – Permanent storage through database or storage service • Support for patching language runtimes An open and highly available Docker container-based elastic polyglot Cloud platform
  34. 34. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Docker and Oracle Cloud • Oracle Cloud provides a large spectrum of solutions for Docker based Microservices architectures • Three Public Cloud offerings for Docker container based deployments – On Compute CS, with a DIY approach – On Container CS, with an Oracle managed and supported, Cloud Native approach – On Application Container CS, with a seamless Cloud Native application runtime approach • Oracle Public Cloud Machine is capable of hosting container based workloads Summary
  35. 35. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Program Agenda Docker Overview Strategy and Positioning Docker on Oracle Cloud Oracle Technology on Docker Extras 1 2 3 4 5
  36. 36. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | • Oracle Linux – 5.11, 6.6+, 7.0+ • MySQL Server – 5.5+ • WebLogic Server – 12.1.3, 12.2.1 • Coherence – 12.2.1 • Tuxedo – 12.1.3, 12.2.2 • HTTP Server – 12.2.1 Products Currently Supported inside Docker Containers
  37. 37. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Oracle Solaris Not ready, but actively working on supporting Docker
  38. 38. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Docker on Oracle Solaris • A native Docker on Oracle Solaris, with similar runtime characteristics as experienced on Linux, would check all of the boxes • Planning for work to improve in these areas coincided with our noticing a considerable uptick in Docker adoption • As with OpenStack, participate rather than reinvent • Integration with other container technologies already a goal for the Docker project Good timing and well-aligned
  39. 39. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Oracle Linux
  40. 40. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Oracle Linux and Docker • Docker engine binary for OL is built and maintained by OL team • Supports full container lifecycle: build, ship, distribute, and deployment of applications • Oracle Linux Base images available – OL 5 – 5.11 – OL 6 – 6.6, 6.7 – OL 7 – 7.0, 7.1, 7.2 • Support for common OL usage (i.e.: yum package manager) • Support for btrfs for Docker containers filesystems • Small image size – ~ 70 MB download size – ~ 200MB when extracted
  41. 41. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Docker Binary by Oracle Linux • Binary available on YUM addons repository as docker- engine – Built from upstream sources; Internal builds available for each upstream RC – Specific PRs from upstream are built and tested – Automated QA is run as follows • Build validation and upstream test suite • Internal validation and product test suites (e.g. MySQL) • OpenStack for Oracle Linux R2 specific test suites • Runs on OL 6 and OL 7 • Docker 1.10+ requires Unbreakable Enterprise Kernel Release 4
  42. 42. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Benefits of Docker on btrfs • Btrfs (B-Tree File System) originally developed at Oracle; now mainline • Copy-on-write filesystem with built-in disk and RAID management • Self-healing built-in though checksums and scrubbing • Most mature filesystem that supports Docker features/performance – device-mapper is very, very slow – aufs is only supported on Debian/Ubuntu – overlayfs is very new/unstable • Oracle employs primary btrfs developers
  43. 43. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Advantages of Docker on Oracle Linux • Runs on Oracle Linux 6 – No other EL6-derived distro can run Docker 1.9 or higher – Requires UEK4 which is provided for both OL6 and OL7 • Upstream builds on Oracle Linux 6 and 7 – Upstream continuous integration includes Oracle Linux builds • Supports btrfs in production on both OL6 and OL7 – No other EL6-derived distro supports btrfs in production
  44. 44. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | WebLogic on Docker
  45. 45. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Certification of WebLogic Running on Docker WLS Version JDK Version Host OS Kernel Docker Version 12.2.1 8 Oracle Linux 6 UEK 3 (3.8.13) * 1.7+ Oracle Linux 7 UEK 3 (3.8.13) Red Hat Enterprise Linux 7 Red Hat Kernel (3.10) 12.1.3 7 / 8 Oracle Linux 6 UL 5 UEK 3 (3.8.13) * 1.3.3+ Oracle Linux 7 UEK (3.8.13) Red Hat Enterprise Linux 7 Red Hat Kernel (3.10) * Docker 1.10+ requires UEK4
  46. 46. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Support and Licensing • Support details on Support Doc ID 2017945.1 • Set of Dockerfiles recipes and samples are published on GitHub – http://github.com/oracle/docker-images/tree/master/OracleWebLogic – No binary images are provided. Customers must build their owns. – No requirement to use samples recipes and scripts from GitHub. • No licensing change. No CPU partition. – Containers processes run on the host kernel. – Regardless of CPU constraints on containers, products must be licensed the same way as if customer wasn't using containers at all.
  47. 47. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Deploying WebLogic on Docker
  48. 48. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Building WebLogic Docker Images • Download JDK 8 binary for Linux x64 • Download WebLogic 12.2.1 Generic Installer • Write a Dockerfile extending the oraclelinux:7 Docker image. – Or use samples from GitHub • Write a set of WLST files to create a WebLogic Domain. Tie that into a second Dockerfile to build a domain Docker image. – Or extend samples from GitHub • Automate everything! Oracle Linux JDK + WebLogic WebLogic Domain Base Image WLS Install Image WLS Domain Image EAR/WAR App Image
  49. 49. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Runtime Topologies for WebLogic on Docker Supported topologies for customers with different needs, operations models.
  50. 50. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | WebLogic Domain Cluster 50 MS Container 1 NM MS App JMS (A) Topology - Lightweight VM – Example Expand a Cluster: Add Managed Servers Into Domain MS Container 2 NM MS App JMS MS Container 3 NM MS App JMS Admin Container WLS Admin Server MS Container 4 NM MS App JMS MS Container 5 NM MS App JMS MS Container 6 NM MS App JMS # docker run –-name wlsadmin –d mywlsimage startWebLogic.sh LBR WebTier OHS # docker run –-link wlsadmin:wlsadmin –d mywlsimage createServer.sh # docker run –-link wlsadmin:wlsadmin –d mywlsimage createServer.sh Linux Host (physical/virtual server 1)
  51. 51. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Linux Host server 0 Domain Cluster 1 51 WLS Container 1 NM MS App JMS (A) Topology - Lightweight VM – Multiple Host Starting with Docker 1.9+, containers can communicate across hosts using Overlay Network WLS Container 2 NM MS App JMS WLS Container 3 NM MS App JMS Admin Container WLS Admin Server WLS Container 4 NM MS App JMS WLS Container 5 NM MS App JMS WLS Container 6 NM MS App JMS Linux Host (physical/virtual server 2)Linux Host (physical/virtual server 1) LBR Container OHS OTD
  52. 52. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Artifacts Are Now Immutable Containers – Not EARs, WARs Containers can have anything in them and are highly portable • No more installing a JVM, app server, and then deploying the artifacts to them • Build the container once, deploy it anywhere. Can include complex environment variables, scripts, etc • Containers should be free of state and configuration • Containers should not assume they are able to write to a persistent local file system Hardware Operating System Hypervisor VM 1 VM 2 Legacy Hardware Operating System Container 1 Container 2 Container Approach OS App Server EAR/WAR OS App Server EAR/WAR The Artifact You Deploy
  53. 53. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Linux Host 0 Linux Host 3Linux Host 1 Linux Host 2 53 (B) Topology - Containerized Apps – Single/Multi Host Load Balancing only. There is no real clustering replication. No failover. LBR WebTier OHS WLSContainerized AS App JMS Domain App 0 WLSContainerized AS App JMS Domain App 0 WLSContainerized AS App JMS Domain App 0 WLSContainerized AS App JMS Domain App 1 WLSContainerized AS App JMS Domain App 1 WLSContainerized AS App JMS Domain App 1 root@host_1 # docker run –d mywlsapp0 startWebLogic.sh root@host_2 # docker run –d mywlsapp0 startWebLogic.sh root@host_3 # docker run –d mywlsapp0 startWebLogic.sh root@host_1 # docker run –d mywlsapp1 startWebLogic.sh root@host_2 # docker run –d mywlsapp1 startWebLogic.sh root@host_3 # docker run –d mywlsapp1 startWebLogic.sh
  54. 54. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Program Agenda Docker Overview Strategy and Positioning Docker on Oracle Cloud Oracle Technology on Docker Extras 1 2 3 4 5
  55. 55. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Recipes and Samples for Docker Images • GitHub project contains only samples and Dockerfiles (recipes) for building images – No binaries are published. – Customers must download binaries from Oracle as usual. • Oracle does not provide compiled Docker images for non-Open Source, commercial products on any public registry (i.e.: Docker Hub) • Recipes and samples for Docker images on GitHub are published under CDDL+GPL dual license
  56. 56. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Other Docker Recipes Published on Oracle GitHub • Open Source / Non-commercial / Not Supported – NoSQL Community Edition – GlassFish Application Server Open Source Edition – OpenJDK • Recipes/Samples for Other Products – Oracle JDK (standalone) • * not certified/supported yet
  57. 57. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | Links and External Resources • Oracle WebLogic Docker Announcement – https://blogs.oracle.com/WebLogicServer/entry/oracle_weblogic_server_12_21 • Oracle Linux Docker Announcement – https://blogs.oracle.com/linux/entry/oracle_linux_images_for_docker • Oracle on GitHub – http://www.github.com/oracle/docker-images • Oracle on Docker Hub – http://hub.docker.com/u/oracle • MOS Doc.ID link – https://support.oracle.com/epmos/faces/DocumentDisplay?id=2017945.1 • FMW Virtualization Support Page – http://www.oracle.com/technetwork/middleware/ias/oracleas-supported-virtualization-089265.html
  58. 58. Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |

×