设为首页 收藏本站
查看: 1347|回复: 0

[经验分享] ubuntu13.10 kvm 虚拟机的安装---命令行下

[复制链接]

尚未签到

发表于 2015-10-10 11:36:50 | 显示全部楼层 |阅读模式
转载更新:http://shidan66.iyunv.com/blog/1848443

       第一步为了保险起见,还是首先看一下CPU是否支持虚拟化,命令:
Bash代码   DSC0000.png DSC0001.gif

  • grep -cE '(vmx|svm)'  /proc/cpuinfo  

grep -cE '(vmx|svm)'  /proc/cpuinfo
输出大于0就说明支持。
       第二步安装KVM相关软件包,运行命令:
Bash代码  

  • sudo apt-get install qemu-kvm libvirt-bin bridge-utils virtinst  

sudo apt-get install qemu-kvm libvirt-bin bridge-utils virtinst        刚开始的时候搞不清KVM相关的几个安装包的关系(其实现在也还不是太懂o(╯□╰)o),网上搜的资料中涉及到的有qemu/qemu-kvm/libvirt-bin/virt-install等,简单说一下我的理解:kvm核心已经进入linux内核,但是只有内核是不能直接使用的,于是KVM使用了另一个虚拟化qemu中的部分代码,来实现对KVM内核的操控,这部分就是qemu-kvm了。而libvirt-bin是一套管理虚拟机的工具(适用于xen和kvm以及其他虚拟化技术),主要包含一套API、一个守护进程libvirtd和一个命令行工具virsh。另外Redhat开发了一个图形界面的管理工具virt-manager,应该是调用的libvirt的api。virt-install(对应的安装包为virtinst)是一个构建虚拟机的工具。另外网上的资料中还提到一个virt-viewer,好像也是基于图形界面的管理工具,我这边儿没有X,不知道跟vert-manager有什么区别。有知道的给留言回告知一下,谢谢。
       安装完上面几个包后,运行下面的命令检测一下安装是否成功:
Bash代码  

  • $sudo kvm-ok  
  • INFO:/dev/kvm existsKVM  
  • acceleration can be used  

$sudo kvm-ok
INFO:/dev/kvm existsKVM
acceleration can be used 如果出现上面的输出,则说明安装没问题。
       第三步,通过如下命令,将用户添加到libvirtd和kvm组中:
Bash代码  

  • sudo adduser `id -un` libvirtd  
  • sudo adduser `id -un` kvm  

sudo adduser `id -un` libvirtd
sudo adduser `id -un` kvm
       第四步,配置网桥,KVM默认的网络配置为NAT,为了使用方便,我们一般需要配置为桥接方式,我的网络配置文件内容如下所示:
Bash代码  

  • auto lo  
  • iface lo inet loopback  
  • auto em1  
  • iface em1 inet manual  
  • auto br0  
  • iface br0 inet static  
  •         address 192.168.0.239  
  •         netmask 255.255.255.0  
  •         gateway 192.168.0.1  
  •         dns-nameservers 192.168.0.5  
  •   
  •         bridge_ports em1  
  •         bridge_stp off  
  •         bridge_fd 0  
  •         bridge_maxwait 0  

auto lo
iface lo inet loopback
auto em1
iface em1 inet manual
auto br0
iface br0 inet static
address 192.168.0.239
netmask 255.255.255.0
gateway 192.168.0.1
dns-nameservers 192.168.0.5
bridge_ports em1
bridge_stp off
bridge_fd 0
bridge_maxwait 0 网上有篇文章中提到,还需要配置qemu-kvm继承CAP_NET_ADMIN capability,如下图所示:

DSC0002.png

不太明白是什么意思,只是照着做了。
       第五步,在创建虚拟机前需要先创建一个磁盘镜像,作为虚拟机的硬盘,通过如下命令创建:
Bash代码  

  • $sudo qemu-img create -f qcow2 /opt/ubuntu.img 100G  

$sudo qemu-img create -f qcow2 /opt/ubuntu.img 100G 生成100G 的centos.img,格式:qcow2。
       第六步,现在可以开始创建虚拟机了,但创建虚拟机前,需要先看一下/etc/libvirt/qemu.conf文件 vnc_listen="0.0.0.0"是否启用,如果没有启用就需要去掉注释启用,否则可能会出现无法使用VNC连接虚拟机的情况。
       下面正式开始创建虚拟机了,使用virt-install命令,如下所示:
Bash代码  

  • $sudo virt-install --name ubuntu-server1 --ram 2048 --arch=i686 --vcpus=2 --check-cpu --os-type=linux --os-variant='ubuntuPrecise' -c /home/hpserver/os-img/ubuntu-12.04-server.iso --disk path=/opt/kvmspace/ubuntu/ubuntu-server-12.04-i386.img,device=disk,bus=ide,format=qcow2 --bridge=br0 --vnc --vncport=5901 --vnclisten=0.0.0.0  

$sudo virt-install --name ubuntu-server1 --ram 2048 --arch=i686 --vcpus=2 --check-cpu --os-type=linux --os-variant='ubuntuPrecise' -c /home/hpserver/os-img/ubuntu-12.04-server.iso --disk path=/opt/kvmspace/ubuntu/ubuntu-server-12.04-i386.img,device=disk,bus=ide,format=qcow2 --bridge=br0 --vnc --vncport=5901 --vnclisten=0.0.0.0
需要注意几个参数:
--os-variant指的是操作系统的类型,ubuntu的要填"ubuntu+版本的代号",redhat的值填“rhel+版本号”,centos的跟对应版本的rhel填一样的就可以了
-c /后面跟的是要安装的系统镜像的位置
--disk path=后面跟的是刚才所创建的磁盘镜像的位置
       除了创建另外也可以通过定义一个虚拟机的xml配置文件,然后通过virsh define *.xml来创建虚拟机。其实在执行完上面的创建命令后,会在系统的/etc/libvirtd/qemu/下面生成一个与你创建的虚拟机的名字同名的xml格式的配置文件。
       创建虚拟机这一步,我遇到了一个错误,内容如下:
Bash代码  

  • Could not access KVM kernel module: Permission denied   
  • failed to initialize KVM: Permission denied   
  • No accelerator found!  

Could not access KVM kernel module: Permission denied
failed to initialize KVM: Permission denied
No accelerator found!可以看出是权限问题,但是不论是sudo还是切换到root,都会出现这个错误,后来网上查了下,做如下处理:
执行 sudo chown root:kvm /dev/kvm
修改/etc/libvirt/qemu.conf,添加 user="root", group="root"
然后重启一下libvirt-bin: sudo service libvirt-bin restart,问题解决了
       第七步,连接虚拟机
       执行完上一步后,虚拟机实际上已经启动了,并且进入系统安装界面,但是由于我是在命令行下,只出现了一个could not open display的提示,并且告知系统已经在安装中,这个时候使用vnc客户端连接虚拟机,本来应该出现安装界面的,但是出现了一个恶心的问题,每次用VNC连接虚拟机,realvnc客户端就直接退出,我可是从官网下的最新版的客户端啊,这个问题困扰了我好久,期间重新安装了几次虚拟机,问题依然出现,后来试着从晚上下了一个老版本的客户端,居然一次性连接成功,顿时无语了。。。
成功运行一个虚拟机后,又开了3个,运行状况良好,只是在给虚拟机安装系统的过程中CPU占用率直奔100%,安装过后立马恢复正常。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-125042-1-1.html 上篇帖子: (KVM连载)4.3.2 qemu-img命令详解 下篇帖子: Kvm管理工具之virsh
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表