【问题标题】:What is the difference between QEMU, KVM, Libvirt, and how to use with Vagrant? Are all 3 needed to work together?QEMU、KVM、Libvirt 有什么区别,如何配合 Vagrant 使用?这三个需要一起工作吗?
【发布时间】:2020-03-28 21:17:26
【问题描述】:

我之前使用过 Vagrant 和 Virtualbox,但 VB 无法在这台计算机上运行,​​所以我想我会尝试不同的方法,但我不能完全理解这个软件集群,它们的用途是单独和相互依赖的...我知道 Vagrant 盒子可以有 QEMU 或 Libvirt(或 KVM?)提供程序,还有 qemu、qemu-kvm 和 vagrant-libvirt,我只是无法将它们和它们的互连分开。我想在我的主机上运行具有同步文件夹的虚拟机。所有这些都是必需的,以及如何?如果不是,为什么以及如何一起使用?这样我可以更好地理解。在 Debian 10 上

【问题讨论】:

  • 启动并运行 VirtualBox 可能会对您有所帮助,因为您似乎已经对它更加熟悉了。

标签: vagrant virtualization qemu kvm libvirt


【解决方案1】:

QEMU、KVM 和 Libvirt 之间的区别

QEMU 是一个机器(硬件)模拟器。

KVM是Linux内核模块,用于启用虚拟化;这是管理程序。

QEMU 可以在没有 KVM 的情况下运行,但速度可能会慢一些。

libvirt 是一个虚拟化库,它封装了 QEMU 和 KVM,以提供 API 供其他程序使用,例如 Vagrant,它是一个创建虚拟化开发环境的工具。

总结:

  • Vagrant 使用 libvirt。
  • libvirt 使用 QEMU 和 KVM。

如何与 Vagrant 一起使用

首先一定要安装需要的依赖:

apt-get build-dep vagrant ruby-libvirt
apt-get install qemu libvirt-daemon-system libvirt-clients ebtables dnsmasq-base
apt-get install libxslt-dev libxml2-dev libvirt-dev zlib1g-dev ruby-dev

来源:https://github.com/vagrant-libvirt/vagrant-libvirt#installation

然后使用以下命令运行:

vagrant up --provider=libvirt

或者,使用环境变量代替:

export VAGRANT_DEFAULT_PROVIDER=libvirt

来源:https://github.com/vagrant-libvirt/vagrant-libvirt#start-vm

【讨论】:

  • 这是一个很好的总结!谢谢!
  • 不错的总结。 virtualbox 或 vmware 如何融入其中?
  • 用 VirtualBox 或 VMware 替换 QEMU 和 KVM;两者都是带有自己的驱动程序的管理程序。
猜你喜欢
  • 2012-05-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-06-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多