Articles of kvm virtualization

创build虚拟桥接主机networking

试图在Ubuntu机器上build立虚拟网桥,主机networking破裂 #ip link add name br0 type bridge #ip link set dev eth0 master br0 #ip link set dev br0 up #ping <gateway_addr> // failed #ip neigh <gateway_addr> dev eth0 FAILED #echo 1 >/proc/sys/net/conf/ipv4/br0/arp_accept #ping <gateway_addr> // failed #ip neigh <gateway_addr> dev eth0 FAILED <gateway_addr> dev br0 lladdr <mac_addr> REACHABLE Ping到网关不成功,但是当我删除网桥并将其作为eth0的主服务器删除时,它会执行此操作。 我错过了什么。 请指教!

减lessCPU分配到正在运行的客户端Windows服务器

我使用Ubuntu 16.04作为主机和Windows Server 2012作为使用KVM中的Virtio驱动程序安装的guest虚拟机。 我能够增加客户端运行时的CPU,但我不能减lessCPU的。 分配给客户端的最大CPU数为20.我在客户端启动时分配了10个CPU,我试图执行以下命令将CPU减less到8。 virsh setcpus –live –guest generic 8 但是这会导致以下错误: error: internal error: 'can-offline' missing in reply of guest-get-vcpus 我试图看看guest-get-vcpus命令,但结果如下所示: $virsh qemu-agent-command generic '{"execute":"guest-get-vcpus"}' –pretty { "return": [ { "online": true, "logical-id": 0 }, . . . { "online": true, "logical-id": 9 } ] } 结果然而只有两个参数“在线”和“逻辑ID”。 不过,我希望客人也可以返回值“can-offline”。 我已经安装了QEMU版本2.5和最新的virtio驱动程序版本0.1.126和libvirtd版本1.3.1。

通过kvmpipe理程序的Windows客户机操作系统不会在连接networking接口后保留磁盘状态

我有基于openstack的云环境。 我有基于kvm/qemu的pipe理程序。 我在其中一个pipe理程序上创build了Windows guest虚拟机操作系统虚拟机。 我把卷(vhd)附加到vm。 我在客户操作系统中将磁盘状态更改为online 。 然后,我将(hotplugged)networking接口连接到vm。 在虚拟机pipe理程序中,我可以看到vm的xml文件中添加了networking接口。 我重新启动虚拟机,我仍然可以在xml文件中看到所有的磁盘和networking接口。 但他们的插槽重新排列。 然后我检查来宾操作系统上的磁盘状态,并显示Offline 。 我不明白这个问题在哪里。 如果我只是重新启动虚拟机,而不附加额外的networking接口,则磁盘状态将被保留。 有人知道为什么发生? 它不会发生在Linux客户操作系统上,所以我假设这是来宾操作系统级别的问题,可能是与virtIO驱动程序有关的问题。 这个问题与hotplugging没有任何关系,因为即使我closuresvm后连接networking接口,它仍然会发生。

centos7:转换虚拟磁盘后引导错误dracut-initqueue

我使用qcow2磁盘格式在Ubuntu 16.04 KVM上安装了centos7。 为了部署我的centos maschine,我需要vhdx磁盘格式来支持微软的Hyper-V。 我使用qemu-image将其从qcow2文件格式转换为vhdx。 qemu-img convert -O vhdx centos.qcow2 centos.vhdx 当我使用centos.vhdx磁盘文件在Microsoft Hyper-V中创build新一代vm时,出现如下错误 dracut-initqueue[220]: Warning dracut-initqueue timeout – starting timeout scripts 看我的Bootscreen 。 我如何解决这个问题?

KVM上的虚拟防火墙

我打算运行一个专门的防火墙发行版,但我想在KVM虚拟机中运行它。 我有一个2 NIC的机器,我打算分配到广域网和局域网。 但是,两个网卡都不支持VT-d,所以PCI直通是一个很大的问题。 因此,我已经考虑到在私有模式下为WAN接口使用macvtap,在LAN接口上使用标准网桥。 我只是想知道:我该如何处理这个WAN接口? 假设它被称为eth0,并且在私有模式下有一个macvtap链接到它,从而分配防火墙WAN接口。 如何在Linux主机上configurationeth0接口本身? 你把它设置为手动模式,从而不分配IP? 你给它一个IP,静态或DHCP? 你用IPTABLE规则保护它吗? 我只是想知道,如何安全地实施这种types的设置,从WAN端保护主机和虚拟防火墙客户端? 任何build议,你可以给予赞赏!

KVM网桥debian OVH / SYS

已经从计划build立几个KVM客人的SoYouStart(便宜的OVH)获得一台服务器。 安装了Debian Jessie和所需的软件包qemu-kvm libvirt-bin virtinst 。 从SYS获得额外的IP,现在是有趣的部分。 使用Xen术语,IP是: DomU:94.xx.xx.20 Dom0:145.xx.xx.35 Dom1:188.xx.xx.47 SYSbuild议额外的IPconfiguration为IP别名(并在他们的控制面板希望虚拟Mac地址分配给这些)。 原始的/etc/network/interfaces auto eth0 iface eth0 inet static address 94.xx.xx.20 netmask 255.255.255.0 broadcast 94.xx.xx.255 gateway 94.xx.xx.254 将条目添加到/etc/network/interfaces auto eth0:0 iface eth0:0 inet static address 145.xx.xx.35 netmask 255.255.255.255 post-up /sbin/ifconfig eth0:0 145.xx.xx.35 netmask 255.255.255.255 broadcast 145.xx.xx.35 pre-down /sbin/ifconfig eth0:0 down 按预期分配。 (如果SYS面板中没有configurationMAC,则可以ping通,否则不可以)。 使用build议的iproute2: ip link […]

如何确定QEMU虚拟机闲置?

我正在使用KVM-QEMU虚拟机。 目前我想知道在虚拟机内运行的程序(如MySql)是否空闲(即不忙处理请求)。 我希望在QEMU级别获得这些信息(来自VM之外的信息)。 从虚拟机进程的CPU使用情况来看,如果这个程序是CPU密集型的,我可以粗略地判断程序是否已经空闲。 但是,有什么build议如何确定这个程序是磁盘IO密集型 ? 因为对于IO密集型应用程序来说,如果它仍然忙于处理请求,它的CPU没有多大用处,我无法从CPU使用情况中分辨出来。 提前谢谢了。

主机重启后如何重启KVM网桥?

我在192.168.0.4上有一个KVM主机,一个桥接networking适配器可以在192.168.0.9上运行一个guest虚拟机,这个guest虚拟机可以连接到192.168.0.0/24整个networking或者连接数周。 现在,我不得不重新启动主机,客户端虚拟机也重新启动,但不能连接到networking上除主机之外的任何地方。 我可以从主机ssh [email protected] 192.168.0.9连接到它,从客人我可以连接回主机上的IP 192.168.0.4,但没有别的是可连接的。 我觉得有一些服务丢失,我需要重新启动后重新启动主机告诉networking适配器连接外部连接。 或者也许dockernetworking接口没有在重新启动后正确初始化防火墙。 但我不知道; 我该怎么办? 谢谢 从KVM主机输出 brctl show bridge name bridge id STP enabled interfaces br-238782ed063f 8000.0242e81a340a no br0 8000.7085c2060a8a no enp5s0 vnet0 docker0 8000.02427d14b9fa no virbr0 8000.52540044738a yes virbr0-nic ifconfig -a br0 Link encap:Ethernet HWaddr 70:85:c2:06:0a:8a inet addr:192.168.0.4 Bcast:192.168.0.255 Mask:255.255.255.0 inet6 addr: fe80::7285:c2ff:fe06:a8a/64 Scope:Link UP BROADCAST RUNNING MULTICAST […]

与firewalld和libvirt / KVM的多个networking

在过去,我有一个使用libvirt / KVM和IPtables的虚拟机pipe理程序,以便通过IPv4上的NAT(在iptables中转发和伪装don)并直接在IPv6(libvirt中configuration的路由networking)上使虚拟机可达。 (例1)。 因为我想切换到CentOS 7,现在默认使用firewalld,我认为使用firewalld而不是iptables是合理的。 我可以使用firewalld作为“drop in replacement”用于这个目的,还是libvirt有限制或问题?

在CentOS 7.4上configurationKVM的网桥

我是CentOS 7.4上的KVM的新手,但是我有在Mac OS上使用VirtualBox的经验。 在那里,我可以select有一个桥接networking,而不是一个NAT的选项,它的工作。 运行的实例可以很容易地从局域网访问,它有一个IP地址,看起来像从路由器获得DHCP。 在KVM / CentOS 7.4上,我还没有成功。 在virt-manager中是否有类似VirtualBox / Mac的桥接networking的configuration选项? 到目前为止,我已经完成了对KVM实例的SSH操作,使用ssh -t,在那里进行隧道操作。 但是我真的需要它在没有隧道的情况下工作。 我需要能够运行Apache并从这个实例中提供一些页面。 在virt-manager中的一些设置中的解决scheme是否像我在VirtualBox / Mac中描述的那样使网桥工作正常? 还是有一个更复杂的是需要做到这一点? 如果是这样,那是什么?