在我们的QEMU/KVM
虚拟化环境中,当所有的虚拟机启动时需要自动添加一个ivshmem
设备,用于虚拟机与宿主机之间通信。为了添加该设备,我们需要在调用QEMU
时,添加上ivshmem
设备的相关参数,例如:
1 | -device ivshmem,shm=fg_i3,size=8m,bus=pci.0,addr=0x1f |
Libvirt
使用XML文件来定义虚拟机配置,并根据XML文件来生成QEMU
命令行参数,进而执行QEMU
程序来启动虚拟机实例。我们可以在所有虚拟机的XML文件的<devices>
节点中添加上<shmem>
配置,如:
1 | <shmem name="fg_i3"> |
这样,libvirt
启用QEMU
实例时,则会添加如下参数:
1 | -device ivshmem,id=shmem0,size=8m,shm=fg_i3,bus=pci.0,addr=0x1f |
Guest启动后,登录查看PCI设备,可以看到相应的ivshmem
设备: