Articles of libvirt

OpenNebula无法在重启后启动虚拟机

我在一个新的Debian上安装了Debian-7-opennebula-4.4.0-1.tar.gz的全新安装,并通过sunstone启动了一个虚拟机。 libvirt的输出是: 2013-12-26 12:48:12.919+0000: starting up LC_ALL=C PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin HOME=/root USER=root LOGNAME=root QEMU_AUDIO_DRV=none /usr/bin/kvm -S -M pc-1.1 -enable-kvm -m 1024 -smp 1,sockets=1,cores=1,threads=1 -name one-30 -uuid f12869a4-52e0-0568-9a04-53986c8c73c9 -no-user-config -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/one-30.monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=utc -no-shutdown -device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -drive file=/var/lib/one//datastores/0/30/disk.0,if=none,id=drive-ide0-0-0,format=raw,cache=none -device ide-hd,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0,bootindex=1 -drive file=/var/lib/one//datastores/0/30/disk.1,if=none,id=drive-ide0-0-1,readonly=on,format=raw,cache=none -device ide-cd,bus=ide.0,unit=1,drive=drive-ide0-0-1,id=ide0-0-1 -drive file=/var/lib/one//datastores/0/30/disk.2,if=none,id=drive-ide0-1-0,readonly=on,format=raw -device ide-cd,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0 -netdev tap,fd=20,id=hostnet0 -device rtl8139,netdev=hostnet0,id=net0,mac=02:00:0a:0a:00:04,bus=pci.0,addr=0x3 -vnc 0.0.0.0:30 -vga […]

将公有IP分配给虚拟机guest

我有一组虚拟机的公共IP地址。 每个独特的公共IP被分配给一个独特的客人。 通过桥接networking,我可以与KVM机器共享eth0。 ifcfg-eth0文件具有configuration: DEVICE=eth0 ONBOOT=yes BRIDGE=br0 HWADDR=b8:ac:6f:65:31:e5 DNS1=8.8.8.8 TYPE=Ethernet ifcfg-br0文件具有configuration: DEVICE=br0 TYPE=Bridge BOOTPROTO=static ONBOOT=yes IPADDR=121.33.7.1 GATEWAY=121.33.7.0 NETMASK=255.255.255.0 DELAY=0 DNS1=8.8.8.8 我使用默认的libvirtnetworking文件,返回一个网桥摘要 bridge name bridge id STP enabled interfaces br0 8000.705240103540 no eth0 virtual-machine-0 virtual-machine-1 virtual-machine-2 virtual-machine-3 它适用于来宾连接和传出连接的客人。 但是configuration的问题是,如果一个guest虚拟机在另一个公有ip上更改他的networking文件,他将能够获得最初没有分配给他的vm的ip。 如何将特定的公共IP分配给访客networking接口?

<virtualport type ='openvswitch'/>不被识别

为了让我的虚拟机使用openvswitch接口,我必须添加以下几行到一个虚拟机xmlconfiguration文件: <source bridge='ovsbr'/> <virtualport type='openvswitch'/> 我编辑文件,无论如何,而第一行是保存,第二个不是。 它只是消失,所以我认为虚拟端口标记不被识别…但是这会导致错误,当我启动虚拟机。 xml规范是否改变了? 或者我做错了什么? 这是输出 virsh –version=long libvirt 0.9.8的Virsh命令行工具请访问网站http://libvirt.org/ Compiled with support for: Hypervisors: Xen QEmu/KVM UML OpenVZ LXC Test Networking: Remote Daemon Network Bridging Nwfilter VirtualPort Storage: Dir Disk Filesystem SCSI Multipath iSCSI LVM Miscellaneous: AppArmor Secrets Debug Readline

是否有任何完整的教程,用于通过命令行设置从pipe理程序到主机的完整QEMU-KVM?

我已经find了有关如何从头开始使用virt-install ,或者几乎像http://virt-tools.org/learning/install-with-command-line/ 但是,我坚持在第一部分完成后,通过virsh连接到VM。 大多数教程使用graphics客户端,我希望能够在没有UI层的远程服务器上完成。 这甚至有可能吗?

如何在QEMU上将URL作为CD-ROM安装?

我想知道是否可以在QEMU上指定cdrom选项的URL,如果有的话,我该怎么做呢? 通常我会像这样安装一个iso: <disk type='file' device='cdrom'> <source file='/path/to/iso'/><target dev='hdc'/><readonly/> </disk> 不过,我认为,如果只读取它不需要在本地的FS上,一定要有一个好的方法来挂载一个URL。 想法? 我打开试图随机的build议…

不能在virt-manager中添加任何virtio光盘,如何修复?

我刚刚在Debian的sid系统上安装了virt-manager和libvirt-bin(以及相关的软件包),并且还有一个奇怪的问题,我还没有看到另一个类似的安装: 当创build一个新的虚拟机时,我得到一个IDE盘和一个RTL8139网卡。 我可以改变网卡的types为virtio,没问题,但我不能添加virtio光盘。 我所提供的是IDE光盘/ CD,软盘,SCSI光盘,USB光盘。 如何解决这个问题? 我是否意外地缺less任何补充包? 澄清:我有一个光盘映像,我可以添加到VM,没问题,只是我想添加它作为virtio光盘,而不是IDE光盘。 没有文件系统权限问题或任何东西。

检查vps访客内存使用情况和CPU使用情况

我有vps的客人,由KVM和libvirtpipe理。 使用virt-df,我能够检查每个vps guest虚拟机的真实磁盘使用情况。 #virt-df [–options] -d domname 有没有类似的工具来检查内存使用情况和CPU使用情况? 我尝试了virt-top,但是它返回的cpu%和mem%大多小于1%,这是不太准确的。

dnsmasq(作为DHCP服务器)在KVM + libvirt envirmont中不起作用

我在VM环境中使用dnsmasq作为DHCP服务器。 但它没有工作。 我禁用了libvirt中的基本DHCPfunction。 <network> <name>default</name> <uuid>84da0678-e56d-8fc2-6f8b-e8eba784849a</uuid> <forward mode='nat'/> <bridge name='virbr0' stp='on' delay='0' /> <mac address='52:54:00:7B:64:0B'/> <ip address='192.168.122.1' netmask='255.255.255.0'> </ip> </network> 正如你所看到的,我删除了这个标签! <dhcp> <range start='192.168.122.2' end='192.168.122.254' /> </dhcp> 我在主机上安装了dnsmasq。 (dnsmasq:无法为127.0.0.1创build监听套接字)所以我将注释掉了listen-address选项,并添加了dhcp-range / dhcp-option选项,就像这样。 listen-address=127.0.0.1 dhcp-range=192.168.122.100,192.168.122.200,24h dhcp-option=option:router,192.168.122.1 这就是我所做的与dnsmasq。 但guest虚拟机无法获得dnsmasq服务器正在运行的主机的IP地址。 之后,我安装了isc-dhcp-server而不是dnsmasq ….并且它可以正常工作! 但我仍然想使用dnsmasq而不是isc-dhcp-server。 有帮助吗? 我禁用了主机的防火墙。 我听说libvirt基本上使用dnsmasq。 这是为什么我不能在libvirt环境中使用dnsmasq的原因吗?

我如何使Windows Server 2012在KVM启动时使用virtio而不是IDE运行?

我在Ubuntu 14.04的KVM上运行Windows Server 2012 Essentials。 我在Ubuntu 14.04的KVM上遇到了Windows Server 2012的一些问题。 运行一段时间,然后放慢速度 我还没有取得太多的进展,但我想我会尝试将磁盘从virtio更改为IDE,以防Windows 2008上的virtio出现问题。这似乎没有帮助,所以我现在想回到virtio为了更好的performance。 现在的问题是,只有C:驱动器是IDE才能启动。 如果我使用virsh将我的C:驱动器设置为virtio,则Windows开始启动,但出现修复屏幕。 如果我转到命令提示符,则diskpart将报告没有磁盘。 显然是被遗忘的virtio驱动程序有点奇怪,因为我有d:e:和f:驱动器,它们仍然在运行virtio,所以驱动程序在那里并且安装,但是在启动的时候没有像以前那样被识别。 我最初在安装开始的时候安装了virtio驱动程序,当时我有机会点击一个按键并安装驱动程序。 我怎样才能让它再次识别virtio驱动程序? 我基本上是作为IDE安装它的人,现在想移动到virtio。 这个video似乎有一个解决scheme。 https://www.youtube.com/watch?v=tlh4zxqfvhk&feature=youtu.be他在安装光盘上启动并返回该驱动程序提示符,安装驱动程序并退出。 当我尝试,并点击“安装”button,它会提示我input我的Windows注册码,然后告诉我删除CD并重新启动。 我从来没有得到驱动程序提示。 是否值得创build另一个分区,安装一个最低限度的Windows 8,启动,确保我的原始C:驱动器具有virtio驱动程序,然后将其标记为活动并重新启动? 我已经看过那种程序了。 还有什么其他的“诀窍”回到我所在的位置。 谢谢

重新启动HOST上的networking使GUEST失去连接

我可能会错过一些东西,但有一个KVM虚拟化HOST / GUEST设置。 GUEST正在主机上使用网桥(br0)进行互联网连接。 当我在主机上进行“/etc/init.d/networking stop; sleep 5; /etc/init.d/networking start”时,GUEST失去了互联网连接。 – 当我重新启动主机,而不是做一个networking停止/启动“然后客人是好的。 注意:也尝试了“ifdown br0; sleep 5; ifup br0”,GUEST总是失去连通性仍然肯定我在这里丢失了一些不重新启动或者用libvirt工作的东西,但是什么? 提前致谢。