kubernetes - inovex gmbh · kubernetes an open platform for container orchestration johannes m....
TRANSCRIPT
![Page 1: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/1.jpg)
KubernetesAn open platform for container orchestration
Johannes M. Scheuermann
Karlsruhe, 30.08.2017
![Page 2: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/2.jpg)
Johannes M. ScheuermannCloud Platform Engineer @ inovex
〉 Software-Defined Datacenters
〉 Infrastructure as Code
〉 Cloud technologies
〉 High Availability & Scalability
〉 @johscheuer
2
![Page 3: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/3.jpg)
How to manage millions of containers/machines?
![Page 4: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/4.jpg)
• cgroups and namespaces
• Application package management
• (nearly) Platform independent
• Resource separation
• Resource monitoring
“Containers”
![Page 5: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/5.jpg)
![Page 6: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/6.jpg)
• Unified container-management Borg• Before: Babysitter + Global Work Queue
• Autopilot • predicting resource requirements
• Omega• Splitting parts of the control plane
• Multiple Schedulers
“History”
![Page 7: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/7.jpg)
Architecture
![Page 8: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/8.jpg)
Store
Architecture
Master
API Controller-Manager Scheduler etcd
Node
Kubelet
Kube-proxy
Node
Kubelet
Kube-proxy
Node
Kubelet
Kube-proxy
![Page 9: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/9.jpg)
• Portable
• General-Purpose
• Flexible
• Extensible
• Automatable
Design Goals
![Page 10: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/10.jpg)
Principals
![Page 11: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/11.jpg)
Pods
Shared Resources
Container Container Container
Process
Resources
Ports
Process
Resources
Ports
Process
Resources
Ports
![Page 12: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/12.jpg)
Deployments
Deployment
ReplicaSetr1
Pod
Pod
Pod
![Page 13: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/13.jpg)
Deployments
Deployment
ReplicaSetr1
ReplicaSetr2
Pod
Pod
Pod
![Page 14: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/14.jpg)
Deployments
Deployment
ReplicaSetr1
ReplicaSetr2
Pod
Pod
Pod
Pod
![Page 15: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/15.jpg)
Deployments
Deployment
ReplicaSetr1
ReplicaSetr2
Pod
Pod
Pod
Pod
![Page 16: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/16.jpg)
Deployments
Deployment
ReplicaSetr1
ReplicaSetr2
Pod
Pod
Pod
Pod
![Page 17: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/17.jpg)
Deployments
Deployment
ReplicaSetr1
ReplicaSetr2
Pod
Pod
Pod
![Page 18: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/18.jpg)
• Simple Key-Value pairs
• Can be attached to anything
• LabelSelectors used for selection
• Can be used for scheduling choices
• Extremely simple and mighty
The magic glue - Labels
![Page 19: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/19.jpg)
Services
ServiceStudentPod x
Pod 1app:Student,v:1
Pod 2app:Student,v:1
Pod 3app:Student,v:1
Pod 4app:Student,v:2
![Page 20: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/20.jpg)
Persistent Volumes
Admin
User
Persistent Volumes
31 2 4
PVClaim 2
Pod
StorageClass
![Page 21: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/21.jpg)
• Namespaces
• StatefulSet
• DaemonSet
• Batch/Scheduled Jobs
• Ingress
• ...
Further principals
![Page 22: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/22.jpg)
An open platform
![Page 23: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/23.jpg)
• Complete communication over API’s
• Well defined API’s
• gRPC
• Extensible platform• Custom Resource Definitions
• Custom Schedulers
• API aggregation layer
API driven
![Page 24: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/24.jpg)
Built on standards (plugins)
Kubernetes
CRI
CNI
CSI
![Page 25: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/25.jpg)
• Flexible infrastructure as building block
• Cluster add-ons• Logging / DNS / Monitoring
• Spark on Kubernetes
• Everything deployed as containers
• Service Mesh on top• https://istio.io / https://linkerd.io
Core Infrastructure
![Page 26: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/26.jpg)
Cloud-vendor neutral
![Page 27: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/27.jpg)
• No dependency to any cloud provider• Doesn’t care if running on bare-metal or in the cloud
• Cloud provider will be moved out-of-tree
• Kubernetes can make use of the underlying
infrastructure
• Basically needs only an OS that runs containers• Linux and Windows support (arm/amd64)
Platform independent
![Page 28: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/28.jpg)
Outlook
![Page 29: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/29.jpg)
• Manage multiple Kubernetes clusters
• One federated control plane• On-premise or multi-cloud
• Running global services
• Some known issues
• High Availability
• Challenge -> Storage
Kubernetes Federation
![Page 30: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/30.jpg)
• Focus on security and stability
• Allowing more customization
• Improve cluster federation
• Kubernetes and Big Data
Kubernetes 1.8+
![Page 31: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/31.jpg)
Conclusions
![Page 32: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/32.jpg)
• Open platform (OSS)
• Can be used to run simulations/tests• Is used in some academic fields
• e.g. https://lasp-lang.readme.io
• Can be extended for special needs
• Growing eco-system
Conclusions
![Page 33: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/33.jpg)
33
We are hiring!
www.inovexperts.com
![Page 34: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/34.jpg)
Q&A
![Page 35: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/35.jpg)
https://research.google.com/pubs/pub44843.html
http://queue.acm.org/detail.cfm?id=2898444
https://research.google.com/pubs/pub41684.html
https://speakerdeck.com/thockin/kubernetes-
understanding-pods-vs-containers
https://kubernetes.io/docs/concepts/api-
extension/custom-resources
Further reading
![Page 36: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/36.jpg)
https://www.opencontainers.org/about
https://containerd.io
https://github.com/kubernetes/community/blob/master/c
ontributors/devel/container-runtime-interface.md
https://docs.microsoft.com/en-us/azure/container-
service/kubernetes/container-service-kubernetes-
windows-walkthrough
Further reading
![Page 37: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/37.jpg)
https://research.google.com/pubs/pub45499.html
https://github.com/kubernetes/kubernetes/issues/38893
https://docs.google.com/spreadsheets/d/1AFksRDgAt6B
GA3OjRNIiO3IyKmA-GU7CXaxbihy48ns/edit#gid=0
https://github.com/apache-spark-on-k8s
https://github.com/kubernetes-incubator
Further reading
![Page 38: Kubernetes - inovex GmbH · Kubernetes An open platform for container orchestration Johannes M. Scheuermann Karlsruhe, 30.08.2017](https://reader031.vdocument.in/reader031/viewer/2022022610/5b94d9e509d3f2a65f8de5fb/html5/thumbnails/38.jpg)
Johannes M. Scheuermanninovex GmbH
CC BY-NC-ND inovex.de +JohannesScheuermann
github.com/johscheuer
@johscheuer youtube.com/inovexGmbH