KubeCon 2018 Trends
- GitOps : Gitops were new to me, apparently this new trend started after this blog post was published. Basically it comes down to declaring in Git the properties of your deployment and let a tool ;Flux for example; look for changes in your deployment properties in Git and update the deployment accordingly. An interesting part of it, is that it also can correct a problematic deployment get back to « normal » and it can also auto update versions of your images and commit the changes to Git for you.
- Kubernetes icons are open source
- Storage : Rook discovers the available storage, using Ceph as an underlying provider
- Helm has now an aggregated repo : https://hub.helm.sh ; you’re just a pull request away from aggregating your own repo with it ! Did I mention the Terracotta Helm Chart was there ?
- a lot of new container runtime available this year : Kata containers, vm runtime, qemu, Firecracker (virtualization, soon a runtime for Kubernetes containers, )
- Tooling to build / deploy applications to Kubernetes : draft and buildpacks were fairly well represented and keep on evolving.
- hey, similar to Siege
- kind runs a fully functional Kubernetes cluster in Docker ! It’s possible to leverage it in CI builds running on TravisCI for example !
- Kubeval validates your resources before they get scheduled
- skycfg.fun : define Kubernetes resources in Python, validate them and generate their YAML counterpart
- Kapitan, a tool to generate kubernetes resources
- kubesquash a debugger for c++/go applications running in a Kubernetes cluster
- ksync allows you to mount a local folder to a given pod folder
Kubernetes Workshops you can access online
- Knative workshop – you’ll need a Kubernetes cluster, I think minikube should be enough, we used a GKE cluster during the lab.
- GitOps with Flux
fun things to know
kubectl auth can-i create pods # do you have sufficient rights ?
kubectl get events # list events
The status of Kubernetes Operators
CRDs versioning; requires web hook controller to migrate live (user requested v1, but CR was stored as v1beta)
Admission controller to validate rules (source, origin security, maintainer info, etc), validation only.
Custom controller to apply rules, mutate deployment.