标签: kvm-virtualization

在 KVM 主机和来宾之间共享文件夹的最佳方式

我想在 KVM 来宾和主机之间共享一个文件夹。我希望数据仅存储在主机上。什么是最好的解决方案?

谢谢垫子

network-share kvm-virtualization

10
推荐指数
3
解决办法
4万
查看次数

将单个 NIC 分配给 KVM 来宾

我有一台安装了 6 个 NIC 的服务器,并且正在运行 Ubuntu 12.04LTS。我想使用 kvm 设置 4 个来宾 VM。现在我想为主机分配 2 个 NIC(1 个公共 IP 和 1 个私有 IP),每个 1 个 NIC 分配给 4 个来宾 VM(所有私有 IP)。我该怎么做呢?

/etc/network/interfaces
Run Code Online (Sandbox Code Playgroud)

我的配置文件有问题,如下所示:

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
    address 192.168.1.109
    netmask 255.255.255.0
    gateway 192.168.1.5

auto eth1
iface eth1 inet static
        address 192.168.1.117
        netmask 255.255.255.0

auto eth2
iface eth2 inet manual

auto br0
iface br0 inet …
Run Code Online (Sandbox Code Playgroud)

nic kvm-virtualization

10
推荐指数
1
解决办法
3万
查看次数

在较重的虚拟化(Xen、KVM、Hyper-V、VMVare)下使用 LXC

是否可以在较重的虚拟化(Xen DomU、KVM、Hyper-V、VMVare)下使用 LXC?我想将它用作安全(隔离)工具,限制资源消耗的能力对我来说不是优先事项。我只对是否可以以直接的方式完成感兴趣;类似于在非虚拟化服务器上​​使用 LXC。我不想在生产服务器上使用太复杂的设置。

virtualization xen jail lxc kvm-virtualization

9
推荐指数
1
解决办法
7545
查看次数

挂载 qcow2 快照

我正在运行一些 Xen 服务器并开始迁移到 KVM。

目前我的客人要么在原始图像上运行,要么在 LVM 上运行。

我发现 libvirt 提供了一些非常好的快照功能(virsh 快照创建,...),所以我决定使用 qcow2 而不是 raw/lvm。

这是我的问题:libvirt 在 qcow2 映像上创建相同类型的快照,就好像我使用 qemu-img - 是否可以安装它们?我读了一些关于 qemu-nbd 和安装 qcow 的可能性,但我找不到关于快照的词。

linux qcow2 kvm-virtualization

9
推荐指数
2
解决办法
4115
查看次数

在 BIOS 中启用了 VT 但 KVM 无法检测到

我有戴尔 OPTIPLEX 755 机器,在 BIOS 中启用了 VT,但是当我尝试使用 KVM 检查时出现以下错误

我错过了什么?

root@nova-controller:~# kvm-ok
INFO: /dev/kvm does not exist
HINT:   sudo modprobe kvm_intel
INFO: Your CPU supports KVM extensions
INFO: KVM (vmx) is disabled by your BIOS
HINT: Enter your BIOS setup and enable Virtualization Technology (VT),
      and then hard poweroff/poweron your system
KVM acceleration can NOT be used
root@nova-controller:~#
Run Code Online (Sandbox Code Playgroud)

更新:

root@nova-controller:~# sudo modprobe kvm_intel
FATAL: Error inserting kvm_intel (/lib/modules/3.2.0-26-generic/kernel/arch/x86/kvm/kvm-intel.ko): Operation not supported
Run Code Online (Sandbox Code Playgroud)

消息

[   57.887352] kvm: disable TXT in the BIOS …
Run Code Online (Sandbox Code Playgroud)

virtualization linux kvm-virtualization

9
推荐指数
1
解决办法
2万
查看次数

备份运行 KVM qcow2 VPS

我想要一种在运行时备份 qcow2 文件的 KVM VPS 的强大方法。找了半天,发现可以用rsync做实时备份。我对 rsync 使用了以下命令:

rsync -avh /vms/base.qcow2 /backup/backup.qcow2
Run Code Online (Sandbox Code Playgroud)

它工作正常。但是我担心如果在由于写入和删除操作(例如安装新软件或更新)而更改 VPS 时进行备份,则可能会损坏备份 qcow2 映像。

因此,从实时 VPS 的快照中进行备份似乎是更有趣的选择。

我使用以下命令来备份正在运行的 VPS:

1.创建快照:

qemu-img create -f qcow2 -b base.qcow2 snapshot.qcow2
Run Code Online (Sandbox Code Playgroud)

2.以原始图像格式(.img)转换快照:

qemu-img convert -O raw snapshot.qcow2 /backup/backup.img
Run Code Online (Sandbox Code Playgroud)

要恢复 VPS:

3.在qcow2图像中转换原始图像:

qemu-img convert -O qcow2 /backup/backup.img base.qcow2
Run Code Online (Sandbox Code Playgroud)

然后我们就可以通过virsh create base.xml命令启动VPS了。

即使这种方法也很有效,但我仍然不确定这是否是备份运行 VPS 的正确方法。我在这里这里找到了关于 qemu-img 命令的很好的文档。但是他们没有提到将实时 VPS 的快照转换为原始图像的任何内容。

哪种方式更适合VPS实时备份?在原始图像中转换快照安全吗?

如果我能得到关于快照和基本文件在某些​​条件下如何表现的详细文档,那将非常有帮助。

也许我们也可以将基本 qcow2 映像转换为原始备份文件,而不是转换快照。所以命令流将是:
1. 创建快照
2. 将基本 qcow2 转换为备份原始映像
3. 将快照更改提交到基本映像
4. 删除快照

我试过了,它在 …

backup vps snapshot qemu kvm-virtualization

9
推荐指数
1
解决办法
2万
查看次数

警告 KVM 加速不可用,使用“qemu”

运行 debian ( Linux Rick 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt11-1+deb8u6 (2015-11-09) x86_64 GNU/Linux)

查看我的 cpuinfo 我可以看到我有 vmx 支持:

flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 popcnt aes lahf_lm …
Run Code Online (Sandbox Code Playgroud)

virtualization libvirt qemu kvm-virtualization

9
推荐指数
2
解决办法
1万
查看次数

同一主机上的 KVM VM 和 docker 容器之间的网络

在 Debian-Stretch 主机(连接到物理 LAN)上,我有一个新的 docker 安装(v18.09)和一个数据库容器(端口映射到主机),我运行 KVM/libvirt 和一些 Debian-Stretch VM。我可以从 LAN 访问 docker 容器和 VM(取决于通过 SSH 隧道或直接配置的配置),但我很难从 VM 访问 docker 容器。

在此处输入图片说明

# brctl show
bridge name         bridge id           STP enabled interfaces
br-f9f3ccd64037     8000.0242b3ebe3a0   no      
docker0             8000.024241f39b89   no      veth35454ac
virbr0              8000.525400566522   yes     virbr0-nic
Run Code Online (Sandbox Code Playgroud)

在阅读了几天之后,我在这篇文章中找到了一个非常引人注目的解决方案Docker 和 KVM 带有一个我没有开始工作的桥原始)。该解决方案建议使用一行配置 daemon.json 代码启动 docker 以使用 KVM“默认”网桥。那该有多好!有希望吗?

我在 KVM 虚拟机之间尝试了两种不同的网络配置。在这两种情况下,VM 与 LAN+路由器+云之间的通信都完美无缺,但我只是不知道如何越过围栏 - 到更绿的草地...... :)

Conf 1 - KVM 默认桥接与 NAT:我可以通过 ssh 连接到 Debian 主机并访问 docker 容器端口,但是否有直接路由的设置?

会议 2 - …

libvirt linux-networking kvm-virtualization docker debian-stretch

9
推荐指数
1
解决办法
9703
查看次数

QEMU - 虚拟驱动器的实际磁盘大小不正确

dfls在我的主机上报告不同的大小,因为分配的大小与 EXT4 文件系统中实际使用的空间量之间存在差异。问题是两者都报告了错误的大小。qemu-img也不报告来宾文件系统(也是 EXT4)内使用的实际空间。

在主机上:

# qemu-img info sdb.raw
image: sdb.raw
file format: raw
virtual size: 2.0T (2173253451776 bytes)
disk size: 1.9T

# ls -larth sdb.raw 
-rw-r--r-- 1 hypervisor hypervisor 2.0T Mar  6 13:47 sdb.raw

# du -sh sdb.raw 
1.9T   sdb.raw

# fdisk -l sdb.raw 
Disk sdb.raw: 2 TiB, 2173253451776 bytes, 4244635648 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes …
Run Code Online (Sandbox Code Playgroud)

virtualization filesystems virtual-machines qemu kvm-virtualization

9
推荐指数
2
解决办法
2518
查看次数

如果有硬件辅助虚拟化,那么使用半虚拟化的目的是什么?

我正在研究 QEMU/KVM 和 Firecracker/KVM。据我了解,Firecracker 和 QEMU 都与 KVM 通信,通过将 CPU 模式更改为来宾到主机(反之亦然),最终使硬件辅助虚拟化受益。

  1. 在CPU的guest模式下,guest甚至可以直接执行其特权指令,那么为什么我们还需要半虚拟化呢?

  2. 在 Firecracker 中,仅模拟了 5 个设备,例如

  • virtio网,
  • virtio 块,
  • virtio-vsock 等。

即使在这种极简设计中,我们也必须放置半虚拟化驱动程序。难道我们不能仅仅依靠硬件辅助虚拟化吗?

virtualization virtual-machines qemu paravirtualization kvm-virtualization

9
推荐指数
2
解决办法
1229
查看次数