commit 8d4d21bd3c7d486383952ddf6773b6dd4fa0bda7 Author: Ricardo (XenGi) Band Date: Mon Aug 15 18:30:35 2022 +0200 Initial commit diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..a136337 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +*.pdf diff --git a/kubernetes 101/Makefile b/kubernetes 101/Makefile new file mode 100644 index 0000000..1842890 --- /dev/null +++ b/kubernetes 101/Makefile @@ -0,0 +1,8 @@ +pdf: + marp --pdf --pdf-notes . + +present: + marp -w -s --bespoke.progress . + +notes: + marp --notes . diff --git a/kubernetes 101/avatar.png b/kubernetes 101/avatar.png new file mode 100644 index 0000000..56625d7 Binary files /dev/null and b/kubernetes 101/avatar.png differ diff --git a/kubernetes 101/index.md b/kubernetes 101/index.md new file mode 100644 index 0000000..79d7e3b --- /dev/null +++ b/kubernetes 101/index.md @@ -0,0 +1,121 @@ +--- +title: Kubernetes 101 +description: An introduction +author: Ricardo Band +keywords: kubernetes,container,basics +--- + + + +![bg left:40% 80%](./k8s.svg) + +# Kubernetes 101 + +## An introduction + +--- + +# Stuff you should already know + +- Containers +- Container engines + - docker, podman :heart: +- Container runtime interfaces (CRI) + - containerd, CRI-O, Docker Engine +- Bonus points for: + - [docker|podman]-compose + +--- + +# Agenda + +- Workloads aka your app +- Environment +- Containers +- Pods +- Replication Controllers +- Services +- Volumes +- Namespaces + +--- + +# Advanced topics + +- Deployments +- ReplicaSets (the new Replication Controller) +- StatefulSets +- Ingress Controller +- Cluster DNS +- Container Storage Interface (CSI) +- Container Network Interface (CNI) + - Network Policies +- Custom Resources + + + +--- + +![bg right 50%](./workload.drawio.svg) + +# Workloads and the environment + +Example: Simple PHP app + +- index.php +- PHP runtime +- Webserver +- OS + +--- + +# Containers + +- Provides an isolated environment + - Linux namespace and cgroups +- Needs to be managed +- Networking + - *I smell another talk around here* +- Shared filesystems +- Scheduling +- Load balancing +- Distribution +- Persistant storage + +--- + +# Containers - Hands on + +```shell +$ podman run -it --rm docker.io/debian:stable + +$ systemctl --user status user.slice + +$ podman-compose up +``` + + + +--- + +# Sources + +- [Kubernetes Children’s Guide](https://www.cncf.io/phippy/the-childrens-illustrated-guide-to-kubernetes/) + +--- + +![bg opacity blur](./avatar.png) + +``` + +-- + +by Ricardo Band + +mailto:email@ricardo.band + https://www.ricardo.band/ +``` diff --git a/kubernetes 101/k8s.svg b/kubernetes 101/k8s.svg new file mode 100644 index 0000000..bedd3b8 --- /dev/null +++ b/kubernetes 101/k8s.svg @@ -0,0 +1,84 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + +