artifact Develop here, run there Pick your cloud solely on its merits Loosely coupled = easier to build and manage Easier to build and manage Compose applications from micro-services Packaging
• Predictability • Quality of service • Efficient overcommit • Resource accounting Google starts over 2 billion containers per week. Images by Connie Zhou Efficiency
of projects built on top of Docker ◦ UIs, mini-PaaS, … ◦ github.com/google/cadvisor ◦ github.com/GoogleCloudPlatform/heapster " Very popular GitHub project ◦ Most popular Go project of all time ◦ $ docker run -‐i -‐t ubuntu /bin/bash -‐p 80:80
modular framework for container-based service app management • Patterned after internal systems in Google that manage internet-scale workloads • Written in Go github.com/GoogleCloudPlatform/kubernetes
or more minions. - Minion: a slave that runs tasks as delegated by the user and Kubernetes master. - Pod: an application that runs on a minion. - Replication controller: Verifies everything that should be running is running. - Label: an arbitrary key/value pair that the Replication Controller uses for service discovery - kubecfg: the config tool - Service: an amalgamation of similar pods
BE BE BE BE BE BE BE BE Machine Host Machine Host Machine Host Machine Host Machine Host Machine Host Machine Host Container Agent Container Agent Container Agent Container Agent Container Agent Container Agent Container Agent Kubernetes - Master/Scheduler Labels
Host Machine Host Machine Host Machine Host Machine Host Container Agent Container Agent Container Agent Container Agent Container Agent Container Agent Container Agent Kubernetes - Master/Scheduler FE FE FE FE FE FE BE BE BE BE BE BE BE BE BE Labels