munz & more
Docker Live Hacking: From Raspberry Pi to Kubernetes
Hong Kong Meetup + Oracle CODE 2018 Shenzhen
Dr. Frank Munz
2
Dr. Frank Munz
• Founded munz & more in 2007• 17 years Oracle Middleware,Cloud, and Distributed Computing•Consulting and High-End Training•Wrote two Oracle WLS andone Cloud book• Twitter: @frankmunz
3 things aboutDocker
Solves the “Worked For Me!” issue
munz & more #4
OS tools, JDK, patches, database
driver, libs, appserver, domain, deployment, tools,
scripts
Docker
OS utils, JDK, patches, database driver, libs, appserver, domain, deployment, tools, scripts
Integration,Performance,Acceptance
Testing
Production
dockerize it!
You can pass environment variables for specific settings e.g. in prod
Docker Registry
Docker in the Cloud?
Supported by every major cloud provider:
munz & more #5
On premise -> all clouds
DockerRegistry
Docker Container Service
EC2 Container Service
Google Container Engine
Azure Container Service
Bluemix Containers
Docker Registry
fancy a demo?
Security
docker run -d –P fmunz/micro
vs.
A stranger gives you a box at night and asks you to connect it to your company network:
Would you do it?
what should be your biggest nightmare:
unknown and unofficial images10s of thousands
DB or WebLogicin a Docker Container!
Oracle Docker Images
You have three main options
1.DIY: Dockerfile from Oracle github
2.Oracle Container Registry
3.Docker Hubmunz & more #13
https://github.com/oracle/docker-images
https://container-registry.oracle.com
http://www.oracle.com/us/products/middleware/cloud-app-foundation/weblogic/weblogic-server-on-docker-wp-2742665.pdf
Oracle Whitepaper WebLogic on Docker
Orchestration /Cluster Manager
Orchestration Options
• On premises: – Docker Swarm, Kubernetes
• Oracle Cloud, easy: – Container Cloud Service (OCCS)
• Oracle Cloud Enterprise: Kubernetes– Container Engine (OCE)– Free CI/CD Wercker included
munz & more #16
Welcome Mini J
Design Goals for Mini
• Hands-on Raspi experience• Distributed Kubernetes setup
& Docker Swarm setup • HA / failover / rolling updates• Have a fun project
munz & more #18
Others have build Raspi clusters as well. A lot of credit goes to Roland Huss, Alex
Ellis etc
DIY Raspi Docker Cluster
munz & more #20
Component Price
Raspi 4x 38€
Micro SD 4x 11€
Power 28€
Wifi 22€
Case 30€
Wires 10€
K8s
• YAML configuration, declarative, uses labels• Pod: Containers sharing IP, network, filesystem
– IP is ephemeral• Replica Set (was Replication Controller)
– Manages PODs: restarts replicas• Services
– Like a proxy, exposes pod– Permanent IP
munz & more #22
Docker Swarm
• Native Docker cluster with same API asa single engine -> part of Docker
• Fast provisioning, about 500 msec• Various scheduling algorithms:
spread, binpack, rand• No insecure mode J
munz & more #23
Kubernetes or Swarm?
• Swarm wasn’t impressive when released,but this has changed
• Swarm is much easier to understand and to operate
• Swarm covers a lot of what K8s does• Industry standard: Kubernetes– See Oracle, AWS, Azure, Google cloud– Kubernetes supported by Docker
munz & more #24
Kubernetes
munz & more #25https://blog.docker.com/2016/03/swarmweek-docker-swarm-exceeds-kubernetes-scale/
K8s components run as
Docker containers
Could you debug it?
munz & more #26
Docker Swarm
munz & more #27
https://blog.docker.com/2016/03/swarmweek-docker-swarm-exceeds-kubernetes-scale/
Managed Enterprise Solution for running
Docker?
OCCS
OCCS Walkthrough
OCCS
• Easy way to run Docker container in Oracle cloud
• No need to install Docker, Kubernetes, buy machines etc.
• Integrates with Docker hub and Oracle Container registry
• Does neither use Kubernetes nor Docker Swarm
OCEManaged Kubernetes
Standard Kubernetes
munz & more #33
kubectl run microg--image=fmunz/microg--port 5555
kubectl CLI K8s admin
Cloud Native Compute Foundation
munz & more #34
https://app.wercker.com
munz & more #35
Wercker
Wercker
• Recently acquired by Oracle• Pipelines execute steps on code
– Pipelines == series of steps– Execute inside Docker container
• Workflows == chained and branched pipelines• Quickly provision ready to run infrastructure
– Push images to any registry– Restart OCCS via webhooks
munz & more #37
fancy a demo?
Predictions
• Kubernetes is now de-facto standard for enterprises.
• You will not dockerize 80% of your enterprise IT in the next 24 months.
• Docker is somehow like the new Linux:Be ready to experience that cutting edge feeling we had with Linux 12 years ago J
• Kubernetes is (sometimes) the new PaaS.munz & more #40
TL;DR @docker #cloudDocker is used in production / many products offered as Docker images / cross cloud /Docker orchestration is needed /#swarm is the easier #k8s / OCE or OCCS & Wercker removes heavy lifting / Oracle caught the trend! / if Kubernetes then cloud service? / emerging CNCF: Jaeger, Graphana, Prometheus + also: Fn Project
@frankmunz
munz & more #42
3 Membership Tiers• Oracle ACE Director• Oracle ACE• Oracle ACE Associate
bit.ly/OracleACEProgram
500+ Technical Experts Helping Peers Globally
Connect:
Nominate yourself or someone you know: acenomination.oracle.com
@oracleaceFacebook.com/oracleaces
www.munzandmore.com/blog
facebook.com/cloudcomputingbookfacebook.com/weblogicbook
@frankmunz
https://www.linkedin.com/in/frankmunz/
youtube.com/weblogicbook-> more than 50 web casts
Don’t be shy J