SlideShare a Scribd company logo
Networking & Storage Deep Dive
Ken Thompson
Senior Cloud Solution Architect
Melbourne Docker Meetup - October 2015
KUBERNETES: THE HELMSMEN
Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive2
Agenda
Kubernetes Deep Dive
● Kubernetes Networking
● Kubernetes Persistent Volumes
● Live Demos:
– Persistent Storage
– Something Fun!...
Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive3
Container orchestration at scale
KUBERNETES
● Scale workloads across a cluster of
container hosts
● Declarative state of environment
that gets managed
● Intelligent policy-based scheduling
● Multi-host networking support (with
OpenShift-SDN/OvSwitch etc.)
● Multi-host shared storage for
containers
● Image update mechanisms (with
OpenShift Deployment Configs -
rolling update, a-b, etc.)
Melbourne Docker Meetup Oct 2015 - K
ubernetes Networking & Storage Deep
Dive
4
KUBERNETES DEEP DIVE:
NETWORKING
Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive5
DOCKER IN-HOST NETWORKING
Suitable for single-host, not for multi-host
● Docker assigns an IP to each
container
● Its local and private only by default
● Complex for multi-host
● Plugins starting to become available
● Now we have a container..hold on!
– What happens If we want to
have containers sharing
filesystem
– Or IPC communications
– Or localhost communications
(mysql & phpmyadmin for eg.)
eth0
Linux bridge: docker0: 172.17.42.1/16
vethXXX
172.17.x.x/16
container
eth0
vethXXX
172.17.x.y/16
container
eth0
Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive6
KUBERNETES IN-HOST NETWORKING
Kubernetes Pods
● Pods (aka gears in OSE v2)
– Pod typically runs only one
container for independent scaling,
with exceptions such as “sidecars”.
Ie. MySQL & phpMyAdmin
– Same IP / network namespace
– Same IPC
– Ability to share disk
– Scheduled on same machine
– Atomic unit
– Can listen (to other containers)on
127.0.0.1 or 0.0.0.0
Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive7
INTER-HOST NETWORKING
Solutions Available
PROGRAMMABLE
INFRA
● GCE – each host gets a
subnet of 256 Ips
● AWS 40-100 Ips per
host
● Custom enterprise
networking
OVERLAY NETWORKS
● Flannel (ie. Atomic
Host) – subnet with
simple overlay.
● Others solutions
available like Weave,
etc.
Open vSwitch
● OpenStack
● Very large
deployments
● Programmable
● OpenShift-SDN uses
this
Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive8
● Kubernetes assigns 10.1.x.0/24 subnet to pods in each node
● Gateway IP 10.1.x.1 is assigned to lbr0
● Out of the box with OpenShift, Open vSwitch VXLAN overlay is used to connect nodes/pods
● Flat network, allow subdivision via flows
OPENSHIFT-SDN NETWORKING
OVS: br0
vxlan0
eth0
vovsbr
Linux bridge: lbr0: 10.1.0.1/24
vlinuxbr
veth pair
vethXXX
Pod
10.1.0.2
eth0
vethXXX
Pod
10.1.0.3
eth0VXLAN
VXLAN overlay
OVS: br0
vxlan0
eth0
vovsbr
Linux bridge: lbr0: 10.1.1.1/24
vlinuxbr
veth pair
vethXXX
Pod
10.1.1.2
eth0
vethXXX
Pod
10.1.1.3
eth0
10.1.1.0/24
VXLAN
Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive9
● OpenShift-SDN or similar overlays allow communications within a cluster, but how do
access from outside; ie. WWW?
● Router Pod – Runs HAproxy, proxies incoming traffic through SDN – HTTP/S Only
OPENSHIFT-SDN ROUTING
Melbourne Docker Meetup Oct 2015 - K
ubernetes Networking & Storage Deep
Dive
10
KUBERNETES DEEP DIVE:
STORAGE
Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive11
DOCKER STORAGE CONSTRAINTS KUBERNETES GOALS
CONTAINER STORAGE
1) Containers are ephemeral
(stateless), once they disappear, so
does the data
2) You can mount the host filesystem,
but
1) What about loss of host?
2) How do you scale across
1000s of hosts?
3) How is this data shared?
1) Allow administrators to describe
available storage
2) Allow application developers to
discover and request persistent
storage
3) Persistent storage should be
available without being closely
bound to a particular disk, server,
network or storage device
4) Support iSCSI, NFS, EBS, Gluster,
Ceph… and many more!
Problem Statement
Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive12
PERSISTENT VOLUME CLAIMS
● Admins add PVs to cluster [1]
● Like Pods, PVClaims live in a
namespace
● Pods [3] and Pvclaims [2] are
requests for resources by users
● Users request resources with
limits, like cpu usage by a
container or storage capacity of a
volume [2]
● OpenShift binds requests to
available resources
● Multiple access modes
(RWO,ROM,RWM)
Requests for storage
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: myclaim
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 8Gi
kind: Pod
apiVersion: v1
metadata:
name: mypod
spec:
containers:
- name: myfrontend
image: dockerfile/nginx
volumeMounts:
- mountPath: "/var/www/html"
name: mypd
volumes:
- name: mypd
persistentVolumeClaim:
claimName: myclaim
POST:
kind: PersistentVolume
apiVersion: v1
metadata:
name: pv0001
spec:
capacity:
storage: 10
nfs:
Server: srv.com
path: /data/path
1 2
3
Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive13
DB
Host 1 Host 2
Storage Pool
Kubernetes Persistent Volumes
CONTAINER STORAGE
mysql-claim
pv0001
Network Storage NFSiSCSI EBS RBD
2. Dev “Claims” PV
1. Admin creates PV
Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive14
DB
Host 1 Host 2
DB
What happens to a container & its storage when a node is lost?
CONTAINER STORAGE
Storage Pool
mysql-claim
pv0001
Network Storage NFSiSCSI EBS RBD
Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive15
What happens to a container & its storage when a node is lost?
CONTAINER STORAGE
DB
Host 1 Host 2
DB
Storage Pool
mysql-claim
pv0001
Network Storage NFSiSCSI EBS RBD
Melbourne Docker Meetup Oct 2015 - K
ubernetes Networking & Storage Deep
Dive
16
Storage Demo
(https://github.com/openshift/origin/tree/master/examples/wordpress)
&
HexBoard Demo
(https://www.youtube.com/watch?v=wWNVpFibayA&feature=youtu.be&t=24m25s)
Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive17
Free Kubernetes eBook
OpenShift Enterprise Test-Drive
(Free 8 hour Environment on AWS)
Questions?
http://red.ht/1NbW2wi http://red.ht/1MQVgqb
Plus some great ways to get started with Kubernetes...
Melbourne Docker Meetup Oct 2015 - K
ubernetes Networking & Storage Deep
Dive
18
APPENDIX
Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive19
WHAT ARE LINUX CONTAINERS?
Software packaging concept that typically includes an application and all of
its runtime dependencies
● Easy to deploy and portable
across host systems
● Isolates applications on a
host operating system
● In RHEL, this is done through:
● Control Groups (cgroups)
● Kernel namespaces
● SELinux, sVirt, iptables
● Docker
HOST OS
SERVER
CONTAINER
LIBS
APP
Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive20
TRADITIONAL OS VS. CONTAINERS
Traditional OS Containers
HARDWARE
HOST OS
HARDWARE
HOST OS
CONTAINER
LIBS
APP A
LIBS A LIBS B LIBS LIBS
APP A APP B
CONTAINER
LIBS
APP B
Packaged dependencies = faster boot times + greater portability
Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive21
Developers can access OpenShift via Web, CLI or IDE
OPENSHIFT 3
Turn-key solution for Developer Productivity + Container Orchestration
Ad

More Related Content

What's hot (20)

Openshift: The power of kubernetes for engineers - Riga Dev Days 18
Openshift: The power of kubernetes for engineers - Riga Dev Days 18Openshift: The power of kubernetes for engineers - Riga Dev Days 18
Openshift: The power of kubernetes for engineers - Riga Dev Days 18
Jorge Morales
 
Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orl...
Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orl...Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orl...
Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orl...
OpenShift Origin
 
Build a PaaS with OpenShift Origin
Build a PaaS with OpenShift OriginBuild a PaaS with OpenShift Origin
Build a PaaS with OpenShift Origin
Steven Pousty
 
Open shift and docker - october,2014
Open shift and docker - october,2014Open shift and docker - october,2014
Open shift and docker - october,2014
Hojoong Kim
 
OpenShift Enterprise
OpenShift EnterpriseOpenShift Enterprise
OpenShift Enterprise
Ali Sadeghi Ardestani
 
Red Hat Forum Benelux 2015
Red Hat Forum Benelux 2015Red Hat Forum Benelux 2015
Red Hat Forum Benelux 2015
Microsoft
 
Cloud Native Applications on OpenShift
Cloud Native Applications on OpenShiftCloud Native Applications on OpenShift
Cloud Native Applications on OpenShift
Serhat Dirik
 
DEVNET-1183 OpenShift + Kubernetes + Docker
DEVNET-1183	OpenShift + Kubernetes + DockerDEVNET-1183	OpenShift + Kubernetes + Docker
DEVNET-1183 OpenShift + Kubernetes + Docker
Cisco DevNet
 
A Dive Into Containers and Docker
A Dive Into Containers and DockerA Dive Into Containers and Docker
A Dive Into Containers and Docker
Matthew Farina
 
DevOps @ OpenShift Online
DevOps @ OpenShift OnlineDevOps @ OpenShift Online
DevOps @ OpenShift Online
OpenShift Origin
 
Red Hat OpenShift Operators - Operators ABC
Red Hat OpenShift Operators - Operators ABCRed Hat OpenShift Operators - Operators ABC
Red Hat OpenShift Operators - Operators ABC
Robert Bohne
 
Openshift presentation
Openshift presentationOpenshift presentation
Openshift presentation
Armağan Ersöz
 
What's New in Docker - February 2017
What's New in Docker - February 2017What's New in Docker - February 2017
What's New in Docker - February 2017
Patrick Chanezon
 
An OpenShift Primer for Developers to get your Code into the Cloud (PTJUG)
An OpenShift Primer for Developers to get your Code into the Cloud (PTJUG)An OpenShift Primer for Developers to get your Code into the Cloud (PTJUG)
An OpenShift Primer for Developers to get your Code into the Cloud (PTJUG)
Eric D. Schabell
 
OpenShift Meetup 8th july 2019 at ConSol - OpenShift v4
OpenShift Meetup 8th july 2019 at ConSol - OpenShift v4OpenShift Meetup 8th july 2019 at ConSol - OpenShift v4
OpenShift Meetup 8th july 2019 at ConSol - OpenShift v4
Robert Bohne
 
Using Open Source and Open Standards in the Platform game
Using Open Source and Open Standards in the Platform gameUsing Open Source and Open Standards in the Platform game
Using Open Source and Open Standards in the Platform game
Patrick Chanezon
 
Kubernetes in Docker
Kubernetes in DockerKubernetes in Docker
Kubernetes in Docker
Docker, Inc.
 
From Code to Kubernetes
From Code to KubernetesFrom Code to Kubernetes
From Code to Kubernetes
Daniel Oliveira Filho
 
Kubernetes basics and hands on exercise
Kubernetes basics and hands on exerciseKubernetes basics and hands on exercise
Kubernetes basics and hands on exercise
Cloud Technology Experts
 
Automated Image Builds in OpenShift and Kubernetes
Automated Image Builds in OpenShift and KubernetesAutomated Image Builds in OpenShift and Kubernetes
Automated Image Builds in OpenShift and Kubernetes
Graham Dumpleton
 
Openshift: The power of kubernetes for engineers - Riga Dev Days 18
Openshift: The power of kubernetes for engineers - Riga Dev Days 18Openshift: The power of kubernetes for engineers - Riga Dev Days 18
Openshift: The power of kubernetes for engineers - Riga Dev Days 18
Jorge Morales
 
Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orl...
Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orl...Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orl...
Build Your Own PaaS, Just like Red Hat's OpenShift from LinuxCon 2013 New Orl...
OpenShift Origin
 
Build a PaaS with OpenShift Origin
Build a PaaS with OpenShift OriginBuild a PaaS with OpenShift Origin
Build a PaaS with OpenShift Origin
Steven Pousty
 
Open shift and docker - october,2014
Open shift and docker - october,2014Open shift and docker - october,2014
Open shift and docker - october,2014
Hojoong Kim
 
Red Hat Forum Benelux 2015
Red Hat Forum Benelux 2015Red Hat Forum Benelux 2015
Red Hat Forum Benelux 2015
Microsoft
 
Cloud Native Applications on OpenShift
Cloud Native Applications on OpenShiftCloud Native Applications on OpenShift
Cloud Native Applications on OpenShift
Serhat Dirik
 
DEVNET-1183 OpenShift + Kubernetes + Docker
DEVNET-1183	OpenShift + Kubernetes + DockerDEVNET-1183	OpenShift + Kubernetes + Docker
DEVNET-1183 OpenShift + Kubernetes + Docker
Cisco DevNet
 
A Dive Into Containers and Docker
A Dive Into Containers and DockerA Dive Into Containers and Docker
A Dive Into Containers and Docker
Matthew Farina
 
Red Hat OpenShift Operators - Operators ABC
Red Hat OpenShift Operators - Operators ABCRed Hat OpenShift Operators - Operators ABC
Red Hat OpenShift Operators - Operators ABC
Robert Bohne
 
What's New in Docker - February 2017
What's New in Docker - February 2017What's New in Docker - February 2017
What's New in Docker - February 2017
Patrick Chanezon
 
An OpenShift Primer for Developers to get your Code into the Cloud (PTJUG)
An OpenShift Primer for Developers to get your Code into the Cloud (PTJUG)An OpenShift Primer for Developers to get your Code into the Cloud (PTJUG)
An OpenShift Primer for Developers to get your Code into the Cloud (PTJUG)
Eric D. Schabell
 
OpenShift Meetup 8th july 2019 at ConSol - OpenShift v4
OpenShift Meetup 8th july 2019 at ConSol - OpenShift v4OpenShift Meetup 8th july 2019 at ConSol - OpenShift v4
OpenShift Meetup 8th july 2019 at ConSol - OpenShift v4
Robert Bohne
 
Using Open Source and Open Standards in the Platform game
Using Open Source and Open Standards in the Platform gameUsing Open Source and Open Standards in the Platform game
Using Open Source and Open Standards in the Platform game
Patrick Chanezon
 
Kubernetes in Docker
Kubernetes in DockerKubernetes in Docker
Kubernetes in Docker
Docker, Inc.
 
Automated Image Builds in OpenShift and Kubernetes
Automated Image Builds in OpenShift and KubernetesAutomated Image Builds in OpenShift and Kubernetes
Automated Image Builds in OpenShift and Kubernetes
Graham Dumpleton
 

Viewers also liked (8)

Scalable Python with Docker, Kubernetes, OpenShift
Scalable Python with Docker, Kubernetes, OpenShiftScalable Python with Docker, Kubernetes, OpenShift
Scalable Python with Docker, Kubernetes, OpenShift
Aarno Aukia
 
fabric8 ... and Docker, Kubernetes & OpenShift
fabric8 ... and Docker, Kubernetes & OpenShiftfabric8 ... and Docker, Kubernetes & OpenShift
fabric8 ... and Docker, Kubernetes & OpenShift
roland.huss
 
Cloud computing stack
Cloud computing stackCloud computing stack
Cloud computing stack
Pedro Alexander Romero Tortosa
 
Achieving Cost and Resource Efficiency through Docker, OpenShift and Kubernetes
Achieving Cost and Resource Efficiency through Docker, OpenShift and KubernetesAchieving Cost and Resource Efficiency through Docker, OpenShift and Kubernetes
Achieving Cost and Resource Efficiency through Docker, OpenShift and Kubernetes
Dean Delamont
 
Serverless on Kubernetes
Serverless on KubernetesServerless on Kubernetes
Serverless on Kubernetes
Sebastien Goasguen
 
OpenShift Enterprise 3.1 vs kubernetes
OpenShift Enterprise 3.1 vs kubernetesOpenShift Enterprise 3.1 vs kubernetes
OpenShift Enterprise 3.1 vs kubernetes
Samuel Terburg
 
Microservices, Containers, Docker and a Cloud-Native Architecture in the Midd...
Microservices, Containers, Docker and a Cloud-Native Architecture in the Midd...Microservices, Containers, Docker and a Cloud-Native Architecture in the Midd...
Microservices, Containers, Docker and a Cloud-Native Architecture in the Midd...
Kai Wähner
 
Feature Engineering
Feature EngineeringFeature Engineering
Feature Engineering
HJ van Veen
 
Scalable Python with Docker, Kubernetes, OpenShift
Scalable Python with Docker, Kubernetes, OpenShiftScalable Python with Docker, Kubernetes, OpenShift
Scalable Python with Docker, Kubernetes, OpenShift
Aarno Aukia
 
fabric8 ... and Docker, Kubernetes & OpenShift
fabric8 ... and Docker, Kubernetes & OpenShiftfabric8 ... and Docker, Kubernetes & OpenShift
fabric8 ... and Docker, Kubernetes & OpenShift
roland.huss
 
Achieving Cost and Resource Efficiency through Docker, OpenShift and Kubernetes
Achieving Cost and Resource Efficiency through Docker, OpenShift and KubernetesAchieving Cost and Resource Efficiency through Docker, OpenShift and Kubernetes
Achieving Cost and Resource Efficiency through Docker, OpenShift and Kubernetes
Dean Delamont
 
OpenShift Enterprise 3.1 vs kubernetes
OpenShift Enterprise 3.1 vs kubernetesOpenShift Enterprise 3.1 vs kubernetes
OpenShift Enterprise 3.1 vs kubernetes
Samuel Terburg
 
Microservices, Containers, Docker and a Cloud-Native Architecture in the Midd...
Microservices, Containers, Docker and a Cloud-Native Architecture in the Midd...Microservices, Containers, Docker and a Cloud-Native Architecture in the Midd...
Microservices, Containers, Docker and a Cloud-Native Architecture in the Midd...
Kai Wähner
 
Feature Engineering
Feature EngineeringFeature Engineering
Feature Engineering
HJ van Veen
 
Ad

Similar to Docker Meetup - Melbourne 2015 - Kubernetes Deep Dive (20)

Introduction to Kubernetes
Introduction to KubernetesIntroduction to Kubernetes
Introduction to Kubernetes
Vishal Biyani
 
Containerize! Between Docker and Jube.
Containerize! Between Docker and Jube.Containerize! Between Docker and Jube.
Containerize! Between Docker and Jube.
Henryk Konsek
 
Kubernetes
KubernetesKubernetes
Kubernetes
Linjith Kunnon
 
Introducing Kubernetes
Introducing Kubernetes Introducing Kubernetes
Introducing Kubernetes
VikRam S
 
Kubernetes for Java developers
Kubernetes for Java developersKubernetes for Java developers
Kubernetes for Java developers
Robert Barr
 
DevJam 2019 - Introduction to Kubernetes
DevJam 2019 - Introduction to KubernetesDevJam 2019 - Introduction to Kubernetes
DevJam 2019 - Introduction to Kubernetes
Ronny Trommer
 
DevNetCreate - ACI and Kubernetes Integration
DevNetCreate - ACI and Kubernetes IntegrationDevNetCreate - ACI and Kubernetes Integration
DevNetCreate - ACI and Kubernetes Integration
Hank Preston
 
Managing Container Clusters in OpenStack Native Way
Managing Container Clusters in OpenStack Native WayManaging Container Clusters in OpenStack Native Way
Managing Container Clusters in OpenStack Native Way
Qiming Teng
 
Docker Presentation at the OpenStack Austin Meetup | 2013-09-12
Docker Presentation at the OpenStack Austin Meetup | 2013-09-12Docker Presentation at the OpenStack Austin Meetup | 2013-09-12
Docker Presentation at the OpenStack Austin Meetup | 2013-09-12
dotCloud
 
Application Deployment on Openstack
Application Deployment on OpenstackApplication Deployment on Openstack
Application Deployment on Openstack
Docker, Inc.
 
Oscon 2017: Build your own container-based system with the Moby project
Oscon 2017: Build your own container-based system with the Moby projectOscon 2017: Build your own container-based system with the Moby project
Oscon 2017: Build your own container-based system with the Moby project
Patrick Chanezon
 
Webinar container management in OpenStack
Webinar container management in OpenStackWebinar container management in OpenStack
Webinar container management in OpenStack
CREATE-NET
 
Containers and Kubernetes -Notes Leo
Containers and Kubernetes -Notes LeoContainers and Kubernetes -Notes Leo
Containers and Kubernetes -Notes Leo
Léopold Gault
 
WSO2Con ASIA 2016: Revolutionizing WSO2 App Cloud with Kubernetes & Docker
WSO2Con ASIA 2016: Revolutionizing WSO2 App Cloud with Kubernetes & DockerWSO2Con ASIA 2016: Revolutionizing WSO2 App Cloud with Kubernetes & Docker
WSO2Con ASIA 2016: Revolutionizing WSO2 App Cloud with Kubernetes & Docker
WSO2
 
Persistent Storage in Openshift using GlusterFS
Persistent Storage in Openshift using GlusterFSPersistent Storage in Openshift using GlusterFS
Persistent Storage in Openshift using GlusterFS
Humble Chirammal
 
Open stackaustinmeetupsept21
Open stackaustinmeetupsept21Open stackaustinmeetupsept21
Open stackaustinmeetupsept21
Brent Doncaster
 
Kubernetes Bangalore Meetup- July 2017
Kubernetes Bangalore Meetup- July 2017Kubernetes Bangalore Meetup- July 2017
Kubernetes Bangalore Meetup- July 2017
OpenEBS
 
Docker and kubernetes_introduction
Docker and kubernetes_introductionDocker and kubernetes_introduction
Docker and kubernetes_introduction
Jason Hu
 
A guide of PostgreSQL on Kubernetes
A guide of PostgreSQL on KubernetesA guide of PostgreSQL on Kubernetes
A guide of PostgreSQL on Kubernetes
t8kobayashi
 
Introduction to Kubernetes Workshop
Introduction to Kubernetes WorkshopIntroduction to Kubernetes Workshop
Introduction to Kubernetes Workshop
Bob Killen
 
Introduction to Kubernetes
Introduction to KubernetesIntroduction to Kubernetes
Introduction to Kubernetes
Vishal Biyani
 
Containerize! Between Docker and Jube.
Containerize! Between Docker and Jube.Containerize! Between Docker and Jube.
Containerize! Between Docker and Jube.
Henryk Konsek
 
Introducing Kubernetes
Introducing Kubernetes Introducing Kubernetes
Introducing Kubernetes
VikRam S
 
Kubernetes for Java developers
Kubernetes for Java developersKubernetes for Java developers
Kubernetes for Java developers
Robert Barr
 
DevJam 2019 - Introduction to Kubernetes
DevJam 2019 - Introduction to KubernetesDevJam 2019 - Introduction to Kubernetes
DevJam 2019 - Introduction to Kubernetes
Ronny Trommer
 
DevNetCreate - ACI and Kubernetes Integration
DevNetCreate - ACI and Kubernetes IntegrationDevNetCreate - ACI and Kubernetes Integration
DevNetCreate - ACI and Kubernetes Integration
Hank Preston
 
Managing Container Clusters in OpenStack Native Way
Managing Container Clusters in OpenStack Native WayManaging Container Clusters in OpenStack Native Way
Managing Container Clusters in OpenStack Native Way
Qiming Teng
 
Docker Presentation at the OpenStack Austin Meetup | 2013-09-12
Docker Presentation at the OpenStack Austin Meetup | 2013-09-12Docker Presentation at the OpenStack Austin Meetup | 2013-09-12
Docker Presentation at the OpenStack Austin Meetup | 2013-09-12
dotCloud
 
Application Deployment on Openstack
Application Deployment on OpenstackApplication Deployment on Openstack
Application Deployment on Openstack
Docker, Inc.
 
Oscon 2017: Build your own container-based system with the Moby project
Oscon 2017: Build your own container-based system with the Moby projectOscon 2017: Build your own container-based system with the Moby project
Oscon 2017: Build your own container-based system with the Moby project
Patrick Chanezon
 
Webinar container management in OpenStack
Webinar container management in OpenStackWebinar container management in OpenStack
Webinar container management in OpenStack
CREATE-NET
 
Containers and Kubernetes -Notes Leo
Containers and Kubernetes -Notes LeoContainers and Kubernetes -Notes Leo
Containers and Kubernetes -Notes Leo
Léopold Gault
 
WSO2Con ASIA 2016: Revolutionizing WSO2 App Cloud with Kubernetes & Docker
WSO2Con ASIA 2016: Revolutionizing WSO2 App Cloud with Kubernetes & DockerWSO2Con ASIA 2016: Revolutionizing WSO2 App Cloud with Kubernetes & Docker
WSO2Con ASIA 2016: Revolutionizing WSO2 App Cloud with Kubernetes & Docker
WSO2
 
Persistent Storage in Openshift using GlusterFS
Persistent Storage in Openshift using GlusterFSPersistent Storage in Openshift using GlusterFS
Persistent Storage in Openshift using GlusterFS
Humble Chirammal
 
Open stackaustinmeetupsept21
Open stackaustinmeetupsept21Open stackaustinmeetupsept21
Open stackaustinmeetupsept21
Brent Doncaster
 
Kubernetes Bangalore Meetup- July 2017
Kubernetes Bangalore Meetup- July 2017Kubernetes Bangalore Meetup- July 2017
Kubernetes Bangalore Meetup- July 2017
OpenEBS
 
Docker and kubernetes_introduction
Docker and kubernetes_introductionDocker and kubernetes_introduction
Docker and kubernetes_introduction
Jason Hu
 
A guide of PostgreSQL on Kubernetes
A guide of PostgreSQL on KubernetesA guide of PostgreSQL on Kubernetes
A guide of PostgreSQL on Kubernetes
t8kobayashi
 
Introduction to Kubernetes Workshop
Introduction to Kubernetes WorkshopIntroduction to Kubernetes Workshop
Introduction to Kubernetes Workshop
Bob Killen
 
Ad

Recently uploaded (20)

PDF Reader Pro Crack Latest Version FREE Download 2025
PDF Reader Pro Crack Latest Version FREE Download 2025PDF Reader Pro Crack Latest Version FREE Download 2025
PDF Reader Pro Crack Latest Version FREE Download 2025
mu394968
 
Automation Techniques in RPA - UiPath Certificate
Automation Techniques in RPA - UiPath CertificateAutomation Techniques in RPA - UiPath Certificate
Automation Techniques in RPA - UiPath Certificate
VICTOR MAESTRE RAMIREZ
 
FL Studio Producer Edition Crack 2025 Full Version
FL Studio Producer Edition Crack 2025 Full VersionFL Studio Producer Edition Crack 2025 Full Version
FL Studio Producer Edition Crack 2025 Full Version
tahirabibi60507
 
Scaling GraphRAG: Efficient Knowledge Retrieval for Enterprise AI
Scaling GraphRAG:  Efficient Knowledge Retrieval for Enterprise AIScaling GraphRAG:  Efficient Knowledge Retrieval for Enterprise AI
Scaling GraphRAG: Efficient Knowledge Retrieval for Enterprise AI
danshalev
 
Expand your AI adoption with AgentExchange
Expand your AI adoption with AgentExchangeExpand your AI adoption with AgentExchange
Expand your AI adoption with AgentExchange
Fexle Services Pvt. Ltd.
 
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
Egor Kaleynik
 
Explaining GitHub Actions Failures with Large Language Models Challenges, In...
Explaining GitHub Actions Failures with Large Language Models Challenges, In...Explaining GitHub Actions Failures with Large Language Models Challenges, In...
Explaining GitHub Actions Failures with Large Language Models Challenges, In...
ssuserb14185
 
Who Watches the Watchmen (SciFiDevCon 2025)
Who Watches the Watchmen (SciFiDevCon 2025)Who Watches the Watchmen (SciFiDevCon 2025)
Who Watches the Watchmen (SciFiDevCon 2025)
Allon Mureinik
 
Exploring Code Comprehension in Scientific Programming: Preliminary Insight...
Exploring Code Comprehension  in Scientific Programming:  Preliminary Insight...Exploring Code Comprehension  in Scientific Programming:  Preliminary Insight...
Exploring Code Comprehension in Scientific Programming: Preliminary Insight...
University of Hawai‘i at Mānoa
 
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRYLEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
NidaFarooq10
 
Not So Common Memory Leaks in Java Webinar
Not So Common Memory Leaks in Java WebinarNot So Common Memory Leaks in Java Webinar
Not So Common Memory Leaks in Java Webinar
Tier1 app
 
How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?
How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?
How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?
steaveroggers
 
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Ranjan Baisak
 
Revolutionizing Residential Wi-Fi PPT.pptx
Revolutionizing Residential Wi-Fi PPT.pptxRevolutionizing Residential Wi-Fi PPT.pptx
Revolutionizing Residential Wi-Fi PPT.pptx
nidhisingh691197
 
Get & Download Wondershare Filmora Crack Latest [2025]
Get & Download Wondershare Filmora Crack Latest [2025]Get & Download Wondershare Filmora Crack Latest [2025]
Get & Download Wondershare Filmora Crack Latest [2025]
saniaaftab72555
 
Exploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the FutureExploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the Future
ICS
 
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
F-Secure Freedome VPN 2025 Crack Plus Activation  New VersionF-Secure Freedome VPN 2025 Crack Plus Activation  New Version
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
saimabibi60507
 
Landscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature ReviewLandscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature Review
Hironori Washizaki
 
Maxon CINEMA 4D 2025 Crack FREE Download LINK
Maxon CINEMA 4D 2025 Crack FREE Download LINKMaxon CINEMA 4D 2025 Crack FREE Download LINK
Maxon CINEMA 4D 2025 Crack FREE Download LINK
younisnoman75
 
Designing AI-Powered APIs on Azure: Best Practices& Considerations
Designing AI-Powered APIs on Azure: Best Practices& ConsiderationsDesigning AI-Powered APIs on Azure: Best Practices& Considerations
Designing AI-Powered APIs on Azure: Best Practices& Considerations
Dinusha Kumarasiri
 
PDF Reader Pro Crack Latest Version FREE Download 2025
PDF Reader Pro Crack Latest Version FREE Download 2025PDF Reader Pro Crack Latest Version FREE Download 2025
PDF Reader Pro Crack Latest Version FREE Download 2025
mu394968
 
Automation Techniques in RPA - UiPath Certificate
Automation Techniques in RPA - UiPath CertificateAutomation Techniques in RPA - UiPath Certificate
Automation Techniques in RPA - UiPath Certificate
VICTOR MAESTRE RAMIREZ
 
FL Studio Producer Edition Crack 2025 Full Version
FL Studio Producer Edition Crack 2025 Full VersionFL Studio Producer Edition Crack 2025 Full Version
FL Studio Producer Edition Crack 2025 Full Version
tahirabibi60507
 
Scaling GraphRAG: Efficient Knowledge Retrieval for Enterprise AI
Scaling GraphRAG:  Efficient Knowledge Retrieval for Enterprise AIScaling GraphRAG:  Efficient Knowledge Retrieval for Enterprise AI
Scaling GraphRAG: Efficient Knowledge Retrieval for Enterprise AI
danshalev
 
Expand your AI adoption with AgentExchange
Expand your AI adoption with AgentExchangeExpand your AI adoption with AgentExchange
Expand your AI adoption with AgentExchange
Fexle Services Pvt. Ltd.
 
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
How Valletta helped healthcare SaaS to transform QA and compliance to grow wi...
Egor Kaleynik
 
Explaining GitHub Actions Failures with Large Language Models Challenges, In...
Explaining GitHub Actions Failures with Large Language Models Challenges, In...Explaining GitHub Actions Failures with Large Language Models Challenges, In...
Explaining GitHub Actions Failures with Large Language Models Challenges, In...
ssuserb14185
 
Who Watches the Watchmen (SciFiDevCon 2025)
Who Watches the Watchmen (SciFiDevCon 2025)Who Watches the Watchmen (SciFiDevCon 2025)
Who Watches the Watchmen (SciFiDevCon 2025)
Allon Mureinik
 
Exploring Code Comprehension in Scientific Programming: Preliminary Insight...
Exploring Code Comprehension  in Scientific Programming:  Preliminary Insight...Exploring Code Comprehension  in Scientific Programming:  Preliminary Insight...
Exploring Code Comprehension in Scientific Programming: Preliminary Insight...
University of Hawai‘i at Mānoa
 
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRYLEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
NidaFarooq10
 
Not So Common Memory Leaks in Java Webinar
Not So Common Memory Leaks in Java WebinarNot So Common Memory Leaks in Java Webinar
Not So Common Memory Leaks in Java Webinar
Tier1 app
 
How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?
How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?
How to Batch Export Lotus Notes NSF Emails to Outlook PST Easily?
steaveroggers
 
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Ranjan Baisak
 
Revolutionizing Residential Wi-Fi PPT.pptx
Revolutionizing Residential Wi-Fi PPT.pptxRevolutionizing Residential Wi-Fi PPT.pptx
Revolutionizing Residential Wi-Fi PPT.pptx
nidhisingh691197
 
Get & Download Wondershare Filmora Crack Latest [2025]
Get & Download Wondershare Filmora Crack Latest [2025]Get & Download Wondershare Filmora Crack Latest [2025]
Get & Download Wondershare Filmora Crack Latest [2025]
saniaaftab72555
 
Exploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the FutureExploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the Future
ICS
 
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
F-Secure Freedome VPN 2025 Crack Plus Activation  New VersionF-Secure Freedome VPN 2025 Crack Plus Activation  New Version
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
saimabibi60507
 
Landscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature ReviewLandscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature Review
Hironori Washizaki
 
Maxon CINEMA 4D 2025 Crack FREE Download LINK
Maxon CINEMA 4D 2025 Crack FREE Download LINKMaxon CINEMA 4D 2025 Crack FREE Download LINK
Maxon CINEMA 4D 2025 Crack FREE Download LINK
younisnoman75
 
Designing AI-Powered APIs on Azure: Best Practices& Considerations
Designing AI-Powered APIs on Azure: Best Practices& ConsiderationsDesigning AI-Powered APIs on Azure: Best Practices& Considerations
Designing AI-Powered APIs on Azure: Best Practices& Considerations
Dinusha Kumarasiri
 

Docker Meetup - Melbourne 2015 - Kubernetes Deep Dive

  • 1. Networking & Storage Deep Dive Ken Thompson Senior Cloud Solution Architect Melbourne Docker Meetup - October 2015 KUBERNETES: THE HELMSMEN
  • 2. Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive2 Agenda Kubernetes Deep Dive ● Kubernetes Networking ● Kubernetes Persistent Volumes ● Live Demos: – Persistent Storage – Something Fun!...
  • 3. Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive3 Container orchestration at scale KUBERNETES ● Scale workloads across a cluster of container hosts ● Declarative state of environment that gets managed ● Intelligent policy-based scheduling ● Multi-host networking support (with OpenShift-SDN/OvSwitch etc.) ● Multi-host shared storage for containers ● Image update mechanisms (with OpenShift Deployment Configs - rolling update, a-b, etc.)
  • 4. Melbourne Docker Meetup Oct 2015 - K ubernetes Networking & Storage Deep Dive 4 KUBERNETES DEEP DIVE: NETWORKING
  • 5. Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive5 DOCKER IN-HOST NETWORKING Suitable for single-host, not for multi-host ● Docker assigns an IP to each container ● Its local and private only by default ● Complex for multi-host ● Plugins starting to become available ● Now we have a container..hold on! – What happens If we want to have containers sharing filesystem – Or IPC communications – Or localhost communications (mysql & phpmyadmin for eg.) eth0 Linux bridge: docker0: 172.17.42.1/16 vethXXX 172.17.x.x/16 container eth0 vethXXX 172.17.x.y/16 container eth0
  • 6. Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive6 KUBERNETES IN-HOST NETWORKING Kubernetes Pods ● Pods (aka gears in OSE v2) – Pod typically runs only one container for independent scaling, with exceptions such as “sidecars”. Ie. MySQL & phpMyAdmin – Same IP / network namespace – Same IPC – Ability to share disk – Scheduled on same machine – Atomic unit – Can listen (to other containers)on 127.0.0.1 or 0.0.0.0
  • 7. Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive7 INTER-HOST NETWORKING Solutions Available PROGRAMMABLE INFRA ● GCE – each host gets a subnet of 256 Ips ● AWS 40-100 Ips per host ● Custom enterprise networking OVERLAY NETWORKS ● Flannel (ie. Atomic Host) – subnet with simple overlay. ● Others solutions available like Weave, etc. Open vSwitch ● OpenStack ● Very large deployments ● Programmable ● OpenShift-SDN uses this
  • 8. Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive8 ● Kubernetes assigns 10.1.x.0/24 subnet to pods in each node ● Gateway IP 10.1.x.1 is assigned to lbr0 ● Out of the box with OpenShift, Open vSwitch VXLAN overlay is used to connect nodes/pods ● Flat network, allow subdivision via flows OPENSHIFT-SDN NETWORKING OVS: br0 vxlan0 eth0 vovsbr Linux bridge: lbr0: 10.1.0.1/24 vlinuxbr veth pair vethXXX Pod 10.1.0.2 eth0 vethXXX Pod 10.1.0.3 eth0VXLAN VXLAN overlay OVS: br0 vxlan0 eth0 vovsbr Linux bridge: lbr0: 10.1.1.1/24 vlinuxbr veth pair vethXXX Pod 10.1.1.2 eth0 vethXXX Pod 10.1.1.3 eth0 10.1.1.0/24 VXLAN
  • 9. Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive9 ● OpenShift-SDN or similar overlays allow communications within a cluster, but how do access from outside; ie. WWW? ● Router Pod – Runs HAproxy, proxies incoming traffic through SDN – HTTP/S Only OPENSHIFT-SDN ROUTING
  • 10. Melbourne Docker Meetup Oct 2015 - K ubernetes Networking & Storage Deep Dive 10 KUBERNETES DEEP DIVE: STORAGE
  • 11. Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive11 DOCKER STORAGE CONSTRAINTS KUBERNETES GOALS CONTAINER STORAGE 1) Containers are ephemeral (stateless), once they disappear, so does the data 2) You can mount the host filesystem, but 1) What about loss of host? 2) How do you scale across 1000s of hosts? 3) How is this data shared? 1) Allow administrators to describe available storage 2) Allow application developers to discover and request persistent storage 3) Persistent storage should be available without being closely bound to a particular disk, server, network or storage device 4) Support iSCSI, NFS, EBS, Gluster, Ceph… and many more! Problem Statement
  • 12. Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive12 PERSISTENT VOLUME CLAIMS ● Admins add PVs to cluster [1] ● Like Pods, PVClaims live in a namespace ● Pods [3] and Pvclaims [2] are requests for resources by users ● Users request resources with limits, like cpu usage by a container or storage capacity of a volume [2] ● OpenShift binds requests to available resources ● Multiple access modes (RWO,ROM,RWM) Requests for storage kind: PersistentVolumeClaim apiVersion: v1 metadata: name: myclaim spec: accessModes: - ReadWriteOnce resources: requests: storage: 8Gi kind: Pod apiVersion: v1 metadata: name: mypod spec: containers: - name: myfrontend image: dockerfile/nginx volumeMounts: - mountPath: "/var/www/html" name: mypd volumes: - name: mypd persistentVolumeClaim: claimName: myclaim POST: kind: PersistentVolume apiVersion: v1 metadata: name: pv0001 spec: capacity: storage: 10 nfs: Server: srv.com path: /data/path 1 2 3
  • 13. Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive13 DB Host 1 Host 2 Storage Pool Kubernetes Persistent Volumes CONTAINER STORAGE mysql-claim pv0001 Network Storage NFSiSCSI EBS RBD 2. Dev “Claims” PV 1. Admin creates PV
  • 14. Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive14 DB Host 1 Host 2 DB What happens to a container & its storage when a node is lost? CONTAINER STORAGE Storage Pool mysql-claim pv0001 Network Storage NFSiSCSI EBS RBD
  • 15. Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive15 What happens to a container & its storage when a node is lost? CONTAINER STORAGE DB Host 1 Host 2 DB Storage Pool mysql-claim pv0001 Network Storage NFSiSCSI EBS RBD
  • 16. Melbourne Docker Meetup Oct 2015 - K ubernetes Networking & Storage Deep Dive 16 Storage Demo (https://github.com/openshift/origin/tree/master/examples/wordpress) & HexBoard Demo (https://www.youtube.com/watch?v=wWNVpFibayA&feature=youtu.be&t=24m25s)
  • 17. Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive17 Free Kubernetes eBook OpenShift Enterprise Test-Drive (Free 8 hour Environment on AWS) Questions? http://red.ht/1NbW2wi http://red.ht/1MQVgqb Plus some great ways to get started with Kubernetes...
  • 18. Melbourne Docker Meetup Oct 2015 - K ubernetes Networking & Storage Deep Dive 18 APPENDIX
  • 19. Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive19 WHAT ARE LINUX CONTAINERS? Software packaging concept that typically includes an application and all of its runtime dependencies ● Easy to deploy and portable across host systems ● Isolates applications on a host operating system ● In RHEL, this is done through: ● Control Groups (cgroups) ● Kernel namespaces ● SELinux, sVirt, iptables ● Docker HOST OS SERVER CONTAINER LIBS APP
  • 20. Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive20 TRADITIONAL OS VS. CONTAINERS Traditional OS Containers HARDWARE HOST OS HARDWARE HOST OS CONTAINER LIBS APP A LIBS A LIBS B LIBS LIBS APP A APP B CONTAINER LIBS APP B Packaged dependencies = faster boot times + greater portability
  • 21. Melbourne Docker Meetup Oct 2015 - Kubernetes Networking & Storage Deep Dive21 Developers can access OpenShift via Web, CLI or IDE OPENSHIFT 3 Turn-key solution for Developer Productivity + Container Orchestration