SlideShare a Scribd company logo
1 of 40
Download to read offline
CROSSING THECROSSING THE
STREAMSSTREAMS
MESO S <> KUBERNETESMESO S <> KUBERNETES
Timothy St. Clair
#MESOSCON @timothysc
OVERVIEWOVERVIEW
BRIEF HISTORY OF CLUSTERBRIEF HISTORY OF CLUSTER
MANAGE MENTMANAGE MENT
WHAT IS KUBERNETES?WHAT IS KUBERNETES?
MES OS AND THE MODERNMES OS AND THE MODERN
DATACENTERDATACENTER
CROSSING THE STREAMSCROSSING THE STREAMS
MES OS <> KUBERNETESMES OS <> KUBERNETES
BRIEF HISTORY OF CLUSTERBRIEF HISTORY OF CLUSTER
MANAGEMENTMANAGEMENT
"The good ideas of today, often mimic the good ideas of the past."
STEP BACK TO THE 80'SSTEP BACK TO THE 80'S
& 90'S& 90'S
[Ghostbusters] ~1984
BEFORE "CONTAINERBEFORE "CONTAINER
ORCHESTRATION"ORCHESTRATION"
BEFORE IAAS/"CLOUD"BEFORE IAAS/"CLOUD"
THERE WAS THE GRIDTHERE WAS THE GRID
In the 1990s, inspired by the availability of high-speed wide area networks
and challenged by the computational requirements of new applications,
researchers began to imagine a computing infrastructure that would
“provide access to computing on demand” (COD) and permit “flexible,
secure, coordinated resource sharing among dynamic collections of
individuals, institutions, and resources”
[The History of the Grid] ~Ian Foster, Carl Kesselman
GRID DRIVERSGRID DRIVERS
LARGE SCALE SCIENTIFIC COMPUTING (E.G.LARGE SCALE SCIENTIFIC COMPUTING (E.G.
LHCLHC ))
DESIRE TO HAVE FEDERATED COMPUTING AT HUNDREDS OFDESIRE TO HAVE FEDERATED COMPUTING AT HUNDREDS OF
SITES IN ORDER TO ANALYZE PETABYTES OF DATA. "SOUNDSSITES IN ORDER TO ANALYZE PETABYTES OF DATA. "SOUNDS
LIKE: BIG DATA"LIKE: BIG DATA"
GOAL IS THROUGHPUTGOAL IS THROUGHPUT
PLEASINGLY PARALLEL ALGORITHMSPLEASINGLY PARALLEL ALGORITHMS
LOTS OF ENORMOUS WORKFLOWS (DAGS)LOTS OF ENORMOUS WORKFLOWS (DAGS)
HTTP://HOME.WEB.CERN.CH/ABOUT/COMPUTINGHTTP://HOME.WEB.CERN.CH/ABOUT/COMPUTING
GRID DRIVERS (CONT)GRID DRIVERS (CONT)
ANALOGOUS TO UTILITIES OF THE TIME, BUT FOR ON DEMANDANALOGOUS TO UTILITIES OF THE TIME, BUT FOR ON DEMAND
COMPUTE POWERCOMPUTE POWER
HETEROGENOUS DISTRIBUTED RESOURCE MANAGEMENTHETEROGENOUS DISTRIBUTED RESOURCE MANAGEMENT
INFRASTRUCTURESINFRASTRUCTURES
MULTI-TENANTMULTI-TENANT
INDEPENT SECURITY MODELSINDEPENT SECURITY MODELS
** MANY SYSTEMS WORKING TOGETHER (GLOBUS, HADOOP,** MANY SYSTEMS WORKING TOGETHER (GLOBUS, HADOOP,
CONDOR, SGE ...CONDOR, SGE ...
SOPHISTICATED MATCHMAKING DUE TO THE HETEROGENOUSSOPHISTICATED MATCHMAKING DUE TO THE HETEROGENOUS
NATURE OF THE GRIDNATURE OF THE GRID
GRID OPERATIONSGRID OPERATIONS
1. PROVISION RESOURCESPROVISION RESOURCES
2. PUBLISH, OR ADVERTISEPUBLISH, OR ADVERTISE
RESOURCE AVAIL ABILITYRESOURCE AVAIL ABILITY
3. ASSEMBLE RESOURCES INTO AASSEMBLE RESOURCES INTO A
OPERATIONAL GRID/POOLOPERATIONAL GRID/POOL
4. CON SUME RESOURCES ACROSS ACON SUME RESOURCES ACROSS A
VARIETY OF APPLICATIONSVARIETY OF APPLICATIONS
LESSONS LEARNEDLESSONS LEARNED
NOT EVERYTHING IS A "JOB", HA-MICRO-SERVICES...NOT EVERYTHING IS A "JOB", HA-MICRO-SERVICES...
** NEEDS MORE COMPOSABILITY **** NEEDS MORE COMPOSABILITY **
MANY SYSTEMS DOING SIMILAR THINGS (SGE, LSF, PBS, CONDOR,MANY SYSTEMS DOING SIMILAR THINGS (SGE, LSF, PBS, CONDOR,
MESOS, KUBERNETES, SWARM)MESOS, KUBERNETES, SWARM)
PROVISION RESOURCESPROVISION RESOURCES
PUBLISH, OR ADVERTISE RESOURCE AVAILABILITYPUBLISH, OR ADVERTISE RESOURCE AVAILABILITY
ASSEMBLE RESOURCES INTO A OPERATIONAL GRID/POOLASSEMBLE RESOURCES INTO A OPERATIONAL GRID/POOL
CONSUME RESOURCES ACROSS A VARIETY OF APPLICATIONSCONSUME RESOURCES ACROSS A VARIETY OF APPLICATIONS
HETEROGENEOUS COMPUTING PLATFORMS IS HARDHETEROGENEOUS COMPUTING PLATFORMS IS HARD
HARDWARE DIVERSITY (SUN, X86, ITANIUM, POWERPC)HARDWARE DIVERSITY (SUN, X86, ITANIUM, POWERPC)
ASSORTED HW-SPECIALIZATIONSASSORTED HW-SPECIALIZATIONS
OS DIVERSITY (SOLARIS, WINDOWS, LINUX, HPUX, AIX ...)OS DIVERSITY (SOLARIS, WINDOWS, LINUX, HPUX, AIX ...)
INSTALLED STACK DIVERSITY (LIBRARIES, LANGUAGES)INSTALLED STACK DIVERSITY (LIBRARIES, LANGUAGES)
LESSONS LEARNED (CONT)LESSONS LEARNED (CONT)
MATCHING (HW+OS+SW) CAN BE GRIZZLY BEARMATCHING (HW+OS+SW) CAN BE GRIZZLY BEAR
CONTAINERS SOLVES SOME OF THIS...CONTAINERS SOLVES SOME OF THIS...
Software people often say “we eliminated a whole class of problems”
when they mean “we chose tradeoffs that make you solve them
elsewhere.” ~ William Benton​​
FLAT L3 NETWORKING IS A PITA (PORT MANGLING)FLAT L3 NETWORKING IS A PITA (PORT MANGLING)
NAT-ING SHOULD BE CONFIGURABLENAT-ING SHOULD BE CONFIGURABLE
NEEDS MORE FLEXIBILITY (CREATE YOUR OWN SCHEDULER)NEEDS MORE FLEXIBILITY (CREATE YOUR OWN SCHEDULER)
EXPRESSIVENESS CAN BE GOOD... WHEN MANAGED, OTHERWISE IT CANEXPRESSIVENESS CAN BE GOOD... WHEN MANAGED, OTHERWISE IT CAN
BECOME OBTUSEBECOME OBTUSE
/* now modif y routed job attributes */
/* remove routed job if it goes on hold or stays idle for over 6 hours */
set_PeriodicRemove = JobStatus == 5 ||
(JobStatus == 1 && (CurrentTime - QDate) > 3600*6);
delete_WantJobRouter = true;
set_requirements = true;
FAST FORWARD TO 2015FAST FORWARD TO 2015
[Back to the Future Part 3]
WHAT IS KUBERNETES?WHAT IS KUBERNETES?
The Greek word “kubernetes,” means “helmsman of a ship,” or, more
metaphorically, “ruler.”
WHAT IS KUBERNETES?WHAT IS KUBERNETES?
"Kubernetes is an open source orchestration system for
containers. It handles scheduling onto nodes in a compute
cluster and actively manages workloads to ensure that their
state matches the users declared intentions."
KUBERNETES?KUBERNETES?
'KUBERNETES IS AN OPEN SOURCE'KUBERNETES IS AN OPEN SOURCE "ORCHESTRATION SYSTEM""ORCHESTRATION SYSTEM" FOR CONTAINERS. ITFOR CONTAINERS. IT
Kubernetes is an open source derivative work, based on Google's internal BORG infrastruct
It manages containerized applications across multiple hosts, providing basic mechanisms fo
Kubernetes establishes a set of robust declarative primitives for maintaining the desired
KUBERNETES?KUBERNETES?
KUBERNETES IS DECL ARATIVEKUBERNETES IS DECL ARATIVE
apiVersion: v1
kind: ReplicationController
metadata:
name: redis-slave
labels:
name: redis-slave
spec:
replicas: 2
...
ALSO IMPARATIVE, THE API ALLOWS YOU TO WRITE
INTROSPECTIVE SERVICES, OR CONTROLLER, ATOP OF IT.
ITS POSSIBLE TO WRITE ELASTIC CONTROLLERS (THINK YARN)
CORE CONCEPTSCORE CONCEPTS
CORE CONCEPTSCORE CONCEPTS
PODSPODS
PODS ARE THE ATOM OF SCHEDULING, AND ARE A GROUP OFPODS ARE THE ATOM OF SCHEDULING, AND ARE A GROUP OF
CONTAINERS THAT ARE SCHEDULED ONTO THE SAME HOST.CONTAINERS THAT ARE SCHEDULED ONTO THE SAME HOST.
"COSCHEDULING""COSCHEDULING"
PODS FACILITATE DATA SHARING AND COMMUNICATION BETWEENPODS FACILITATE DATA SHARING AND COMMUNICATION BETWEEN
CONTAINERS WITHIN THE PODCONTAINERS WITHIN THE POD
SHARED MOUNT POINTSHARED MOUNT POINT
SHARED NETWORK NAMESPACE/IP AND PORT SPACESHARED NETWORK NAMESPACE/IP AND PORT SPACE
HIGHER ORDER ABSTRACTION THEN CONTAINERSHIGHER ORDER ABSTRACTION THEN CONTAINERS
COMPOSABLE MICRO-SERVICESCOMPOSABLE MICRO-SERVICES
CORE CONCEPTS (CONT)CORE CONCEPTS (CONT)
CONTROLLERSCONTROLLERS
EVENTUAL CONSISTENCY IS MAINTAINED BY SEPARATEEVENTUAL CONSISTENCY IS MAINTAINED BY SEPARATE
CONTROLLERS. EACH CONTROLLERS PURPOSE IS TO RECTIFY ANYCONTROLLERS. EACH CONTROLLERS PURPOSE IS TO RECTIFY ANY
DISCREPANCY BETWEEN THE DECLARED STATE OF A PRIMITIVE,DISCREPANCY BETWEEN THE DECLARED STATE OF A PRIMITIVE,
WITH THE CURRENT STATE OF THE SYSTEMWITH THE CURRENT STATE OF THE SYSTEM
nodes
apiserver
schedulercontroller
kind: ReplicationController
...
spec:
replicas: 2
CORE CONCEPTS (CONT)CORE CONCEPTS (CONT)
SERVICES*SERVICES*
SERVICES PROVIDE A SINGLE, STABLE NAME AND ADDRESS FOR ASERVICES PROVIDE A SINGLE, STABLE NAME AND ADDRESS FOR A
SET OF PODS. THEY TYPICALLY ACT AS BASIC LOAD BALANCEDSET OF PODS. THEY TYPICALLY ACT AS BASIC LOAD BALANCED
PROXY ENDPOINT. (NON-COLLIDING-NAT)PROXY ENDPOINT. (NON-COLLIDING-NAT)
CLOUD BASED IMPLEMENTATIONS HAVE NATIVE SUPPORT FORCLOUD BASED IMPLEMENTATIONS HAVE NATIVE SUPPORT FOR
CREATING EXTERNAL LOAD BALANCERS.CREATING EXTERNAL LOAD BALANCERS.
PROVIDES A CONSTRUCT WHICH IS USED TO LOOKUP, NAME, ANDPROVIDES A CONSTRUCT WHICH IS USED TO LOOKUP, NAME, AND
LINK PODS (INJECTION)LINK PODS (INJECTION)
Load Balancer
PodPod
External/Internal
Service or user
SERVICE + CONTROLLERSERVICE + CONTROLLER
CORE CONCEPTS (CONT)CORE CONCEPTS (CONT)
LABELSLABELS
Labels are key/value pairs associated with pods or nodes.
Labels enable operators to map their own structures onto objects in a
loosely coupled fashion.​
=, !=, in, notin
"labels": {
"release" : "stable",
"environment" : "production"
}
USE CASESUSE CASES
WORKLOADWORKLOAD
CHARACTERIZATIONCHARACTERIZATION
Traditional
Batch
Streaming PaaS
ServiceHPC
CHRONOSCHRONOS
USE CASESUSE CASES
1.0 PRIMARY USE CASE:1.0 PRIMARY USE CASE:
CONTAINER ORCHESTRATION FOR CLOUD-NATIVECONTAINER ORCHESTRATION FOR CLOUD-NATIVE
APPLICATIONS.APPLICATIONS.
AN ENGINE FOR BUILDING FULLY FEATURES PAASAN ENGINE FOR BUILDING FULLY FEATURES PAAS
SYSTEMS ATOP.SYSTEMS ATOP.
OpenShift adds developer and operational centric tools on
top of Kubernetes to enable rapid application development,
easy deployment and scaling, and long-term lifecycle
maintenance for small and large teams and applications
STATUSSTATUS
1.0+ EXISTS FOR AVAIL ABILITY1.0+ EXISTS FOR AVAIL ABILITY
(GCE, ATOMIC, ETC.)(GCE, ATOMIC, ETC.)
MESO S F RAMEWOR K I S I N THEMESO S F RAMEWOR K I S I N THE
MAIN R E PO, AND SUPPORTED !!!MAIN R E PO, AND SUPPORTED !!!
K8S FORMALLY GIVEN TO THEK8S FORMALLY GIVEN TO THE
CNCFCNCF
GOOGLECLOUD->KUBERNETES ONGOOGLECLOUD->KUBERNETES ON
GITHUBGITHUB
MESOS AND THE MODERNMESOS AND THE MODERN
DATA CENTERDATA CENTER
NEW DATACENTER (CONT)NEW DATACENTER (CONT)
CHARACTERISTICS:CHARACTERISTICS:
SHARED INFRASTRUCTURE VS. SILO(S)SHARED INFRASTRUCTURE VS. SILO(S)
MULTI-TENANTMULTI-TENANT
MULTIPLE ELASTIC WORKLOADSMULTIPLE ELASTIC WORKLOADS
ANALYTICS + STREAMING + PAASANALYTICS + STREAMING + PAAS
PAAS (COMPOSABLE MICRO-SERVICES)PAAS (COMPOSABLE MICRO-SERVICES)
QOS (TIERS OF SERVICE)QOS (TIERS OF SERVICE)
FAIRNESS | QUOTAFAIRNESS | QUOTA
MANY NETWORKS, SDNMANY NETWORKS, SDN
LAYERS AND LAYERS OF SECURELAYERS AND LAYERS OF SECURE
ONLINEONLINE
NEARLINENEARLINE
OFFLINEOFFLINE
BATCH PROCESSING:BATCH PROCESSING:
Machine Learning, Modeling, Data Analysis, ETL, etc.
STREAM + PAASSTREAM + PAAS
Traditional services: Databases, Stream Processing
CLOUD-NATIVE / PAASCLOUD-NATIVE / PAAS
UI Clients, Web Framework Dejour, Event dispatching
http://techblog.netflix.com/2013/03/system-architectures-for.html
OPERATIONALOPERATIONAL
PERSPECTIVEPERSPECTIVE
Traditional
Batch
Streaming PaaS
ANALYTICS +ANALYTICS +
STREAMINGSTREAMING
PAASPAAS
STACK PERSPECTIVESTACK PERSPECTIVE
CROSSING THE STREAMSCROSSING THE STREAMS
MESO S <> KUBERNETESMESO S <> KUBERNETES
DISCLAIMER: I'M NOT A NETWORKING GURU
STEP 1: DEVISE A PLANSTEP 1: DEVISE A PLAN
DRAW OUT YOUR CORE SERVICES FOR YOUR DATA CENTERDRAW OUT YOUR CORE SERVICES FOR YOUR DATA CENTER
DETERMINE EXTERNAL VISIBILITYDETERMINE EXTERNAL VISIBILITY
AIR-GAPING | RESOLUTION VISIBILITY | INGRESS &AIR-GAPING | RESOLUTION VISIBILITY | INGRESS &
EGRESSEGRESS
NETWORK ACCESSABILITY TO YOUR OTHERNETWORK ACCESSABILITY TO YOUR OTHER
FRAMEWORKSFRAMEWORKS
RESOLUTION (MESOS-DNS)RESOLUTION (MESOS-DNS)
TRY TO NOT RELY ON DNS, PREFER DISCOVERY SERVICESTRY TO NOT RELY ON DNS, PREFER DISCOVERY SERVICES
IF AT ALL POSSIBLE, OR WELL DEFINED VIPS FOR PRIMARYIF AT ALL POSSIBLE, OR WELL DEFINED VIPS FOR PRIMARY
CORE SERVICES.CORE SERVICES.
VIPS DON'T SCALEVIPS DON'T SCALE
PLAN YOUR OVERLAY NETWORKPLAN YOUR OVERLAY NETWORK
TRY TO SEPARATE NETWORKS TO MAINTAIN SOME LEVELTRY TO SEPARATE NETWORKS TO MAINTAIN SOME LEVEL
OF QOSOF QOS
EXPOSING K8S SERVICESEXPOSING K8S SERVICES
{
...
"ports": [
{
"protocol": "TCP",
"port": 80,
"targetPort": 9376,
"nodePort": 30061
}
],
...
"type": "LoadBalancer"
},
"status": {
"loadBalancer": {
"ingress": [
{
"ip": "146.148.47.155"
}
...
}
nodePort: the Kubernetes master will
allocate a port from a flag-configured
range (default: 30000-32767), and
each Node will proxy that port (the
same port number on every Node) into
your Service.
type: LoadBalancer - On cloud
providers which support external load
balancers, setting the type field
to "LoadBalancer" will provision a load
balancer for your Service.
https://github.com/kubernetes/kubernetes/bl
ob/master/docs/user-guide/services.md
PLAN FOR CONSTRAINTSPLAN FOR CONSTRAINTS
DEALING WITH LEGACY SYSTEMSDEALING WITH LEGACY SYSTEMS
DNSDNS
MANY LEGACY SYSTEMS DEPEND ON DNS FOR BETTER ORMANY LEGACY SYSTEMS DEPEND ON DNS FOR BETTER OR
FOR WORSEFOR WORSE
NAMESPACING (ENG,PROD) AND MULTI-TENANCYNAMESPACING (ENG,PROD) AND MULTI-TENANCY
IN A MULTI-TENANT ENVIRONMENT YOU COULD HAVE 10IN A MULTI-TENANT ENVIRONMENT YOU COULD HAVE 10
COPIES OF THE SAME SERVICE AND THAT SHOULD BE OK.COPIES OF THE SAME SERVICE AND THAT SHOULD BE OK.
REVERSE DNS - (NAT FAILURE)REVERSE DNS - (NAT FAILURE)
DB1 DB1 DB1 DB1
......
CONSTRAINTSCONSTRAINTS
NETWORK TOPOLOGYNETWORK TOPOLOGY
VLANSVLANS
QOS ACROSS NETWORKSQOS ACROSS NETWORKS
OVERLAY NETWORKSOVERLAY NETWORKS
VXLAN OFFLOADINGVXLAN OFFLOADING
$1500 -> $500$1500 -> $500
COLLISION AVOIDANCE (IP STEALING)COLLISION AVOIDANCE (IP STEALING)
VIPSVIPS
LOAD-BALANCERS NATINGLOAD-BALANCERS NATING
STEP 2: CREATE A TESTSTEP 2: CREATE A TEST
EXPERIMENTEXPERIMENT
FIND YOUR HAPPY PLACE AND SAFE PLACEFIND YOUR HAPPY PLACE AND SAFE PLACE
HAVE A SANDBOX WHERE YOU CAN PLAY WITH SERVICESHAVE A SANDBOX WHERE YOU CAN PLAY WITH SERVICES
TEST SETTING UP SEPARATE NETWORKS FOR DIFFERENT SERVICESTEST SETTING UP SEPARATE NETWORKS FOR DIFFERENT SERVICES
CONSIDER CLUSTERS TO BE EPHEMERALCONSIDER CLUSTERS TO BE EPHEMERAL
IT ACTUALLY MAKES LIFE EASIERIT ACTUALLY MAKES LIFE EASIER
1 PAAS -> MANY PAAS-ES-S1 PAAS -> MANY PAAS-ES-S
TRY REACHING ACROSS NETWORKSTRY REACHING ACROSS NETWORKS
SETUP DIFFERENT LOAD-BALANCING SERVICESSETUP DIFFERENT LOAD-BALANCING SERVICES
DETERMINE IF VIPS MAKES SENSE FOR YOU AT YOUR SCALEDETERMINE IF VIPS MAKES SENSE FOR YOU AT YOUR SCALE
STEP 3: BURN YOURSTEP 3: BURN YOUR
ORIGINAL PLANORIGINAL PLAN
ONLY 1/2 JOKING, YOU WILL LIKELY RUN INTO ISSUESONLY 1/2 JOKING, YOU WILL LIKELY RUN INTO ISSUES
YOU NEVER KNEW EXISTED. CONSULT YOUR LOCALYOU NEVER KNEW EXISTED. CONSULT YOUR LOCAL
NETWORK OPERATORNETWORK OPERATOR
ENJOY THE JOURNEYENJOY THE JOURNEY
[Ghostbusters] ~1984
IT MAY GET A LITTLE MESSY, BUT IT'S WORTH ITIT MAY GET A LITTLE MESSY, BUT IT'S WORTH IT
THANK YOU!THANK YOU!
@TIMOTHYSC@TIMOTHYSC

More Related Content

What's hot

Docker and Kubernetes 101 workshop
Docker and Kubernetes 101 workshopDocker and Kubernetes 101 workshop
Docker and Kubernetes 101 workshopSathish VJ
 
Scaling Docker with Kubernetes
Scaling Docker with KubernetesScaling Docker with Kubernetes
Scaling Docker with KubernetesCarlos Sanchez
 
Kubernetes architecture
Kubernetes architectureKubernetes architecture
Kubernetes architectureJanakiram MSV
 
Docker, Kubernetes, and Google Cloud
Docker, Kubernetes, and Google CloudDocker, Kubernetes, and Google Cloud
Docker, Kubernetes, and Google CloudSamuel Chow
 
Containers orchestrators: Docker vs. Kubernetes
Containers orchestrators: Docker vs. KubernetesContainers orchestrators: Docker vs. Kubernetes
Containers orchestrators: Docker vs. KubernetesDmitry Lazarenko
 
Architecture Overview: Kubernetes with Red Hat Enterprise Linux 7.1
Architecture Overview: Kubernetes with Red Hat Enterprise Linux 7.1Architecture Overview: Kubernetes with Red Hat Enterprise Linux 7.1
Architecture Overview: Kubernetes with Red Hat Enterprise Linux 7.1Etsuji Nakai
 
Kubernetes in 15 minutes
Kubernetes in 15 minutesKubernetes in 15 minutes
Kubernetes in 15 minutesrhirschfeld
 
Building Clustered Applications with Kubernetes and Docker
Building Clustered Applications with Kubernetes and DockerBuilding Clustered Applications with Kubernetes and Docker
Building Clustered Applications with Kubernetes and DockerSteve Watt
 
HA Kubernetes on Mesos / Marathon
HA Kubernetes on Mesos / MarathonHA Kubernetes on Mesos / Marathon
HA Kubernetes on Mesos / MarathonCobus Bernard
 
Introduction to kubernetes
Introduction to kubernetesIntroduction to kubernetes
Introduction to kubernetesMichal Cwienczek
 
WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...
WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...
WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...Brian Grant
 
Kubernetes Introduction & Whats new in Kubernetes 1.6
Kubernetes Introduction & Whats new in Kubernetes 1.6Kubernetes Introduction & Whats new in Kubernetes 1.6
Kubernetes Introduction & Whats new in Kubernetes 1.6Opcito Technologies
 
Orchestrating Docker Containers with Google Kubernetes on OpenStack
Orchestrating Docker Containers with Google Kubernetes on OpenStackOrchestrating Docker Containers with Google Kubernetes on OpenStack
Orchestrating Docker Containers with Google Kubernetes on OpenStackTrevor Roberts Jr.
 
Microservices , Docker , CI/CD , Kubernetes Seminar - Sri Lanka
Microservices , Docker , CI/CD , Kubernetes Seminar - Sri Lanka Microservices , Docker , CI/CD , Kubernetes Seminar - Sri Lanka
Microservices , Docker , CI/CD , Kubernetes Seminar - Sri Lanka Mario Ishara Fernando
 
KuberNETes - meetup
KuberNETes - meetupKuberNETes - meetup
KuberNETes - meetupNathan Ness
 
Cluster management with Kubernetes
Cluster management with KubernetesCluster management with Kubernetes
Cluster management with KubernetesSatnam Singh
 
Package your Java EE Application using Docker and Kubernetes
Package your Java EE Application using Docker and KubernetesPackage your Java EE Application using Docker and Kubernetes
Package your Java EE Application using Docker and KubernetesArun Gupta
 
Scaling Microservices with Kubernetes
Scaling Microservices with KubernetesScaling Microservices with Kubernetes
Scaling Microservices with KubernetesDeivid Hahn Fração
 

What's hot (20)

Docker and Kubernetes 101 workshop
Docker and Kubernetes 101 workshopDocker and Kubernetes 101 workshop
Docker and Kubernetes 101 workshop
 
Scaling Docker with Kubernetes
Scaling Docker with KubernetesScaling Docker with Kubernetes
Scaling Docker with Kubernetes
 
Kubernetes architecture
Kubernetes architectureKubernetes architecture
Kubernetes architecture
 
Docker, Kubernetes, and Google Cloud
Docker, Kubernetes, and Google CloudDocker, Kubernetes, and Google Cloud
Docker, Kubernetes, and Google Cloud
 
Containers orchestrators: Docker vs. Kubernetes
Containers orchestrators: Docker vs. KubernetesContainers orchestrators: Docker vs. Kubernetes
Containers orchestrators: Docker vs. Kubernetes
 
Architecture Overview: Kubernetes with Red Hat Enterprise Linux 7.1
Architecture Overview: Kubernetes with Red Hat Enterprise Linux 7.1Architecture Overview: Kubernetes with Red Hat Enterprise Linux 7.1
Architecture Overview: Kubernetes with Red Hat Enterprise Linux 7.1
 
Kubernetes in 15 minutes
Kubernetes in 15 minutesKubernetes in 15 minutes
Kubernetes in 15 minutes
 
Building Clustered Applications with Kubernetes and Docker
Building Clustered Applications with Kubernetes and DockerBuilding Clustered Applications with Kubernetes and Docker
Building Clustered Applications with Kubernetes and Docker
 
HA Kubernetes on Mesos / Marathon
HA Kubernetes on Mesos / MarathonHA Kubernetes on Mesos / Marathon
HA Kubernetes on Mesos / Marathon
 
Introduction to kubernetes
Introduction to kubernetesIntroduction to kubernetes
Introduction to kubernetes
 
WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...
WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...
WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...
 
Kubernetes Introduction & Whats new in Kubernetes 1.6
Kubernetes Introduction & Whats new in Kubernetes 1.6Kubernetes Introduction & Whats new in Kubernetes 1.6
Kubernetes Introduction & Whats new in Kubernetes 1.6
 
Kubernetes Introduction
Kubernetes IntroductionKubernetes Introduction
Kubernetes Introduction
 
Orchestrating Docker Containers with Google Kubernetes on OpenStack
Orchestrating Docker Containers with Google Kubernetes on OpenStackOrchestrating Docker Containers with Google Kubernetes on OpenStack
Orchestrating Docker Containers with Google Kubernetes on OpenStack
 
Microservices , Docker , CI/CD , Kubernetes Seminar - Sri Lanka
Microservices , Docker , CI/CD , Kubernetes Seminar - Sri Lanka Microservices , Docker , CI/CD , Kubernetes Seminar - Sri Lanka
Microservices , Docker , CI/CD , Kubernetes Seminar - Sri Lanka
 
Docker & kubernetes
Docker & kubernetesDocker & kubernetes
Docker & kubernetes
 
KuberNETes - meetup
KuberNETes - meetupKuberNETes - meetup
KuberNETes - meetup
 
Cluster management with Kubernetes
Cluster management with KubernetesCluster management with Kubernetes
Cluster management with Kubernetes
 
Package your Java EE Application using Docker and Kubernetes
Package your Java EE Application using Docker and KubernetesPackage your Java EE Application using Docker and Kubernetes
Package your Java EE Application using Docker and Kubernetes
 
Scaling Microservices with Kubernetes
Scaling Microservices with KubernetesScaling Microservices with Kubernetes
Scaling Microservices with Kubernetes
 

Similar to Crossing the Streams Mesos &lt;> Kubernetes

Let's not rewrite it all
Let's not rewrite it allLet's not rewrite it all
Let's not rewrite it allMichelle Brush
 
Tech huddle paas_session
Tech huddle paas_sessionTech huddle paas_session
Tech huddle paas_sessionRob Edwards
 
Building Reliable Cloud Storage with Riak and CloudStack - Andy Gross, Chief ...
Building Reliable Cloud Storage with Riak and CloudStack - Andy Gross, Chief ...Building Reliable Cloud Storage with Riak and CloudStack - Andy Gross, Chief ...
Building Reliable Cloud Storage with Riak and CloudStack - Andy Gross, Chief ...buildacloud
 
Kamailio with Docker and Kubernetes
Kamailio with Docker and KubernetesKamailio with Docker and Kubernetes
Kamailio with Docker and KubernetesPaolo Visintin
 
Unraveling mysteries of the Universe at CERN, with OpenStack and Hadoop
Unraveling mysteries of the Universe at CERN, with OpenStack and HadoopUnraveling mysteries of the Universe at CERN, with OpenStack and Hadoop
Unraveling mysteries of the Universe at CERN, with OpenStack and HadoopPiotr Turek
 
2011-03-29 London - drools
2011-03-29 London - drools2011-03-29 London - drools
2011-03-29 London - droolsGeoffrey De Smet
 
Adventures in Real-World Data Science
Adventures in Real-World Data ScienceAdventures in Real-World Data Science
Adventures in Real-World Data Scienceroblund
 
'Malware Analysis' by PP Singh
'Malware Analysis' by PP Singh'Malware Analysis' by PP Singh
'Malware Analysis' by PP SinghBipin Upadhyay
 
The Economies of Scaling Software - Josh Long and Abdelmonaim Remani
The Economies of Scaling Software - Josh Long and Abdelmonaim RemaniThe Economies of Scaling Software - Josh Long and Abdelmonaim Remani
The Economies of Scaling Software - Josh Long and Abdelmonaim Remaniploibl
 
The Economies of Scaling Software - Josh Long and Abdelmonaim Remani
The Economies of Scaling Software - Josh Long and Abdelmonaim RemaniThe Economies of Scaling Software - Josh Long and Abdelmonaim Remani
The Economies of Scaling Software - Josh Long and Abdelmonaim RemaniJAXLondon2014
 
TAMING THE INFRASTRUCTURE GONE WILD
TAMING THE INFRASTRUCTURE  GONE WILDTAMING THE INFRASTRUCTURE  GONE WILD
TAMING THE INFRASTRUCTURE GONE WILDIsaac Christoffersen
 
TAMING THE INFRASTRUCTURE GONE WILD
TAMING THE INFRASTRUCTURE  GONE WILDTAMING THE INFRASTRUCTURE  GONE WILD
TAMING THE INFRASTRUCTURE GONE WILDColloquium
 
Container Orchestration Wars (2017 Edition)
Container Orchestration Wars (2017 Edition)Container Orchestration Wars (2017 Edition)
Container Orchestration Wars (2017 Edition)Karl Isenberg
 
Orchestrating Big Data pipelines @ Fandom - Krystian Mistrzak Thejas Murthy
Orchestrating Big Data pipelines @ Fandom - Krystian Mistrzak Thejas MurthyOrchestrating Big Data pipelines @ Fandom - Krystian Mistrzak Thejas Murthy
Orchestrating Big Data pipelines @ Fandom - Krystian Mistrzak Thejas MurthyEvention
 
Performance Benchmarking of Clouds Evaluating OpenStack
Performance Benchmarking of Clouds                Evaluating OpenStackPerformance Benchmarking of Clouds                Evaluating OpenStack
Performance Benchmarking of Clouds Evaluating OpenStackPradeep Kumar
 
AWS Summit Kuala Lumpur - Opening Keynote by Dr. Werner Vogels
AWS Summit Kuala Lumpur - Opening Keynote by Dr. Werner VogelsAWS Summit Kuala Lumpur - Opening Keynote by Dr. Werner Vogels
AWS Summit Kuala Lumpur - Opening Keynote by Dr. Werner VogelsAmazon Web Services
 
Cloud Foundry Container Runtime (CFCR) & Production Kubernetes
Cloud Foundry Container Runtime (CFCR) & Production KubernetesCloud Foundry Container Runtime (CFCR) & Production Kubernetes
Cloud Foundry Container Runtime (CFCR) & Production KubernetesVMware Tanzu
 
Enabling Lean IT with AWS by Carlos Condé at the Lean IT Summit 2014
Enabling Lean IT with AWS by Carlos Condé at the Lean IT Summit 2014Enabling Lean IT with AWS by Carlos Condé at the Lean IT Summit 2014
Enabling Lean IT with AWS by Carlos Condé at the Lean IT Summit 2014Institut Lean France
 

Similar to Crossing the Streams Mesos &lt;> Kubernetes (20)

Let's not rewrite it all
Let's not rewrite it allLet's not rewrite it all
Let's not rewrite it all
 
Tech huddle paas_session
Tech huddle paas_sessionTech huddle paas_session
Tech huddle paas_session
 
Building Reliable Cloud Storage with Riak and CloudStack - Andy Gross, Chief ...
Building Reliable Cloud Storage with Riak and CloudStack - Andy Gross, Chief ...Building Reliable Cloud Storage with Riak and CloudStack - Andy Gross, Chief ...
Building Reliable Cloud Storage with Riak and CloudStack - Andy Gross, Chief ...
 
Kamailio with Docker and Kubernetes
Kamailio with Docker and KubernetesKamailio with Docker and Kubernetes
Kamailio with Docker and Kubernetes
 
Unraveling mysteries of the Universe at CERN, with OpenStack and Hadoop
Unraveling mysteries of the Universe at CERN, with OpenStack and HadoopUnraveling mysteries of the Universe at CERN, with OpenStack and Hadoop
Unraveling mysteries of the Universe at CERN, with OpenStack and Hadoop
 
2011-03-29 London - drools
2011-03-29 London - drools2011-03-29 London - drools
2011-03-29 London - drools
 
Adventures in Real-World Data Science
Adventures in Real-World Data ScienceAdventures in Real-World Data Science
Adventures in Real-World Data Science
 
'Malware Analysis' by PP Singh
'Malware Analysis' by PP Singh'Malware Analysis' by PP Singh
'Malware Analysis' by PP Singh
 
Malware Analysis -an overview by PP Singh
Malware Analysis -an overview by PP SinghMalware Analysis -an overview by PP Singh
Malware Analysis -an overview by PP Singh
 
The Economies of Scaling Software - Josh Long and Abdelmonaim Remani
The Economies of Scaling Software - Josh Long and Abdelmonaim RemaniThe Economies of Scaling Software - Josh Long and Abdelmonaim Remani
The Economies of Scaling Software - Josh Long and Abdelmonaim Remani
 
The Economies of Scaling Software - Josh Long and Abdelmonaim Remani
The Economies of Scaling Software - Josh Long and Abdelmonaim RemaniThe Economies of Scaling Software - Josh Long and Abdelmonaim Remani
The Economies of Scaling Software - Josh Long and Abdelmonaim Remani
 
TAMING THE INFRASTRUCTURE GONE WILD
TAMING THE INFRASTRUCTURE  GONE WILDTAMING THE INFRASTRUCTURE  GONE WILD
TAMING THE INFRASTRUCTURE GONE WILD
 
TAMING THE INFRASTRUCTURE GONE WILD
TAMING THE INFRASTRUCTURE  GONE WILDTAMING THE INFRASTRUCTURE  GONE WILD
TAMING THE INFRASTRUCTURE GONE WILD
 
Container Orchestration Wars (2017 Edition)
Container Orchestration Wars (2017 Edition)Container Orchestration Wars (2017 Edition)
Container Orchestration Wars (2017 Edition)
 
War of Openstack Private Cloud Distribution
War of Openstack Private Cloud DistributionWar of Openstack Private Cloud Distribution
War of Openstack Private Cloud Distribution
 
Orchestrating Big Data pipelines @ Fandom - Krystian Mistrzak Thejas Murthy
Orchestrating Big Data pipelines @ Fandom - Krystian Mistrzak Thejas MurthyOrchestrating Big Data pipelines @ Fandom - Krystian Mistrzak Thejas Murthy
Orchestrating Big Data pipelines @ Fandom - Krystian Mistrzak Thejas Murthy
 
Performance Benchmarking of Clouds Evaluating OpenStack
Performance Benchmarking of Clouds                Evaluating OpenStackPerformance Benchmarking of Clouds                Evaluating OpenStack
Performance Benchmarking of Clouds Evaluating OpenStack
 
AWS Summit Kuala Lumpur - Opening Keynote by Dr. Werner Vogels
AWS Summit Kuala Lumpur - Opening Keynote by Dr. Werner VogelsAWS Summit Kuala Lumpur - Opening Keynote by Dr. Werner Vogels
AWS Summit Kuala Lumpur - Opening Keynote by Dr. Werner Vogels
 
Cloud Foundry Container Runtime (CFCR) & Production Kubernetes
Cloud Foundry Container Runtime (CFCR) & Production KubernetesCloud Foundry Container Runtime (CFCR) & Production Kubernetes
Cloud Foundry Container Runtime (CFCR) & Production Kubernetes
 
Enabling Lean IT with AWS by Carlos Condé at the Lean IT Summit 2014
Enabling Lean IT with AWS by Carlos Condé at the Lean IT Summit 2014Enabling Lean IT with AWS by Carlos Condé at the Lean IT Summit 2014
Enabling Lean IT with AWS by Carlos Condé at the Lean IT Summit 2014
 

Recently uploaded

WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024Lorenzo Miniero
 
ECS 2024 Teams Premium - Pretty Secure
ECS 2024   Teams Premium - Pretty SecureECS 2024   Teams Premium - Pretty Secure
ECS 2024 Teams Premium - Pretty SecureFemke de Vroome
 
Oauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftOauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftshyamraj55
 
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...FIDO Alliance
 
Structuring Teams and Portfolios for Success
Structuring Teams and Portfolios for SuccessStructuring Teams and Portfolios for Success
Structuring Teams and Portfolios for SuccessUXDXConf
 
ERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctBrainSell Technologies
 
AI mind or machine power point presentation
AI mind or machine power point presentationAI mind or machine power point presentation
AI mind or machine power point presentationyogeshlabana357357
 
PLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. StartupsPLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. StartupsStefano
 
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on ThanabotsContinuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on ThanabotsLeah Henrickson
 
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdfSimplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdfFIDO Alliance
 
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...CzechDreamin
 
How we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfHow we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfSrushith Repakula
 
WSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptxWSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptxJennifer Lim
 
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfWhere to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfFIDO Alliance
 
Easier, Faster, and More Powerful – Notes Document Properties Reimagined
Easier, Faster, and More Powerful – Notes Document Properties ReimaginedEasier, Faster, and More Powerful – Notes Document Properties Reimagined
Easier, Faster, and More Powerful – Notes Document Properties Reimaginedpanagenda
 
AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101vincent683379
 
Designing for Hardware Accessibility at Comcast
Designing for Hardware Accessibility at ComcastDesigning for Hardware Accessibility at Comcast
Designing for Hardware Accessibility at ComcastUXDXConf
 
WebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceWebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceSamy Fodil
 
A Business-Centric Approach to Design System Strategy
A Business-Centric Approach to Design System StrategyA Business-Centric Approach to Design System Strategy
A Business-Centric Approach to Design System StrategyUXDXConf
 
BT & Neo4j _ How Knowledge Graphs help BT deliver Digital Transformation.pptx
BT & Neo4j _ How Knowledge Graphs help BT deliver Digital Transformation.pptxBT & Neo4j _ How Knowledge Graphs help BT deliver Digital Transformation.pptx
BT & Neo4j _ How Knowledge Graphs help BT deliver Digital Transformation.pptxNeo4j
 

Recently uploaded (20)

WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024
 
ECS 2024 Teams Premium - Pretty Secure
ECS 2024   Teams Premium - Pretty SecureECS 2024   Teams Premium - Pretty Secure
ECS 2024 Teams Premium - Pretty Secure
 
Oauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoftOauth 2.0 Introduction and Flows with MuleSoft
Oauth 2.0 Introduction and Flows with MuleSoft
 
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
 
Structuring Teams and Portfolios for Success
Structuring Teams and Portfolios for SuccessStructuring Teams and Portfolios for Success
Structuring Teams and Portfolios for Success
 
ERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage Intacct
 
AI mind or machine power point presentation
AI mind or machine power point presentationAI mind or machine power point presentation
AI mind or machine power point presentation
 
PLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. StartupsPLAI - Acceleration Program for Generative A.I. Startups
PLAI - Acceleration Program for Generative A.I. Startups
 
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on ThanabotsContinuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
 
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdfSimplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
Simplified FDO Manufacturing Flow with TPMs _ Liam at Infineon.pdf
 
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
Integrating Telephony Systems with Salesforce: Insights and Considerations, B...
 
How we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfHow we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdf
 
WSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptxWSO2CONMay2024OpenSourceConferenceDebrief.pptx
WSO2CONMay2024OpenSourceConferenceDebrief.pptx
 
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfWhere to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
 
Easier, Faster, and More Powerful – Notes Document Properties Reimagined
Easier, Faster, and More Powerful – Notes Document Properties ReimaginedEasier, Faster, and More Powerful – Notes Document Properties Reimagined
Easier, Faster, and More Powerful – Notes Document Properties Reimagined
 
AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101AI presentation and introduction - Retrieval Augmented Generation RAG 101
AI presentation and introduction - Retrieval Augmented Generation RAG 101
 
Designing for Hardware Accessibility at Comcast
Designing for Hardware Accessibility at ComcastDesigning for Hardware Accessibility at Comcast
Designing for Hardware Accessibility at Comcast
 
WebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM PerformanceWebAssembly is Key to Better LLM Performance
WebAssembly is Key to Better LLM Performance
 
A Business-Centric Approach to Design System Strategy
A Business-Centric Approach to Design System StrategyA Business-Centric Approach to Design System Strategy
A Business-Centric Approach to Design System Strategy
 
BT & Neo4j _ How Knowledge Graphs help BT deliver Digital Transformation.pptx
BT & Neo4j _ How Knowledge Graphs help BT deliver Digital Transformation.pptxBT & Neo4j _ How Knowledge Graphs help BT deliver Digital Transformation.pptx
BT & Neo4j _ How Knowledge Graphs help BT deliver Digital Transformation.pptx
 

Crossing the Streams Mesos &lt;> Kubernetes

  • 1. CROSSING THECROSSING THE STREAMSSTREAMS MESO S <> KUBERNETESMESO S <> KUBERNETES Timothy St. Clair #MESOSCON @timothysc
  • 2. OVERVIEWOVERVIEW BRIEF HISTORY OF CLUSTERBRIEF HISTORY OF CLUSTER MANAGE MENTMANAGE MENT WHAT IS KUBERNETES?WHAT IS KUBERNETES? MES OS AND THE MODERNMES OS AND THE MODERN DATACENTERDATACENTER CROSSING THE STREAMSCROSSING THE STREAMS MES OS <> KUBERNETESMES OS <> KUBERNETES
  • 3. BRIEF HISTORY OF CLUSTERBRIEF HISTORY OF CLUSTER MANAGEMENTMANAGEMENT "The good ideas of today, often mimic the good ideas of the past."
  • 4. STEP BACK TO THE 80'SSTEP BACK TO THE 80'S & 90'S& 90'S [Ghostbusters] ~1984
  • 5. BEFORE "CONTAINERBEFORE "CONTAINER ORCHESTRATION"ORCHESTRATION" BEFORE IAAS/"CLOUD"BEFORE IAAS/"CLOUD" THERE WAS THE GRIDTHERE WAS THE GRID In the 1990s, inspired by the availability of high-speed wide area networks and challenged by the computational requirements of new applications, researchers began to imagine a computing infrastructure that would “provide access to computing on demand” (COD) and permit “flexible, secure, coordinated resource sharing among dynamic collections of individuals, institutions, and resources” [The History of the Grid] ~Ian Foster, Carl Kesselman
  • 6. GRID DRIVERSGRID DRIVERS LARGE SCALE SCIENTIFIC COMPUTING (E.G.LARGE SCALE SCIENTIFIC COMPUTING (E.G. LHCLHC )) DESIRE TO HAVE FEDERATED COMPUTING AT HUNDREDS OFDESIRE TO HAVE FEDERATED COMPUTING AT HUNDREDS OF SITES IN ORDER TO ANALYZE PETABYTES OF DATA. "SOUNDSSITES IN ORDER TO ANALYZE PETABYTES OF DATA. "SOUNDS LIKE: BIG DATA"LIKE: BIG DATA" GOAL IS THROUGHPUTGOAL IS THROUGHPUT PLEASINGLY PARALLEL ALGORITHMSPLEASINGLY PARALLEL ALGORITHMS LOTS OF ENORMOUS WORKFLOWS (DAGS)LOTS OF ENORMOUS WORKFLOWS (DAGS) HTTP://HOME.WEB.CERN.CH/ABOUT/COMPUTINGHTTP://HOME.WEB.CERN.CH/ABOUT/COMPUTING
  • 7. GRID DRIVERS (CONT)GRID DRIVERS (CONT) ANALOGOUS TO UTILITIES OF THE TIME, BUT FOR ON DEMANDANALOGOUS TO UTILITIES OF THE TIME, BUT FOR ON DEMAND COMPUTE POWERCOMPUTE POWER HETEROGENOUS DISTRIBUTED RESOURCE MANAGEMENTHETEROGENOUS DISTRIBUTED RESOURCE MANAGEMENT INFRASTRUCTURESINFRASTRUCTURES MULTI-TENANTMULTI-TENANT INDEPENT SECURITY MODELSINDEPENT SECURITY MODELS ** MANY SYSTEMS WORKING TOGETHER (GLOBUS, HADOOP,** MANY SYSTEMS WORKING TOGETHER (GLOBUS, HADOOP, CONDOR, SGE ...CONDOR, SGE ... SOPHISTICATED MATCHMAKING DUE TO THE HETEROGENOUSSOPHISTICATED MATCHMAKING DUE TO THE HETEROGENOUS NATURE OF THE GRIDNATURE OF THE GRID
  • 8. GRID OPERATIONSGRID OPERATIONS 1. PROVISION RESOURCESPROVISION RESOURCES 2. PUBLISH, OR ADVERTISEPUBLISH, OR ADVERTISE RESOURCE AVAIL ABILITYRESOURCE AVAIL ABILITY 3. ASSEMBLE RESOURCES INTO AASSEMBLE RESOURCES INTO A OPERATIONAL GRID/POOLOPERATIONAL GRID/POOL 4. CON SUME RESOURCES ACROSS ACON SUME RESOURCES ACROSS A VARIETY OF APPLICATIONSVARIETY OF APPLICATIONS
  • 9. LESSONS LEARNEDLESSONS LEARNED NOT EVERYTHING IS A "JOB", HA-MICRO-SERVICES...NOT EVERYTHING IS A "JOB", HA-MICRO-SERVICES... ** NEEDS MORE COMPOSABILITY **** NEEDS MORE COMPOSABILITY ** MANY SYSTEMS DOING SIMILAR THINGS (SGE, LSF, PBS, CONDOR,MANY SYSTEMS DOING SIMILAR THINGS (SGE, LSF, PBS, CONDOR, MESOS, KUBERNETES, SWARM)MESOS, KUBERNETES, SWARM) PROVISION RESOURCESPROVISION RESOURCES PUBLISH, OR ADVERTISE RESOURCE AVAILABILITYPUBLISH, OR ADVERTISE RESOURCE AVAILABILITY ASSEMBLE RESOURCES INTO A OPERATIONAL GRID/POOLASSEMBLE RESOURCES INTO A OPERATIONAL GRID/POOL CONSUME RESOURCES ACROSS A VARIETY OF APPLICATIONSCONSUME RESOURCES ACROSS A VARIETY OF APPLICATIONS HETEROGENEOUS COMPUTING PLATFORMS IS HARDHETEROGENEOUS COMPUTING PLATFORMS IS HARD HARDWARE DIVERSITY (SUN, X86, ITANIUM, POWERPC)HARDWARE DIVERSITY (SUN, X86, ITANIUM, POWERPC) ASSORTED HW-SPECIALIZATIONSASSORTED HW-SPECIALIZATIONS OS DIVERSITY (SOLARIS, WINDOWS, LINUX, HPUX, AIX ...)OS DIVERSITY (SOLARIS, WINDOWS, LINUX, HPUX, AIX ...) INSTALLED STACK DIVERSITY (LIBRARIES, LANGUAGES)INSTALLED STACK DIVERSITY (LIBRARIES, LANGUAGES)
  • 10. LESSONS LEARNED (CONT)LESSONS LEARNED (CONT) MATCHING (HW+OS+SW) CAN BE GRIZZLY BEARMATCHING (HW+OS+SW) CAN BE GRIZZLY BEAR CONTAINERS SOLVES SOME OF THIS...CONTAINERS SOLVES SOME OF THIS... Software people often say “we eliminated a whole class of problems” when they mean “we chose tradeoffs that make you solve them elsewhere.” ~ William Benton​​ FLAT L3 NETWORKING IS A PITA (PORT MANGLING)FLAT L3 NETWORKING IS A PITA (PORT MANGLING) NAT-ING SHOULD BE CONFIGURABLENAT-ING SHOULD BE CONFIGURABLE NEEDS MORE FLEXIBILITY (CREATE YOUR OWN SCHEDULER)NEEDS MORE FLEXIBILITY (CREATE YOUR OWN SCHEDULER) EXPRESSIVENESS CAN BE GOOD... WHEN MANAGED, OTHERWISE IT CANEXPRESSIVENESS CAN BE GOOD... WHEN MANAGED, OTHERWISE IT CAN BECOME OBTUSEBECOME OBTUSE /* now modif y routed job attributes */ /* remove routed job if it goes on hold or stays idle for over 6 hours */ set_PeriodicRemove = JobStatus == 5 || (JobStatus == 1 && (CurrentTime - QDate) > 3600*6); delete_WantJobRouter = true; set_requirements = true;
  • 11. FAST FORWARD TO 2015FAST FORWARD TO 2015 [Back to the Future Part 3]
  • 12. WHAT IS KUBERNETES?WHAT IS KUBERNETES? The Greek word “kubernetes,” means “helmsman of a ship,” or, more metaphorically, “ruler.”
  • 13. WHAT IS KUBERNETES?WHAT IS KUBERNETES? "Kubernetes is an open source orchestration system for containers. It handles scheduling onto nodes in a compute cluster and actively manages workloads to ensure that their state matches the users declared intentions."
  • 14. KUBERNETES?KUBERNETES? 'KUBERNETES IS AN OPEN SOURCE'KUBERNETES IS AN OPEN SOURCE "ORCHESTRATION SYSTEM""ORCHESTRATION SYSTEM" FOR CONTAINERS. ITFOR CONTAINERS. IT Kubernetes is an open source derivative work, based on Google's internal BORG infrastruct It manages containerized applications across multiple hosts, providing basic mechanisms fo Kubernetes establishes a set of robust declarative primitives for maintaining the desired
  • 15. KUBERNETES?KUBERNETES? KUBERNETES IS DECL ARATIVEKUBERNETES IS DECL ARATIVE apiVersion: v1 kind: ReplicationController metadata: name: redis-slave labels: name: redis-slave spec: replicas: 2 ... ALSO IMPARATIVE, THE API ALLOWS YOU TO WRITE INTROSPECTIVE SERVICES, OR CONTROLLER, ATOP OF IT. ITS POSSIBLE TO WRITE ELASTIC CONTROLLERS (THINK YARN)
  • 17. CORE CONCEPTSCORE CONCEPTS PODSPODS PODS ARE THE ATOM OF SCHEDULING, AND ARE A GROUP OFPODS ARE THE ATOM OF SCHEDULING, AND ARE A GROUP OF CONTAINERS THAT ARE SCHEDULED ONTO THE SAME HOST.CONTAINERS THAT ARE SCHEDULED ONTO THE SAME HOST. "COSCHEDULING""COSCHEDULING" PODS FACILITATE DATA SHARING AND COMMUNICATION BETWEENPODS FACILITATE DATA SHARING AND COMMUNICATION BETWEEN CONTAINERS WITHIN THE PODCONTAINERS WITHIN THE POD SHARED MOUNT POINTSHARED MOUNT POINT SHARED NETWORK NAMESPACE/IP AND PORT SPACESHARED NETWORK NAMESPACE/IP AND PORT SPACE HIGHER ORDER ABSTRACTION THEN CONTAINERSHIGHER ORDER ABSTRACTION THEN CONTAINERS COMPOSABLE MICRO-SERVICESCOMPOSABLE MICRO-SERVICES
  • 18. CORE CONCEPTS (CONT)CORE CONCEPTS (CONT) CONTROLLERSCONTROLLERS EVENTUAL CONSISTENCY IS MAINTAINED BY SEPARATEEVENTUAL CONSISTENCY IS MAINTAINED BY SEPARATE CONTROLLERS. EACH CONTROLLERS PURPOSE IS TO RECTIFY ANYCONTROLLERS. EACH CONTROLLERS PURPOSE IS TO RECTIFY ANY DISCREPANCY BETWEEN THE DECLARED STATE OF A PRIMITIVE,DISCREPANCY BETWEEN THE DECLARED STATE OF A PRIMITIVE, WITH THE CURRENT STATE OF THE SYSTEMWITH THE CURRENT STATE OF THE SYSTEM nodes apiserver schedulercontroller kind: ReplicationController ... spec: replicas: 2
  • 19. CORE CONCEPTS (CONT)CORE CONCEPTS (CONT) SERVICES*SERVICES* SERVICES PROVIDE A SINGLE, STABLE NAME AND ADDRESS FOR ASERVICES PROVIDE A SINGLE, STABLE NAME AND ADDRESS FOR A SET OF PODS. THEY TYPICALLY ACT AS BASIC LOAD BALANCEDSET OF PODS. THEY TYPICALLY ACT AS BASIC LOAD BALANCED PROXY ENDPOINT. (NON-COLLIDING-NAT)PROXY ENDPOINT. (NON-COLLIDING-NAT) CLOUD BASED IMPLEMENTATIONS HAVE NATIVE SUPPORT FORCLOUD BASED IMPLEMENTATIONS HAVE NATIVE SUPPORT FOR CREATING EXTERNAL LOAD BALANCERS.CREATING EXTERNAL LOAD BALANCERS. PROVIDES A CONSTRUCT WHICH IS USED TO LOOKUP, NAME, ANDPROVIDES A CONSTRUCT WHICH IS USED TO LOOKUP, NAME, AND LINK PODS (INJECTION)LINK PODS (INJECTION) Load Balancer PodPod External/Internal Service or user
  • 21. CORE CONCEPTS (CONT)CORE CONCEPTS (CONT) LABELSLABELS Labels are key/value pairs associated with pods or nodes. Labels enable operators to map their own structures onto objects in a loosely coupled fashion.​ =, !=, in, notin "labels": { "release" : "stable", "environment" : "production" }
  • 24. USE CASESUSE CASES 1.0 PRIMARY USE CASE:1.0 PRIMARY USE CASE: CONTAINER ORCHESTRATION FOR CLOUD-NATIVECONTAINER ORCHESTRATION FOR CLOUD-NATIVE APPLICATIONS.APPLICATIONS. AN ENGINE FOR BUILDING FULLY FEATURES PAASAN ENGINE FOR BUILDING FULLY FEATURES PAAS SYSTEMS ATOP.SYSTEMS ATOP. OpenShift adds developer and operational centric tools on top of Kubernetes to enable rapid application development, easy deployment and scaling, and long-term lifecycle maintenance for small and large teams and applications
  • 25. STATUSSTATUS 1.0+ EXISTS FOR AVAIL ABILITY1.0+ EXISTS FOR AVAIL ABILITY (GCE, ATOMIC, ETC.)(GCE, ATOMIC, ETC.) MESO S F RAMEWOR K I S I N THEMESO S F RAMEWOR K I S I N THE MAIN R E PO, AND SUPPORTED !!!MAIN R E PO, AND SUPPORTED !!! K8S FORMALLY GIVEN TO THEK8S FORMALLY GIVEN TO THE CNCFCNCF GOOGLECLOUD->KUBERNETES ONGOOGLECLOUD->KUBERNETES ON GITHUBGITHUB
  • 26. MESOS AND THE MODERNMESOS AND THE MODERN DATA CENTERDATA CENTER
  • 27. NEW DATACENTER (CONT)NEW DATACENTER (CONT) CHARACTERISTICS:CHARACTERISTICS: SHARED INFRASTRUCTURE VS. SILO(S)SHARED INFRASTRUCTURE VS. SILO(S) MULTI-TENANTMULTI-TENANT MULTIPLE ELASTIC WORKLOADSMULTIPLE ELASTIC WORKLOADS ANALYTICS + STREAMING + PAASANALYTICS + STREAMING + PAAS PAAS (COMPOSABLE MICRO-SERVICES)PAAS (COMPOSABLE MICRO-SERVICES) QOS (TIERS OF SERVICE)QOS (TIERS OF SERVICE) FAIRNESS | QUOTAFAIRNESS | QUOTA MANY NETWORKS, SDNMANY NETWORKS, SDN LAYERS AND LAYERS OF SECURELAYERS AND LAYERS OF SECURE
  • 28. ONLINEONLINE NEARLINENEARLINE OFFLINEOFFLINE BATCH PROCESSING:BATCH PROCESSING: Machine Learning, Modeling, Data Analysis, ETL, etc. STREAM + PAASSTREAM + PAAS Traditional services: Databases, Stream Processing CLOUD-NATIVE / PAASCLOUD-NATIVE / PAAS UI Clients, Web Framework Dejour, Event dispatching http://techblog.netflix.com/2013/03/system-architectures-for.html OPERATIONALOPERATIONAL PERSPECTIVEPERSPECTIVE
  • 29. Traditional Batch Streaming PaaS ANALYTICS +ANALYTICS + STREAMINGSTREAMING PAASPAAS STACK PERSPECTIVESTACK PERSPECTIVE
  • 30. CROSSING THE STREAMSCROSSING THE STREAMS MESO S <> KUBERNETESMESO S <> KUBERNETES DISCLAIMER: I'M NOT A NETWORKING GURU
  • 31.
  • 32. STEP 1: DEVISE A PLANSTEP 1: DEVISE A PLAN DRAW OUT YOUR CORE SERVICES FOR YOUR DATA CENTERDRAW OUT YOUR CORE SERVICES FOR YOUR DATA CENTER DETERMINE EXTERNAL VISIBILITYDETERMINE EXTERNAL VISIBILITY AIR-GAPING | RESOLUTION VISIBILITY | INGRESS &AIR-GAPING | RESOLUTION VISIBILITY | INGRESS & EGRESSEGRESS NETWORK ACCESSABILITY TO YOUR OTHERNETWORK ACCESSABILITY TO YOUR OTHER FRAMEWORKSFRAMEWORKS RESOLUTION (MESOS-DNS)RESOLUTION (MESOS-DNS) TRY TO NOT RELY ON DNS, PREFER DISCOVERY SERVICESTRY TO NOT RELY ON DNS, PREFER DISCOVERY SERVICES IF AT ALL POSSIBLE, OR WELL DEFINED VIPS FOR PRIMARYIF AT ALL POSSIBLE, OR WELL DEFINED VIPS FOR PRIMARY CORE SERVICES.CORE SERVICES. VIPS DON'T SCALEVIPS DON'T SCALE PLAN YOUR OVERLAY NETWORKPLAN YOUR OVERLAY NETWORK TRY TO SEPARATE NETWORKS TO MAINTAIN SOME LEVELTRY TO SEPARATE NETWORKS TO MAINTAIN SOME LEVEL OF QOSOF QOS
  • 33.
  • 34. EXPOSING K8S SERVICESEXPOSING K8S SERVICES { ... "ports": [ { "protocol": "TCP", "port": 80, "targetPort": 9376, "nodePort": 30061 } ], ... "type": "LoadBalancer" }, "status": { "loadBalancer": { "ingress": [ { "ip": "146.148.47.155" } ... } nodePort: the Kubernetes master will allocate a port from a flag-configured range (default: 30000-32767), and each Node will proxy that port (the same port number on every Node) into your Service. type: LoadBalancer - On cloud providers which support external load balancers, setting the type field to "LoadBalancer" will provision a load balancer for your Service. https://github.com/kubernetes/kubernetes/bl ob/master/docs/user-guide/services.md
  • 35. PLAN FOR CONSTRAINTSPLAN FOR CONSTRAINTS DEALING WITH LEGACY SYSTEMSDEALING WITH LEGACY SYSTEMS DNSDNS MANY LEGACY SYSTEMS DEPEND ON DNS FOR BETTER ORMANY LEGACY SYSTEMS DEPEND ON DNS FOR BETTER OR FOR WORSEFOR WORSE NAMESPACING (ENG,PROD) AND MULTI-TENANCYNAMESPACING (ENG,PROD) AND MULTI-TENANCY IN A MULTI-TENANT ENVIRONMENT YOU COULD HAVE 10IN A MULTI-TENANT ENVIRONMENT YOU COULD HAVE 10 COPIES OF THE SAME SERVICE AND THAT SHOULD BE OK.COPIES OF THE SAME SERVICE AND THAT SHOULD BE OK. REVERSE DNS - (NAT FAILURE)REVERSE DNS - (NAT FAILURE) DB1 DB1 DB1 DB1 ......
  • 36. CONSTRAINTSCONSTRAINTS NETWORK TOPOLOGYNETWORK TOPOLOGY VLANSVLANS QOS ACROSS NETWORKSQOS ACROSS NETWORKS OVERLAY NETWORKSOVERLAY NETWORKS VXLAN OFFLOADINGVXLAN OFFLOADING $1500 -> $500$1500 -> $500 COLLISION AVOIDANCE (IP STEALING)COLLISION AVOIDANCE (IP STEALING) VIPSVIPS LOAD-BALANCERS NATINGLOAD-BALANCERS NATING
  • 37. STEP 2: CREATE A TESTSTEP 2: CREATE A TEST EXPERIMENTEXPERIMENT FIND YOUR HAPPY PLACE AND SAFE PLACEFIND YOUR HAPPY PLACE AND SAFE PLACE HAVE A SANDBOX WHERE YOU CAN PLAY WITH SERVICESHAVE A SANDBOX WHERE YOU CAN PLAY WITH SERVICES TEST SETTING UP SEPARATE NETWORKS FOR DIFFERENT SERVICESTEST SETTING UP SEPARATE NETWORKS FOR DIFFERENT SERVICES CONSIDER CLUSTERS TO BE EPHEMERALCONSIDER CLUSTERS TO BE EPHEMERAL IT ACTUALLY MAKES LIFE EASIERIT ACTUALLY MAKES LIFE EASIER 1 PAAS -> MANY PAAS-ES-S1 PAAS -> MANY PAAS-ES-S TRY REACHING ACROSS NETWORKSTRY REACHING ACROSS NETWORKS SETUP DIFFERENT LOAD-BALANCING SERVICESSETUP DIFFERENT LOAD-BALANCING SERVICES DETERMINE IF VIPS MAKES SENSE FOR YOU AT YOUR SCALEDETERMINE IF VIPS MAKES SENSE FOR YOU AT YOUR SCALE
  • 38. STEP 3: BURN YOURSTEP 3: BURN YOUR ORIGINAL PLANORIGINAL PLAN ONLY 1/2 JOKING, YOU WILL LIKELY RUN INTO ISSUESONLY 1/2 JOKING, YOU WILL LIKELY RUN INTO ISSUES YOU NEVER KNEW EXISTED. CONSULT YOUR LOCALYOU NEVER KNEW EXISTED. CONSULT YOUR LOCAL NETWORK OPERATORNETWORK OPERATOR
  • 39. ENJOY THE JOURNEYENJOY THE JOURNEY [Ghostbusters] ~1984 IT MAY GET A LITTLE MESSY, BUT IT'S WORTH ITIT MAY GET A LITTLE MESSY, BUT IT'S WORTH IT