Yocto项目的虚拟化与云服务支持
1. 元虚拟化层概述
元虚拟化层旨在为嵌入式虚拟化创建一个中长期的、可用于生产的层。其主要作用包括:
- 简化使用KVM/LxC虚拟化等工具进行协作基准测试和研究的方式,结合先进的核心隔离等技术。
- 与OpenFlow、OpenvSwitch、LxC、dmtcp、CRIU等项目集成并做出贡献,这些项目可与OpenStack或运营商级Linux等其他组件配合使用。
该层提供的可用软件包有:
- CRIU
- Docker
- LXC
- Irqbalance
- Libvirt
- Xen
- Open vSwitch
此层可与元云服务层结合使用,元云服务层为各种基于云的解决方案提供云代理和API支持。元云服务层中的部分软件包包括:
- openLDAP
- SPICE
- Qpid
- RabbitMQ
- Tempest
- Cyrus - SASL
- Puppet
- oVirt
- OpenStack
2. 元虚拟化层组件详解
2.1 CRIU
CRIU实现了Linux用户空间的检查点/恢复功能。它可以冻结正在运行的应用程序,并将其作为文件集合保存到硬盘上的检查点中,后续可从该检查点恢复并继续执行应用程序。其应用场景包括:
-容器实时迁移:这是该项目的主要用例。容器被检查点化,生成的镜像被移动到另一个节点并恢复,用户几乎察觉不到。