We will examine the current state of container (and Kubernetes) support in Open Platform for Network Function Virtualization (OPNFV). We will also examine new container technologies that use lightweight virtual machines for containerized workloads, as exemplified by Intel Clear Containers and the upcoming Kata Containers project. We’ll look at the components of container management systems, with an eye towards the integration of lightweight virtualization into OPNFV’s container support. Finally, we’ll have a hands-on lab session in which you’ll be able to install Kubernetes with cc-runtime, the Intel Clear Containers runtime engine for containers. We'll explore how it functions and the challenges and opportunities for integrating into OPNFV.
Lab instructions can be found at http://www.dragstroke.org.s3-website.us-east-2.amazonaws.com/
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Lightweight Virtualized Containers For Open Platform for NFV* (OPNFV*)
1. Jim Chamings, Intel Sr. Software Apps Engineer
Out-of-the-Box Network Developers Meetup, January 24, 2018
*Other names and brands may be claimed as the property of others.
4. 4
Kubernetes* and Container Support in Open
Platform for NFV*
• Installers
• JOID and Compass4NFV offer k8s* installations
• XCI?
• Testing / Benchmarking?
• Examples?
*Other names and brands may be claimed as the property of others.
5. Intel® Clear Containers, Kata Containers*, and similar technologies
*Other names and brands may be claimed as the property of others.
6. 6
Why Lightweight Virtualization for Containers?
Security and isolation of virtual machines
Plus
Speed and flexibility of containers
7. 7
Current Examples
• Intel® Clear Containers 3.0 (we’ll work with this today)
• Runtime ‘cc-runtime’
• Hyper.sh
• Runtime ‘runv’
• Upcoming: Combined to Form Kata Containers* Project
• Support for Open Container Initiative*, k8s* (CRI), Docker*, OpenStack*
• Eventual support for multiple architectures and hypervisors
• All 3 are aware of NFV workloads and technologies (e.g. SR-IOV, DPDK)
*Other names and brands may be claimed as the property of others.
8. And how Kubernetes* uses them
8*Other names and brands may be claimed as the property of others.
9. 9
Open Container Initiative* (OCI*) Specifications
• OCI Runtime Specification
• runC – CLI (Common Language Infrastructure) reference implementation
(originally from Docker*)
• containerd – standard runtime (works with runC and others)
• OCI Image Format Specification
• Allows container image builders to use tools of their choice and run on
multiple runtimes that are also compliant
*Other names and brands may be claimed as the property of others.
10. 10
Container Runtime Interface (CRI) and CRI-O
• Initial purpose of CRI was to abstract and decouple k8s* from specific
Docker* and rkt runtimes (k8s can still run directly over those runtimes as well).
• CRI-O is the OCI-compliant implementation.
• Notable components include
• CNI (Container Network Interface), which supports network plugins
such as Flannel*
• ‘conmon’ monitoring and logging
• Storage and image libraries supporting multiple backends for each.
*Other names and brands may be claimed as the property of others.
13. 13
What’s in the Open Platform for NFV*
Deployments?
• My Example: JOID
• Initial deployment via juju with Ubuntu LXD* containers
• k8s* running over Docker* / containerd / runc
• Uses Flannel* CNI plugin for networking
• My original lab plan was to replace runc with cc-runtime
• Deployment orchestration created a chicken-and-egg problem
• (that I’m still working on)
• The hard part is not integrating virtualized containers!
• It’s getting ahead of the deployment mechanism...
*Other names and brands may be claimed as the property of others.
14. Deploy CRI-O* and Kubernetes* with Intel® Clear Containers
*Other names and brands may be claimed as the property of others.
15. 15
Lab OverView
• Lab instructions are available at:
• http://www.dragstroke.org.s3-website.us-east-2.amazonaws.com/
• You can do this lab on any Ubuntu* 17.10 machine of your own.
• If it’s a VM, you need to configure both host and guest for “Nested
Virtualization”! I can provide details for that if desired..
*Other names and brands may be claimed as the property of others.
17. 17
Wrapping Up
• OPNFV*, and NFV in general, will be ramping up a LOT on containers in
2018.
• Luckily, Kata Containers* will be ramping as well!
• (There’s a ways to go yet, of course...)
• They should go together pretty nicely, though.
• If you’re a developer, keep lightweight virtualized containers in mind.
• If you’re an integrator, consider the advantages of these solutions and ask
about them as the container revolution goes forward.
*Other names and brands may be claimed as the property of others.