我有一个两个虚拟网卡的kvm guest。 具有内部IP的NIC III.III.III.III (eth0) 具有外部IP的网卡EEE.EEE.EEE.EEE (eth1) 我正在使用macvtap。 主机拥有自己的外部IP。 我可以从主机ping两个网卡,但我不能从外面ping EEE.EEE.EEE.EEE 。 我在两个网卡上都做了一个tcpdump。 我在eth1上看到了ICMP请求,但似乎是使用“错误的”内部eth0接口发送了回复。 # tcpdump -i eth1 icmp -n 14:57:30.398789 IP XXX.XXX.XXX.XXX > EEE.EEE.EEE.EEE: ICMP echo request, id 1408, seq 6, length 64 14:57:31.398546 IP XXX.XXX.XXX.XXX > EEE.EEE.EEE.EEE: ICMP echo request, id 1408, seq 7, length 64 14:57:32.398547 IP XXX.XXX.XXX.XXX > EEE.EEE.EEE.EEE: ICMP echo […]
我们有这个qemu钩子。 在十一期间工作很好,但在十二期间它不工作。 挂钩是在openvswitch native-untagged中设置端口。 你知道是否有一些libvirt缺lessconfiguration在suse 12的钩子工作? 我们正在使用这个版本的libvirt:libvirtd(libvirt)1.2.5 谢谢BR和克里斯蒂娜 #!/bin/bash #/etc/libvirt/hooks/qemu domain_name="$1" domain_task="$2" # Create temporary file to hold the configuration. guest_cfg=`mktemp` function cleanup() { if [ -n "$guest_cfg" ]; then rm -f $guest_cfg fi } trap cleanup EXIT function ovs_untag_port() { # Read XML configuration on stdin. cat – > $guest_cfg ifaces=`xpath $guest_cfg "count(//devices/interface[@type='network']/target[@dev])" 2>/dev/null` […]
我不(重复不要)要通过一个物理的USB设备。 我正在做一个像这样的USBIMG文件: dd if=/dev/null bs=1K of=/tmp/test_usb.img seek=2040 mkfs.vfat /tmp/test_usb.img 然后,我尝试使用以下xml创build域: <disk type="file" device="disk"> <driver name="qemu" type="raw/> <source file="/tmp/test_usb.img"/> <target dev="sda" bus="usb"/> </disk> 在Windows客户端内,它显示为QEMU USB HARDDISK(或类似名称),但我无法访问它。 现在,我不打算把它作为一个USB硬盘。 我希望它是一个普通的FAT32 USB。 我该怎么做呢? 编辑(添加图片)
考虑到有100个窗口虚拟机来自单个基本映像,并且每个虚拟机都被添加到域以及可以通过脚本完成的其他小型机器特定设置。 一周后说我想用安全补丁更新所有vms。 有两种方法可以做到这一点: 销毁所有vms,更新基础映像,再次创build所有vms。 问题:这需要销毁所有虚拟机,再次创build磁盘,定义虚拟机,然后根据需要运行所需的脚本,这些脚本会在多个重新启动周期内处理虚拟机特定的configuration。 手动更新所有vms并应用安全补丁。 问题:只是不能缩放。 可能是一套5-10 vms不是100的好。 我很好奇其他人/软件怎么做呢? 有更好的方法,还是我可以改进我的第一种方法?
我试图通过libvirt来嵌套Xen-In-Xen。 有人可以确认添加hap和nestedhvm到domU xmlconfiguration中的features元素是什么才能使嵌套工作? 我是否缺less其他步骤? <features> <acpi/> <apic/> <pae/> <hap/> <nestedhvm/> </features> 一旦添加这些,我没有看到“vmx”被列为/ proc / cpuinfo中的标志,但是我确实看到了“hypervisor”标志…这是我应该期待的确认,还是应该在嵌套内看到vmx标志pipe理程序? 这是我的参考资料: http : //wiki.xenproject.org/wiki/Nested_Virtualization_in_Xen 谢谢大家!
我真的很难理解一些东西,我想知道是否有人有这方面的经验,并能够提供帮助。 我有两个KVM VMHost,一个运行qemu 2.4.1,另一个运行1.1.0。 在每个虚拟机上,我们都有一台运行CentOS 6的分配了80GB内存的虚拟机。这两个虚拟主机都运行着CentOS 6。 在1.1.0盒子里,当我在占用所有80GB内存的虚拟机中运行一个进程时,Qemu分配了80GB并保留它。 如果你看上面你看到的QEMU过程的RES大小是80GB。 空闲命令确认内存不空闲。 在2.4.1框中,当我做同样的事情时,它分配80GB到虚拟机,RES列确认。 但是,一旦我杀死虚拟机内的进程占用了所有的内存,Qemu似乎把内存送回系统。 RES列一直保持在80GB,但是我可以逐渐看到我的自由内存增加了自由的命令,直到它几乎全部回来。 我不知道这是为什么,这让我困扰。 我期望的行为是1.1.0 Qemu虚拟主机给了什么。 这就是为什么人们使用内存膨胀(这实际上是我正在试验)。 它几乎看起来像2.4.1框是自动气球,但我的RES列永远不会减less,所以我不知道这是可能的。 我不确定是否有一个我不知道的QEMU变化或什么… 任何有识之士将不胜感激。 谢谢!
所有虚拟机运行LVM池。 我调整了其中一个LVM卷来增加虚拟机驱动copacity。 像往常一样用lvextendresize。 一切都成功了, lvs显示了新的大小。 Libvirt虽然没有看到新的大小。 我尝试提神 – 没有运气。 它仍然显示旧容量。 在卷上运行virsh vol-info将显示容量条目中的旧大小和分配条目中的新大小。 这是为什么? 它从来没有像这样。 增加LVM卷会在刷新后传播并可见。 现在,让这个新的大小虚拟机的唯一方法是重新启动,这是不可能的。 我怎样才能使新的尺寸可见? 编辑 OS:Arch Libvirt:1.3.0 Qemu:2.4.1 重新启动libvirt服务也无济于事。 这个卷在libvirt中仍旧显示为旧的大小。 lvs … sswus00-vd0 vga -wi-a—– 200.00g … virsh vol-info –pool pool sswus00-vd0 Name: sswus00-vd0 Type: block Capacity: 100.00 GiB Allocation: 200.00 GiB 所以容量仍然是旧的,VM就是这样。 EDIT2 这真的很奇怪 lsblk显示这个lvm卷的旧磁盘大小 – 100G但lvs显示新的大小 – 200g 逻辑卷组的后端是iSCSI。 所以我想也许重新扫描scsi巴士会有所帮助。 […]
您好最近configuration了一个全新的服务器进行testing: debian jessie(8.3) xen 4.4(xl toolstack) virtinst 我通过virt-install创build并启动了一个新的domU: virt-install \ –network=bridge:br0 \ –name=test1 \ –disk path=/home/xen/tests/test1.qcow2,format=qcow2 \ –boot hd \ –ram 512 \ –vcpus=1 \ –check-cpu \ –hvm \ –graphics vnc,listen=0.0.0.0,port=5901,password="secret" \ –noautoconsole 创build工作正常,VM按预期启动,但不能通过VNC访问domU。 遵循virt-install创build的XML: <domain type='xen'> <name>test1</name> <uuid>53cf8b9b-9fa8-4751-8bea-6c2bf8519b96</uuid> <memory unit='KiB'>524288</memory> <currentMemory unit='KiB'>524288</currentMemory> <vcpu placement='static'>1</vcpu> <os> <type arch='x86_64' machine='xenfv'>hvm</type> <loader type='rom'>/usr/lib/xen/boot/hvmloader</loader> <boot dev='hd'/> </os> <features> […]
我有一个kvm / qemu / libvirt主机,有几个虚拟机在br0上运行愉快,IP地址与192.168.10.0/24所在的主机在同一个networking中。 所以我正在玩CoreOS,并按照他们的集群指南在libvirt上尽可能地运行CoreOS 。 当我尝试使用他们的deploy_coreos_libvirt.sh脚本时,它找不到虚拟networking“default”。 事实上,没有根据virsh net-list定义的虚拟networking。 我的Ubuntu 14.04.4主机没有示例network / default.xml文件,但我的CentOS 7 KVM主机呢。 同样,这两台机器都没有定义虚拟networking。 以下是CentOS 7的示例network / default.xml。 <network> <name>default</name> <bridge name="virbr0"/> <forward/> <ip address="192.168.122.1" netmask="255.255.255.0"> <dhcp> <range start="192.168.122.2" end="192.168.122.254"/> </dhcp> </ip> </network> 所以如果我的物理实验室networking是192.168.10.0/24,我的虚拟networking应该使用什么networking? CoreOS页面上的user_data示例具有“networking”:“10.1.0.0/16”。 我应该在虚拟networkingconfiguration中使用它吗?
我有几个CentOS7的设置,我使用iptables转发端口从主机到客人。 最近,我更新到7.2.1511,似乎libvirt坚持firewalld是积极的,直接使用iptables命令。 以下是我的虚拟networkingVMmaint的XMLconfiguration。 <network connections='11'> <name>VMmaint</name> <uuid>2d218af6-b374-41b3-8a7e-2de7a02e62a9</uuid> <forward dev='em1' mode='nat'> <nat> <port start='1024' end='65535'/> </nat> <interface dev='em1'/> </forward> <bridge name='VMmaint' stp='on' delay='0'/> <mac address='52:54:00:ab:82:15'/> <ip address='192.168.100.1' netmask='255.255.255.0'> <dhcp> <range start='192.168.100.10' end='192.168.100.254'/> <host mac='52:54:00:f7:df:11' ip='192.168.100.11'/> <host mac='52:54:00:f1:bb:18' ip='192.168.100.12'/> <host mac='52:54:00:cf:33:59' ip='192.168.100.13'/> <host mac='52:54:00:57:e2:6a' ip='192.168.100.14'/> <host mac='52:54:00:72:8e:ce' ip='192.168.100.15'/> <host mac='52:54:00:25:3e:34' ip='192.168.100.16'/> <host mac='52:54:00:8a:31:3e' ip='192.168.100.17'/> <host mac='52:54:00:dd:5f:dd' ip='192.168.100.18'/> […]