yadianna 发表于 2015-4-13 11:58:22

xen 转换 xml 为 conf

  #virsh dumpxml winvm01 > winvm01.xml    # 当前运行的虚拟机 winvm01
#cat winvm01.xml   #导出XML文件
#virsh dumpxml c5vm01 > c5vm01.xml
#cat c5vm01.xml
#virsh -c xen:// domxml-to-native xen-xm winvm01.xml >winvm01.conf
#cat winvm01.conf
#virsh -c xen:// domxml-to-native xen-xm c5vm01.xml >c5vm01.conf
  大体就是先利用xm命令获得虚拟机的名称,然后利用virsh dumpxml获得虚拟机的xml文件;有了此文件就能利用domxml-to-native命令获得本地conf文件了。
  但kvm呢?目前只查到了qemu的:http://libvirt.org/drvqemu.html
  /usr/bin/kvm -S -M pc -m 512 -smp 2 -name i-56D709C5 -uuid fb973678-04e0-f151-e8a6-07c8f2407833 -monitor pty -pidfile /var/run/libvirt/qemu//i-56D709C5.pid -boot c -kernel /opt/eucalyptus/instances/admin/i-56D709C5/kernel -initrd /opt/eucalyptus/instances/admin/i-56D709C5/ramdisk -append root=/dev/vda1 console=ttyS0 -drive file=/opt/eucalyptus/instances/admin/i-56D709C5/disk,if=virtio,index=0,boot=on -net nic,macaddr=d0:0d:56:d7:09:c5,vlan=0,model=virtio -net tap,fd=16,script=,vlan=0,ifname=vnet0 -serial file:/opt/eucalyptus/instances/admin/i-56D709C5/console.log -parallel none -usb -vnc :24101,password
  
  问题已经很明显了,由于rhel的内核版本太低,导致kvm和libvirt版本过低,所以libvirt不支持scsi模式的硬盘,所以改用了virtio格式的硬盘;而virtio格式的硬盘在虚拟机里需要25以上的内核支持,所以创建模板时需要将18的内核替换为25以上的内核,而且切记,不同版本的系统,内核要对号入座。终于清楚了,费了这么大的功夫……
  在使用euca的centos内核启动ns时,mouse和nic还是不正常;在用其自己的18内核时,根本启动不起来。
  利用好virsh命令:
  domxml-from-native Convert native config to domain XML
    domxml-to-native Convert domain XML to native config
    dumpxml         XML 中的域信息
  这些命令都是很有用的。在http://libvirt.org/drvqemu.html上有些说明。利用domxml-from-native进行转换:
  virsh domxml-from-native qemu-argv demo.args
  demo.argv的内容为:kvm -m 512 -drive if=virtio,file=neo_1126.img,index=0,boot=on -boot c -balloon virtio
  转换后的内容如上所示。
页: [1]
查看完整版本: xen 转换 xml 为 conf