QEMU简介

QEMU是一款开源的模拟器及虚拟机监管器(Virtual Machine Monitor,  VMM)。QEMU主要提供两种功能给用户使用。一是作为用户态模拟器,利用动态代码翻译机制来执行不同于主机架构的代码。二是作为虚拟机监管器,模拟全 系统,利用其他VMM(Xen, KVM, etc)来使用硬件提供的虚拟化支持,创建接近于主机性能的虚拟机。

是x86架构且硬件支持虚拟化技术(如 intel VT 或 AMD-V)的Linux全虚拟化解决方案。
它包含一个为处理器提供底层虚拟化 可加载的核心模块kvm.ko(kvm-intel.ko或kvm-AMD.ko)。
KVM还需要一个经过修改的QEMU软件(qemu-kvm),作为虚拟机上层控制和界面。
在主流的Linux内核,如2.6.20以上的内核均已包含了KVM核心。
KVM能在不改变linux或windows镜像的情况下同时运行多个虚拟机。(它的意思是多个虚拟机使用同一镜像)并为每一个虚拟机配置个性化硬件环境(网卡、磁盘、图形适配器……)。

基本原理
    QEMU作为系统模拟器时,会模拟出一台能够独立运行操作系统的虚拟机。如下图所示,每个虚拟机对应主机(Host)中的一个QEMU进程,而虚拟机的vCPU对应QEMU进程的一个线程。

系统虚拟化最主要是虚拟出CPU、内存及I/O设备。虚拟出的CPU称之为vCPU,QEMU为了提升效率,借用KVM、XEN等虚拟化技术,直接利用硬件对虚拟化的支持,在主机上安全地运行虚拟机代码(需要硬件支持)。

QEMU 参数介绍

QEMU 创建步骤

1)安装虚拟化管理器(ps:保证KVM虚拟机管理器已安装完毕,安装步骤很简单,本次就不多说了,敬请谅解。)

2)配置桥接网卡

实验环境为redhat 6.4企业版本
# yum install  "bridge-utils"
注释:安装桥接工具#service libvirtd start
注释:启动桥接服务#chkconfig libvirtd on
注释:永久开启!不然系统重启后不会自动启动这个服务的哟~# virsh  iface-bridge eth0 br0
注释:创建网络桥!验证:
ifconfig   br0
注释:观察IP地址是否跑到了br0网卡上!

示例:

[root@liker ~]# ifconfig br0
br0       Link encap:Ethernet  HWaddr 54:04:A6:CE:C1:6C                                inet addr:172.16.120.100  Bcast:172.16.120.255  Mask:255.255.255.0inet6 addr: fe80::5604:a6ff:fece:c16c/64 Scope:Link                              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1                      RX packets:148 errors:0 dropped:0 overruns:0 frame:0                          TX packets:77 errors:0 dropped:0 overruns:0 carrier:0                           collisions:0 txqueuelen:0                                                                        RX bytes:30827 (30.1 KiB)  TX bytes:6850 (6.6 KiB)

3)关闭防火墙

 #service iptables stop#setenforce 0

4)安装虚拟机

创建磁盘:
qemu-img create -f qcow2 -o preallocation=metadata /var/lib/libvirt/p_w_picpaths/diskname.houzhui 8G

1.参数介绍:

-f qcow2                       注释:指定虚拟机硬盘格式,qcow2格式支持虚拟机快照功能!
-o preallocation=metadata      注释:不立即占用磁盘空间!
-o preallocation=full          注释:立即占用磁盘空间!
diskname.houzhui               注释:磁盘文件的名字,注意位置:/var/lib/libvirt/p_w_picpaths/
8G                             注释:磁盘大小以G为单位!

2.安装方法一(图形化):

virt-install
--graphics
vnc,listen=0.0.0.0,port=5920
-n test0
--os-type=linux
--os-variant=rhel6
-r 512
--arch=x86_64
--vcpus=1
-f /var/lib/libvirt/p_w_picpaths/diskname.houzhui
-w bridge=br0
-l ftp://172.16.1.100/rhel6.4
-x "console=ttyS0"

ps1: /var/lib/libvirt/p_w_picpaths/diskname.houzhui必须跟创建磁盘的路径名一样。

ps2: console=ttyS0大小写不能写错,0是零,不是大写的O。

3.安装方法二(纯文本):

virt-install
--nographics                           #安装过程不要图形
-n rhel6                               #虚拟机标签名称
--os-type=linux                        #系统类型
--os-variant=rhel6                     #系统版本
-r 512                                 #内存大小
--arch=x86_64                          #64 or 32位
--vcpus=1                              #CPU数量
-f /var/lib/libvirt/p_w_picpaths/rhel6.img   #之前创建的硬盘位置和名字
-w bridge=br0                          #桥接网卡名字
-l ftp://172.16.8.100/rhel6.4          #安装源
-x "console=ttyS0"                     #在本控制显示安装过程

ps:-x参数后面可添加kickstart参数,本次暂时忽略。

4.虚拟机使用方法

virsh  destroy       虚拟机名        #关闭虚拟机
virsh  undefine      虚拟机名        #删除虚拟机
virsh  start         虚拟机名        #开启虚拟机
virsh   list   --all 显示所有虚拟机
virsh   console      虚拟机名        #连接虚拟机

ps:virsh详细参数本次暂时忽略。

5)qemu常用方法——快照

1)将虚拟机关机!!!
2)确认磁盘文件是不是QCOW2格式的,RAW格式不支持快照
3)转换:qemu-img convert -f raw -O qcow2    raw磁盘名  qcow2磁盘名
#qemu-img snapshot -c name   /var/lib/libvirt/p_w_picpath/disk_name     创建快照
#qemu-img snapshot -l  /var/lib/libvirt/p_w_picpath/disk_name           查看快照
#qemu-img snapshot -a name   /var/lib/libvirt/p_w_picpath/disk_name     还原
#qemu-img snapshot -d name   /var/lib/libvirt/p_w_picpath/disk_name     删除
#qemu-img info vmname.raw                                         查看镜像信息
#

结束语:

  • Qemu是一个广泛使用的开源计算机仿真器和虚拟机。

  • 当作为仿真器时,可以在一种架构(如PC机)下运行另一种架构(如ARM)下的操作系统和程序。通过动态转化,可以获得很高的运行效率,但是在某些功能方面Qemu也不是很完善,希望后续版本会有所改进吧。

  • 当作为一个虚拟机时,qemu可以通过直接使用真机的系统资源,让虚拟系统能够获得接近于真机的性能表现。qemu支持xen或者kvm模式下的虚拟化。当用kvm时,qemu可以虚拟x86、服务器和嵌入式powerpc,以及s390的系统。

至此,Qemu的简单操作介绍完毕。

转载于:https://blog.51cto.com/zyxjohn/1737996

KVM之初体验——QEMU安装虚拟机相关推荐

  1. Synopsys初体验——软件安装篇

    Synopsys初体验--软件安装篇 前言 一.虚拟机VMware的安装与使用 1.软件安装 2.创建自己的虚拟机 二.Synopsys系列软件的安装 前言 时光飞逝,转眼间已经是将要毕业的人了.之前 ...

  2. 我的Go+语言初体验——ubuntu安装Go+环境问题锦集(二)

    欢迎大家参与[我的Go+语言初体验]活动: 活动地址:[https://bbs.csdn.net/topics/603464006?utm_source=1594742339] 本文为大家带来[Go+ ...

  3. XENAPP 7.6 和XENDESKTOP 7.6 初体验之一 安装

    阅读全文 环境: 服务器操作系统:Microsoft Windows Server 2012 R2 Datacenter vCPU: 2 Cores(E5-2620 @ 2.0GHz) vRAM:4G ...

  4. ubuntu 配置桥接网卡_ubuntu下使用qemu安装虚拟机并配置桥接网络

    一.虚拟机的创建:       1.ubuntu下安装好qemu后,使用如下命令创建虚拟机: qemu-img create -f qcow2 voltdb.img 10g -f qcow2是指:qe ...

  5. 在KVM中使用ISO镜像安装虚拟机(命令行)

    注:本文在CentOS系统中安装,其他Linux基本类似 1.打开命令终端,使用超级权限运行命令,安装KVM组件 yum install qemu-kvm qemu-kvm-tools libvirt ...

  6. 【1】一铭操作系统初体验,安装jav…

    放入光盘启动的时候,略有些云里雾里. 选择第一个选项才是正确的.后面的2个一键安装总给我感觉太过于自动,生怕抹掉了原来的win7操作系统. 安装很快完成. 目前这个版本很可惜,缺乏对win快捷键的支持 ...

  7. v语言初体验,安装,使用

    6.23号v发布当天并没有安装使用,只是简单阅读了一下文档,6.23号看还是0.0.12版本,今天已经更新到0.1.1,前期的版本的更新确实很快,今天体验一下 由于是发布不久,目前还没有打包好的可执行 ...

  8. 【3】一铭操作系统初体验,安装ope…

    经过[1]和[2]的步骤以后,已经安装了众多的依赖包 也许opengl开发包已经安装在里面了.ubuntu11.10启动vbox报错libGL.so.1的问题 #find / -name libGL. ...

  9. EdgeCloudSim初体验之安装及初步使用

    论文中需要一个专门针对于边缘计算模块的仿真测试平台,所以找到了一个EdgeCloudSim的开源平台,又是基于Java进行开发的,觉得很不错,但是中文网络环境中好像还没有对其的教程,在下不才,打算写一 ...

最新文章

  1. 怎么获取html的某个元素,MSHTML怎么获取一个网页元素对象
  2. NLP/CV模型跨界,视觉Transformer赶超CNN?
  3. 54款开源服务器软件(内容管理、数据库、电子商务、邮件服务器、文件传输、操作系统、安全、小公司服务 .
  4. 利用ida python 实现复原函数调用的参数 (仅对数据被简单硬编码有效)
  5. 【C语言笔记初级篇】第八章:简单调试
  6. 【NIPS 2020】Generalized Focal Loss: Learning Qualified and Distributed Bounding Boxes for...译读笔记
  7. 手把手教你用 Python 绘制酷炫的桑基图!
  8. 2021线报天下 原创工具 (免费版本,无版权问题)
  9. 电子计算机发明于20世纪什么年代,电子计算机发明于哪一年
  10. 古诗词鉴赏,断句的重要性
  11. HarmonyOS之深入解析相机的功能和使用
  12. 网络其他计算机无法访问,win7局域网别人无法访问我的电脑是为什么_win7其他电脑无法访问我的电脑如何修复-win7之家...
  13. 【华为HCIE证书难考吗?】
  14. 官方免费的正版Xshell,人人都可以马上拥有
  15. 【Linux性能分析】火焰图(Flame Graphs)的安装和基本用法
  16. 2014年网研上机题目
  17. 遍历SD卡寻找自己想要的文件
  18. 转:15条优化电脑系统开机速度方法
  19. 2k2实用球员_nba2kol2实用球员
  20. 5G网络安全认证体系研究

热门文章

  1. rsync的介绍及参数详解,配置步骤,工作模式介绍
  2. tensorflow学习笔记一:安装调试
  3. ANDROID调用webservice带soapheader验证
  4. Android——基于监听器的事件处理(转)
  5. POJ3259-负权回路判定
  6. Event Handling Guide for iOS——由触摸事件传递想到的
  7. AutoHotKey在魔兽中显示文字或图片
  8. SetWinEventHook和SetWindowsHookEx的异同[转]
  9. chart控件做实时曲线显示_组态王实时趋势曲线控件介绍,让你对此不再陌生
  10. ubuntun opencv 编译成64_19、OpenCV图像平滑处理