kata containers
play

Kata Containers Story of a container runtime Sbastien Boeuf, - PowerPoint PPT Presentation

Kata Containers Story of a container runtime Sbastien Boeuf, Software Engineer Intel Corporation Agenda Why Kata Containers? Acceptance Community growth Ecosystem influence Hypervisor flexible


  1. Kata Containers Story of a container runtime Sébastien Boeuf, Software Engineer Intel Corporation

  2. Agenda ● Why Kata Containers? ● Acceptance ● Community growth ● Ecosystem influence ● Hypervisor flexible

  3. https://regmedia.co.uk/2017/09/11/shutterstock_containers_in_port.jpg

  4. Containers Container Container Container Host OS

  5. Security threat Container Container Container Host OS

  6. https://cdn-images-1.medium.com/max/800/1*zPiik9vlW_G7GU9bTjxhJQ.jpeg

  7. Manual isolation Container Container Container Container Container Container Host OS Host OS VM VM Baremetal server

  8. https://s3.amazonaws.com/wordpress-production/wp-content/uploads/2015/12/collaborative-problem-solving.jpg

  9. Legacy Clear Containers

  10. Kata Containers Container Container Container Guest OS Guest OS Guest OS VM VM VM HW HW HW virtualization virtualization virtualization Host OS

  11. https://marketingweek.imgix.net/content/uploads/2017/06/30121536/Ecosystem-body-image.jpg

  12. Container ecosystem Docker OCI runc Container

  13. Container ecosystem Kubernetes CRI OCI runc Container

  14. Container ecosystem Kubernetes Docker CRI OCI runc Container

  15. Seamless integration Kubernetes Docker CRI Container OCI kata-runtime Guest OS VM

  16. OCI compatible OCI create start state kill delete

  17. OCI compatible runc OCI exec list create start pause resume state run update kill delete

  18. OCI compatible host monitoring Container I/O

  19. OCI compatible host Container ? monitoring I/O Guest OS VM

  20. OCI compatible host Container monitoring I/O Guest OS kata-shim VM

  21. https://www.incimages.com/uploaded_files/image/1940x900/getty_524541622_2000133320009280310_370635.jpg

  22. Community growth Additional architectures ● aarch64 ( ARM ) ● ppc64 and s390 ( IBM ) Enhanced stability and production ready ● Huawei ● Baidu ● Alibaba

  23. Community growth CI resources ● Vexxhost ( Vexxhost ) ● Azure ( Microsoft ) ● AWS ( Amazon ) ● GCE ( Google )

  24. Community growth 2000 pull requests / 100 contributors

  25. https://hbr.org/resources/images/article_assets/2015/05/MAY15_19_686097-001.jpg

  26. Extend OCI

  27. RuntimeClass

  28. RuntimeClass node 1 pod1.yaml Pod 1 Pod 2 pod2.yaml runc kata pod3.yaml pod4.yaml node 2 Pod 3 Pod 4 runc kata

  29. Pod overhead

  30. Pod overhead pod1.yaml node cpus: 2 mem: 256M Pod 1 Pod 2 Container pod2.yaml Container Guest OS cpus: 2 mem: 256M VM Overhead: - cpus: 1 - mem: 128M

  31. Shim v2 CRI containerd or CRI-O

  32. Shim v2 CRI containerd-shim or containerd conmon or CRI-O

  33. Shim v2 CRI OCI runc containerd-shim or containerd conmon + or kata-runtime kata-shim CRI-O

  34. Shim v2 Shim CRI OCI v2 runc containerd-shim or containerd conmon + or kata-runtime kata-shim CRI-O kata-v2

  35. Shim v2 wait stats resizePty No host PID assumption! k8s pod scaling!

  36. Shared filesystem Virtio-9p ● Not fully POSIX compliant ⇒ Workload functional issues ● Not performant ● Production should use virtio-blk ⇒ devicemapper

  37. Shared filesystem Redhat developed replacement for virtio-9p ⇒ virtio-fs ● Fully POSIX compliant ⇒ Solve workload functional issues ● As performant as virtio-blk (with DAX optimization) ● Overlay back into the picture for production

  38. Shared filesystem virtio-9p Mounted FS Shared FS VM

  39. Shared filesystem virtio-fs Mounted FS virtiofsd Shared FS VM

  40. Shared filesystem virtio-fs Mounted FS virtiofsd Shared FS VM

  41. QEMU/NEMU ● Swiss army knife hypervisor ⇒ Default for Kata ○ Type 2 (KVM) ○ Multi-purpose ○ Extensive device model (virtio-gpu, virtio-crypto, ...) ○ Direct Device Assignment (VFIO) ● Wide codebase in C ⇒ Potential attack surface ● NEMU reduces the attack surface

  42. Firecracker ● Lightweight hypervisor ○ Type 2 (KVM) ○ Narrow focus: container workloads and FaaS ○ Reduced device model ● Small codebase in Rust ⇒ Highly secure

  43. ACRN (in progress) ● Lightweight hypervisor ○ Type 1 ○ Focus on Automotive and IoT ○ Industry standard FuSa (Functional Safety) ● Small codebase in C ⇒ Highly secure

  44. http://www.lifeafterlondon.com/wp-content/uploads/2014/07/pick-your-own.jpg

  45. Takeaways INFLUENCE INTEGRATE

  46. Join the fun! Sources: https://github.com/kata-containers/runtime Get started: https://github.com/kata-containers/documentation/blob/master/Deve loper-Guide.md Slack: katacontainers.slack.com IRC: #kata-dev@freenode Mailing list: kata-dev@lists.katacontainers.io

  47. Thank you

Recommend


More recommend