Slide 1

Slide 1 text

Container Standards & Kubernetes IanMLewis@

Slide 2

Slide 2 text

Component A Component B

Slide 3

Slide 3 text

Component A Component B API

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

Key Takeaways ● Docker (Docker CE, containerd, whatever) != containers ● Containers are just another tech. They need standards. ● With clusters, containers are (mostly) irrelevant.

Slide 6

Slide 6 text

No content

Slide 7

Slide 7 text

OS API int * array = malloc(10 * sizeof(int)); if (array == NULL) { fprintf(stderr, "malloc failed\n"); return(-1); }

Slide 8

Slide 8 text

100 MB 1 Core eth0 500 MB 2 Core eth0 eth1 50 MB 1 Core eth0 eth1 eth2

Slide 9

Slide 9 text

eth0 eth1 eth2 100 MB 1 Core 500 MB 2 Core eth0 eth1 50 MB 1 Core Process 1 Process 2 Process 3 Process 4 Process 5

Slide 10

Slide 10 text

No content

Slide 11

Slide 11 text

Use Cases ● Build tools ● Image registries ● Testing/Security tools ● CI/CD tools ● Container orchestrators

Slide 12

Slide 12 text

No content

Slide 13

Slide 13 text

OCI ● runtime-spec ● image-spec

Slide 14

Slide 14 text

runtime-spec ● How to run a container from a “filesystem bundle” ● runc ...basically

Slide 15

Slide 15 text

image-spec ● File format for container images ● How to unpack into a “filesystem bundle”

Slide 16

Slide 16 text

image-spec ● File format for container images ● How to unpack into a “filesystem bundle”

Slide 17

Slide 17 text

Clusters ● Cluster level APIs for containers ● Allow you to deploy containers across many machines

Slide 18

Slide 18 text

No content

Slide 19

Slide 19 text

Container Runtime Interface ● Interface between container runtimes and Kubernetes ● Developed so runtimes could easily integrate with Kubernetes

Slide 20

Slide 20 text

No content

Slide 21

Slide 21 text

Kubelet ocid Container Container Container 。。。

Slide 22

Slide 22 text

Kubelet ocid Container Container Container 。。。 CRI OCI

Slide 23

Slide 23 text

Kubelet rkt Container Container Container 。。。 CRI

Slide 24

Slide 24 text

Kubelet containerd Container Container Container 。。。 CRI

Slide 25

Slide 25 text

Kubelet ocid Container Container Container 。。。 CRI OCI

Slide 26

Slide 26 text

Clusters ● Cluster level APIs for containers ● APIs don’t change depending on the runtime

Slide 27

Slide 27 text

API Container Cluster

Slide 28

Slide 28 text

Benefits ● Interoperability

Slide 29

Slide 29 text

Thanks!