Orchestrate your Containers in the Cloud with Kubernetes

A buzzword heavy talk about the emergent system admin tech

The speaker

Note

Name: Elijah C. Voigt Occupation: Student, Documentarian at CoreOS Qualifications: Documented the shit aout of this.

Name: Elijah C. Voigt.

Website: http://elijahcaine.me

Qualifications to talk about this topic:

diff --git a/kubernetes.github.io b/kubernetes.github.io
+ 288
- 261

Expert? Eh. Excited? HeckYes.gif

Overview

Cluster
+------------------------------------------------------+
| [Kubelet0] (node)                   [Master] (node)  |
| +-------------+--------------+   +-----------------+ |
| |             |              |   |                 | |
| | MyAppV2     | OtherApp     |   |                 | |
| +----------------------------+  ++Kubernetes Daemon<-+--+
| | Container   | Container2   |  ||-----------------+ +  |
| +-----------+-+--------------+  ||Linux            | |  |
| | Container | Kubernetes     |  |+-----------------+ |  |
| | Runtime   | Daemon         <--+                    |  |
| +-----------+----------------+ +---------------------+  |
| | Linux                      | |   [Your Computer]      |
| +----------------------------+ |   +------------------+ |
+--------------------------------+   |                  | |
                                     |Kubectl           +-+
                                     +------------------+
                                     |Linux             |
                                     +------------------+

Note

Kubernetes is a piece of Cloud Orchestration Software. The ultimate goal of orchestration software is to give system administrators the ability to treat their entire data center as one big computer. This is a crude diagram of how requests travel throgh Kubernetes. It captures the three core components: the clien (you) the kubernetes master node, and the kubelet.

Containers

rkt logo Docker logo

Note

Containers are an impelementation of Operating System level virtualization, a better way to think about them is a sandbox which contains an applications dependencies, including the OS required to run that app (designed for ubuntu, runnable on centos). Limitation: cannot run a linux container on OSX, requires kernel parody.

Kubernetes

Kubernetes logo

Note

Kubernetes is a container orchestrator. Just like Linux scheules computation time on the CPU, Kubernetes schedules applications to run on shared nodes, and handles most of the legwork involved in that process.

Demo

Follow along!

Note

Deploy a simple application from scratch. Upgrade the application. Expose the application over the net. Kill the application.