kvm安装ubuntu虚拟机错误总结

知识点:kvm的使用,vnc的使用,和错误总结


一,安装虚拟机

1,查看已经安装的虚拟机列表及状态
virsh -c qemu:///system list --all

2,定义虚拟机映像
qemu-img create myname.img 10G

参数-f 可以指定镜像的格式 如: qemu-img create -f qcow2 myname.img 10G

常用的有 raw 和 qcow2。

3,安装虚拟机
virt-install \   

--name ubuntutestname \    \\虚拟机的名字

--hvm \        \\  使用全虚拟化(与para-irtualization向对),不支持xen hypervisor

--ram 1024 \         \\  内存大小

--vcpus 1 \           \\ cpu个数

--disk path=/images/test/disk.img,size=10  \    \\ 之前创建的镜像的路径

--network network:default \                     \\   网络配置

--accelerate  \               

--vnc --vncport=5911 \              \\ 开启vnc 并 配置vnc的端口

--cdrom /images/iso/ubuntu-14.04-server-amd64.iso -d      \\ 设置光驱获取虚拟光驱文件的路径 -d 指示从光驱启动( -c 指示从硬盘启动)

4,接着就开始图形化界面安装ubuntu了

5,管理虚拟机的命令

查看虚拟机列表

virsh -c qemu:///system list --all

启动虚拟机

virsh start ubuntuname 

关闭虚拟机

virsh shutdown ubuntuname 

强制关机,断电源

virsh destroy ubuntuname 

删除虚拟机

virsh undefine ubuntuname 

6,虚拟机迁移

将虚拟机从机器A迁移到虚拟机B上,如果两台机器的kvm环境一样的话。

只需要拷贝两个文件即可:

配置文件ubuntuname.xml  和 镜像文件myname.img 

一般来说配置文件会放在目录下:/etc/libvirt/qemu/ubuntuname.xml  

镜像文件就是之前你创建的镜像文件。

根据两个文件在A上的位置,修改配置文件ubuntuname.xml  :

    <disk type='file' device='disk'>
      <driver name='qemu' type='qcow2' cache='none'/>
      <source file='/mydir/myname.img'/>         #指定虚拟机的硬盘镜像文件的路径
      <target dev='vda' bus='virtio'/>
    </disk>

如果有必要也要修改:

<domain type='kvm' id='20'>    #修改node6的id号
  <name>ubuntutestname </name>           #虚拟机node6的name
  <uuid>4b7e91eb-6521-c2c6-cc64-c1ba72707fc7</uuid>  #uuid必须修改,防止和已有的虚拟机id的冲突

然后运行命令即可:

virsh define ubuntuname.xml  

如果环境配置一样的话,这样迁移很顺利,但是比如由ubuntu14.04上的虚拟机迁移到redhat6就会遇到各种错误,

比较正规的迁移还是要使用自带的迁移命令:virsh migrate 。具体使用可以使用说明


7,修改虚拟机的cpu和内存

virsh setvcpus ubuntutest 2 --maximum 4 --config    # 修改虚拟机cpu
virsh setmaxmem ubuntutest 1048576 --config      # 修改虚拟机内存

# virsh dominfo bbotte  #查看虚拟机信息
Id:             2
Name:           bbotte
UUID:           bd22f444-ee7f-7f00-3d1b-1bb0d0857e43
OS Type:        hvm
State:          running
CPU(s):         4
CPU time:       152.3s
Max memory:     1048576 KiB
Used memory:    524288 KiB
Persistent:     yes
Autostart:      disable
Managed save:   no
Security model: none
Security DOI:   0

二,kvm错误总结

1,无法链接到/var/run/libvirt/libvirt-sock,解决方案如下所示,可能是权限,也可能是服务没哟启动


关于libvirt错误总结和解决方法: http://liuzhijun.iteye.com/blog/1783698

libvirt使用: http://smilejay.com/2013/03/libvirt-configuration-and-usage/

2,无法链接到libvirt服务,注意和上一个的区别,这个是用户目录下的,

注意和前一个区别,是用户目录下的libvirt-sock,一般出现在集群用户上,你不是root用户。


这个原因看virsh命令的   -c  就知道,没有指定到正确的URI解决方案如下:
所有命令加上uri即可:

virsh -c qemu:///system list --all 

virsh -c qemu:///system start ubuntuname 

virsh -c qemu:///system undefine ubuntuname 


另一种解决方案是具体本地配置 certificates,具体的可以参考下面:



需要注意的是,即便是virt-install命令也会报上面的错误,同样是需要指定uri的,如: virt-install  --connect=qeum:///system

不过这次用的是参数--connect 而不是 -c


3,virsh define 失败,找不到emulator

我从ubuntu迁移到redhat6上报错。

最好找一个本地机器上已经安装好的虚拟机配置文件,参考下它的配置文件。



4,虚拟机迁移的时候,需要拷贝镜像文件,镜像文件太大的话,占用空间和传输时间。

可以先本地建立较小的镜像文件,然后上传后,在进行扩容。

http://www.tuicool.com/articles/FnIZJvu

4.5 虚拟机迁移

被迁移的机器成为:sourceVM,所在服务器:source,目标服务器:target,#后是shell命令)
实验环境:
RedHat 6.2

# virsh version
Compiled against library: libvir 0.9.4
Using library: libvir 0.9.4
Using API: QEMU 0.9.4
Running hypervisor: QEMU 0.12.1
 

主要用两种方式,命令行virsh migrate 和图形界面 virt-mamge
命令行比较简单:

#virsh migrate sourceVM qemu+ssh://target/system --live
 
(如果ssh的端口不是默认22,可以写为 qemu+ssh://target:port/system)
No.1 Question::
error: internal error hostname on destination resolved to localhost, but migration requires an FQDN

解决办法很简单,因为默认情况下hostname 是 localhost,我们需要把目标的hostname修改一下,临时的也可以。

#hostname target
 

No.2 Question:
error: internal error Attempt to migrate guest to the same host 00020003-0004-0005-0006-000700080009
这个mail list 里有大牛说是服务器提供商的问题
你可以用#dmidecode -s system-uuid 查看一下这个ID,

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值