cri o
play

CRI-O All the Runtime Kubernetes need Antonio Murdaca < - PowerPoint PPT Presentation

CRI-O All the Runtime Kubernetes need Antonio Murdaca < runcom@redhat.com > Senior Software Engineer, Red Hat Inc. @runc0m Issues... Docker ...breaks rkt Pod concept Maintenance Pluggability CRI


  1. CRI-O All the Runtime Kubernetes need Antonio Murdaca < runcom@redhat.com > Senior Software Engineer, Red Hat Inc. @runc0m

  2. Issues... ● Docker ● ...breaks ● rkt ● Pod concept ● Maintenance ● Pluggability

  3. CRI Container Runtime Interface Plug and play ● ● Protocol buffers ● gRPC ● 1.5+ Client - Server ●

  4. Runtime Service Pods lifecycle ● ● Containers lifecycle ● Interactions

  5. Image Service Images lifecycle ● ● FS information

  6. CRI in action

  7. CRI-O Open governance ● ● Open source ● Lean Stable ● Secure ● ● BORING!

  8. Scope ● Tied to the CRI Shaped around Kubernetes ● Only supported user is ● Kubernetes ● No features that can mine stability and performance Versioning is tied to ● Kubernetes ● Support is tied to Kubernetes

  9. Architecture

  10. OCI runtimes

  11. containers/storage overlayfs (default) ● ● Manage layers on COW ● Former “storage drivers”

  12. containers/image Where everything started ● ● Battle tested ● Seamlessly pull any of your images New features ●

  13. OCI runtime tools Generates OCI configurations ● ● OCI runtimes can understand the very same configuration There’s a library!!! ● Run containers ●

  14. CNI - Container Network Interface Pluggable network stack ● ● Flannel ● Weave … ● openshift-sdn ●

  15. conmon Monitoring ● ● Logging ● Handling tty Serving attach clients ● Detecting and reporting OOM ● ● CRI-O restarts

  16. Pod architecture (runc) conmon conmon conmon Infra Container Container A Container B (runc) (runc) Pod (ipc, net, pid namespaces)

  17. Pod architecture (Clear Containers & Kata Containers) Pod conmon cc-shim Container B Agent Container A conmon cc-shim Virtual Machine

  18. ...live demo?

  19. Status k8s tests ● ● OpenShift tests ● critest Integration tests ● Performance tests ● ● On every PR ● Tests? Tests?? ● Tests??? ● ● Tests???? ● Tests?????

  20. Status ● CRI at any time is fully implemented Released 1.7 (1.0), 1.8, 1.9, 1.10, 1.11-dev ● Maintainers/contributors from Red Hat, Intel, IBM, ● SUSE, Lyft and many others (80+) ● Kubeadm works for setting up k8s with CRI-O Minikube works ● Support for mixed workloads ● ● Deployed to our OpenShift Online test cluster ● Available in Fedora, Ubuntu, RHEL ...

  21. Kubernetes setup $ minikube start \ --network-plugin=cni \ --container-runtime=cri-o \ --bootstrapper=kubeadm

  22. Local Kubernetes setup $ CONTAINER_RUNTIME=remote \ CONTAINER_RUNTIME_ENDPOINT=' \ /var/run/crio/crio.sock \ --runtime-request-timeout=5m' \ hack/local-up-cluster.sh

  23. OpenShift setup [...] kubeletArguments: [...] container-runtime-endpoint: - "/var/run/crio/crio.sock" container-runtime: - "remote" runtime-request-timeout: - "15m" [...]

  24. Debug ● https://github.com/kubernetes-incubat or/cri-tools crictl ● Upstream community tool ● ● Debugging through the CRI on a node ● Work is ongoing to move the project into Kubernetes core

  25. skopeo Play with container images ● ● No daemon running ● Perfect for pipelines (Jenkins?) Transports ●

  26. buildah Build images ● ● No daemon running ● shell-like syntax Build from Dockerfile(s) ●

  27. podman Running containers ● ● Integrated with CRI-O (soon) ● No daemon running Known CLI ●

  28. Summary CRI ● ● CRI-O ● Ecosystem New tools from legos ●

  29. Roadmap ● Switch to CRI-O as the default in Kube? (trollface) Keep pace with upstream Kubernetes ● Tracking and supporting k8s versions ○ ● Graduating out of incubator ● GA in OpenShift 3.9 (not the default yet) Default container runtime for OpenShift 3.10 (hopefully) ● Deployed to OpenShift Online ●

  30. Get involved! Blog : https://medium.com/cri-o Github : https://github.com/kubernetes-incubater/cri-o IRC : freenode: #cri-o Slack : sig-node Site : https://cri-o.io, https://www.projectatomic.io

  31. Obrigado!

Recommend


More recommend