Slide 1

Slide 1 text

© 2020, Amazon Web Services, Inc. or its Affiliates. Eddie Zaneski Senior Developer Advocate @AWS @eddiezane Kubernetes The Operating System for the Cloud

Slide 2

Slide 2 text

© 2020, Amazon Web Services, Inc. or its Affiliates. Your Experience 0: You are not using Kubernetes and don’t plan to 1: You are just starting on your Kubernetes journey . . . 5: You have been running Kubernetes in production for a few years

Slide 3

Slide 3 text

© 2020, Amazon Web Services, Inc. or its Affiliates. Agenda • Kubernetes -- what are you? • A short story • Advice on embarking

Slide 4

Slide 4 text

© 2020, Amazon Web Services, Inc. or its Affiliates. What is a container?

Slide 5

Slide 5 text

© 2020, Amazon Web Services, Inc. or its Affiliates. What is a container? “A container is a standard unit of software that packages up code and all its dependencies so the application runs quickly and reliably from one computing environment to another.” – Docker https://www.docker.com/resources/what-container

Slide 6

Slide 6 text

© 2020, Amazon Web Services, Inc. or its Affiliates. What is a container? “A container is a standard unit of software that packages up code and all its dependencies so the application runs quickly and reliably from one computing environment to another.” – Docker https://www.docker.com/resources/what-container

Slide 7

Slide 7 text

© 2020, Amazon Web Services, Inc. or its Affiliates. Container Evolution https://kubernetes.io/docs/concepts/overview/what-is-kubernetes/

Slide 8

Slide 8 text

© 2020, Amazon Web Services, Inc. or its Affiliates. Container Evolution https://kubernetes.io/docs/concepts/overview/what-is-kubernetes/

Slide 9

Slide 9 text

© 2020, Amazon Web Services, Inc. or its Affiliates. Container Evolution https://kubernetes.io/docs/concepts/overview/what-is-kubernetes/

Slide 10

Slide 10 text

© 2020, Amazon Web Services, Inc. or its Affiliates. What is Kubernetes?

Slide 11

Slide 11 text

© 2020, Amazon Web Services, Inc. or its Affiliates. What is Kubernetes? • Kubernetes is a container orchestration system which started as an open source project from Google. • Heart of the “Cloud Native” movement. • Designed to run everywhere from on-premises to the cloud. • Automatic scaling and self-healing. • Innovative declarative resource model.

Slide 12

Slide 12 text

© 2020, Amazon Web Services, Inc. or its Affiliates. Architecture https://kubernetes.io/docs/concepts/overview/components/

Slide 13

Slide 13 text

© 2020, Amazon Web Services, Inc. or its Affiliates. Architecture https://kubernetes.io/docs/concepts/overview/components/

Slide 14

Slide 14 text

© 2020, Amazon Web Services, Inc. or its Affiliates. Architecture https://kubernetes.io/docs/concepts/overview/components/

Slide 15

Slide 15 text

© 2020, Amazon Web Services, Inc. or its Affiliates. Architecture https://kubernetes.io/docs/concepts/overview/components/

Slide 16

Slide 16 text

© 2020, Amazon Web Services, Inc. or its Affiliates. Architecture https://kubernetes.io/docs/concepts/overview/components/

Slide 17

Slide 17 text

© 2020, Amazon Web Services, Inc. or its Affiliates. Architecture https://kubernetes.io/docs/concepts/overview/components/

Slide 18

Slide 18 text

© 2020, Amazon Web Services, Inc. or its Affiliates. Pod A pod is the basic unit of Kubernetes. It generally represents a container. Most resources have 4 fields: • apiVersion • kind • metadata • spec Don’t create these yourself.

Slide 19

Slide 19 text

© 2020, Amazon Web Services, Inc. or its Affiliates. Deployment A deployment represents a single app/service. This is the most common resource you’ll use. Completely isolated from other deployments by default. Notice the spec.template field is the same as the pod.

Slide 20

Slide 20 text

© 2020, Amazon Web Services, Inc. or its Affiliates. Service A service is how we make deployments accessible inside and outside our cluster. Three different types: • ClusterIP • NodePort • LoadBalancer

Slide 21

Slide 21 text

© 2020, Amazon Web Services, Inc. or its Affiliates. Cloud Native

Slide 22

Slide 22 text

© 2020, Amazon Web Services, Inc. or its Affiliates. https://landscape.cncf.io/

Slide 23

Slide 23 text

© 2020, Amazon Web Services, Inc. or its Affiliates. https://twitter.com/memenetes/status/1247630361242279936

Slide 24

Slide 24 text

© 2020, Amazon Web Services, Inc. or its Affiliates. https://twitter.com/dastbe/status/1303858170155081728

Slide 25

Slide 25 text

© 2020, Amazon Web Services, Inc. or its Affiliates. https://landscape.cncf.io/

Slide 26

Slide 26 text

© 2020, Amazon Web Services, Inc. or its Affiliates. 2017

Slide 27

Slide 27 text

© 2020, Amazon Web Services, Inc. or its Affiliates. https://wordpress.org/about/logos/

Slide 28

Slide 28 text

© 2020, Amazon Web Services, Inc. or its Affiliates.

Slide 29

Slide 29 text

© 2020, Amazon Web Services, Inc. or its Affiliates. YAML

Slide 30

Slide 30 text

© 2020, Amazon Web Services, Inc. or its Affiliates.

Slide 31

Slide 31 text

© 2020, Amazon Web Services, Inc. or its Affiliates. YAML

Slide 32

Slide 32 text

© 2020, Amazon Web Services, Inc. or its Affiliates. 2021

Slide 33

Slide 33 text

© 2020, Amazon Web Services, Inc. or its Affiliates. YAML

Slide 34

Slide 34 text

© 2020, Amazon Web Services, Inc. or its Affiliates. Where we’re at now • More mature with options • Increasingly complicated yet easier • Persistent storage is better • KEPs • Many fun problems still to solve

Slide 35

Slide 35 text

© 2020, Amazon Web Services, Inc. or its Affiliates. Advice

Slide 36

Slide 36 text

© 2020, Amazon Web Services, Inc. or its Affiliates. Home Lab • Extremely easy and inexpensive to get started with • Experiment and learn without risk • Play with the latest and greatest • K3s, Longhorn, PiHole, Home Assistant, etc

Slide 37

Slide 37 text

© 2020, Amazon Web Services, Inc. or its Affiliates.

Slide 38

Slide 38 text

© 2020, Amazon Web Services, Inc. or its Affiliates. Join the Community • Welcoming and inclusive • Contributions come in all shapes and sizes • https://git.io/JtFfE • https://www.kubernetes.dev • https://slack.k8s.io

Slide 39

Slide 39 text

© 2020, Amazon Web Services, Inc. or its Affiliates. Use Managed Services • Kubernetes, databases, etc • Figure out how much operational work you want to take on • Focus on building and not maintaining

Slide 40

Slide 40 text

© 2020, Amazon Web Services, Inc. or its Affiliates. Learn the Resource Model • Everything is an API • Group Version Resource (GVR) • https://kubernetes.io/docs/reference/kubernetes-api/ • kubectl explain • kubectl -v 7

Slide 41

Slide 41 text

© 2020, Amazon Web Services, Inc. or its Affiliates. Extend • Custom Resource Definitions (CRDs) • Admission Webhooks • Build a controller – https://book.kubebuilder.io/

Slide 42

Slide 42 text

© 2020, Amazon Web Services, Inc. or its Affiliates. In Summary • Take a breath • Start small • Break things • Have fun while doing it • Join the community

Slide 43

Slide 43 text

© 2020, Amazon Web Services, Inc. or its Affiliates. Thank you! @eddiezane