开始使用KVM和QEMU
一. 简介
Quick Emulator(QEMU) 是QEMU/KVM虚拟化套件中的主要组成部分。 它提供了硬件的虚拟化和处理器的仿真。 QEMU不用运行在内核,它是运行在用户空间的。 QEMU支持下面两部操作模式:
1. 完整的系统仿真:QEMU仿真全部的计算机系统,包括CPU类型和外设。
2. 用户模式的仿真,只是运行在不同架构之上的一个进程。
二. 安装和配置QEMU
1. 本节点使用的编译好的包,但在生产环境中,为了做到各KVM服务器版本统一,建议自己编译。
官方网站下载地址:https://www.qemu.org/download/#source
2. 在ubuntu上更新包的索引。
xiodi@c720132:~$ sudo apt-get update
3. 在unbutu上安装包。
xiodi@c720132:~$ sudo apt-get install –y qemu
4. 在centos 上的安装
[root@c720144 ~]# yum install qemu-kvm
5. 从源码包进行安装
(1)下载源码包
[root@c720144 ~]#cd /usr/src
[root@c720144 src]# wget http://download.qemu-project.org/qemu-2.8.0.tar.xz
(2)解压缩,并进入到该目录下。
[root@c720144 qemu-2.8.0]# tar xvJf qemu-2.8.0.tar.xz && cd qemu-2.8.0
(3)配置和编译源码包。
[root@c720144 qemu-2.8.0]# ./configure
[root@c720144 qemu-2.8.0]# make && make install
三. 使用qemu-img管理磁盘镜像
QEMU支持多种不同的镜像格式和提供了工具去创建和管理。
1. 检查支持镜像的类型。
[root@kvm-1 ~]# qemu-img -h | grep Supported
Supported formats: blkdebug blkreplay blkverify bochs cloop dmg file ftp ftps gluster host_cdrom host_device http https iscsi iser luks nbd null-aio null-co parallels qcow qcow2 qed quorum raw rbd sheepdog ssh vdi vhdx vmdk vpc vvfat vxhs
2. 创建一个raw 镜像,命名为debian.img,有10G大小。
[root@kvm-1 ~]# qemu-img create -f raw debian.img 10G
Formatting 'debian.img', fmt=raw size=10737418240
3. 检查 第2步中创建的镜像
[root@kvm-1 ~]# ls -lah debian.img
-rw-r--r-- 1 root root 10G Jun 29 14:19 debian.img
4. 检查镜像的类型
[root@kvm-1 ~]# file -s debian.img
debian.img: data
5. 获得关于镜像的更详细信息。
[root@kvm-1 ~]# qemu-img info debian.img
image: debian.img
file format: raw
virtual size: 10G (10737418240 bytes)
disk size: 0
6. 关于各镜像的简单描述
- raw: raw disk image format. 这是默认的格式 ,也 基于文件系统最快的格式 。有个缺点就是支持的功能不是很多。
- qcow2: 这是一个支持功能最多的格式。比如VM快照,压缩和加密等 。
- qcow: 这是一个老的QEMU 镜像格式 ,也支持镜像系统的压缩、加密等 。
- dmg: 这是苹果磁盘镜像格式。 提供了加密保护和压缩,也是在分布式软件中最常 用的。在虚拟机中用的比较少。
- nbd: 网络块设备 。
- vdi: 这是oracble virtualbox软件常 使用的格式。
- vmdk: 这是VMware磁盘镜像类型。
- vhdx: 这是Hyper-v磁盘镜像类型格式 。
四. 调整镜像大小
1. 获得当前镜像的大小
[root@kvm-1 ~]# qemu-img info debian.img
image: debian.img
file format: raw
virtual size: 10G (10737418240 bytes)
disk size: 0
2. 、对debain.img镜像添加10G空间。
[root@kvm-1 ~]# qemu-img resize -f raw debian.img +10G
Image resized.
3. 检查扩容后的镜像文件
[root@kvm-1 ~]# qemu-img resize -f raw debian.img +10G
Image resized.
[root@kvm-1 ~]# qemu-img info debian.img
image: debian.img
file format: raw
virtual size: 20G (21474836480 bytes)
disk size: 0
开始使用KVM和QEMU的更多相关文章
- kvm与qemu
载请注明出处: http://www.openext.org/2014/04/kvmqemu/ http://blog.csdn.net/muge0913/article/details/245577 ...
- kvm和qemu交互处理io流程
1.IO虚拟化的分类 (1)全虚拟化:宿主机截获客户机对I/O设备的访问请求,然后通过软件模拟真实的硬件.这种方式对客户机而言非常透明,无需考虑底层硬件的情况,不需要修改操作系统. QEMU模拟I/O ...
- KVM和QEMU简介
KVM/QEMU简介 KVM虚拟机是基于linux内核虚拟化,自linux2.6.20之后就集成在linux的各个主要发行版本中.它使用linux自身的调度器进行管理,所以相对于xen,其核心源码很少 ...
- Linux虚拟化技术KVM、QEMU与libvirt的关系(转)
说明:个人理解,KVM是内核虚拟化技术,而内核是不能使用在界面上使用的,那么此时QEMU提供了用户级别的使用界面,相互辅助.当然,单独使用QEMU也是可以实现一整套虚拟机,不过QEMU+KVM基本是标 ...
- kvm和qemu的关系
KVM (Kernel Virtual Machine) is a Linux kernel module that allows a user space program to utilize th ...
- KVM和QEMU的关系(转载)
From:http://blog.sina.com.cn/s/blog_605f5b4f0102uyjv.html KVM是一种基于CPU硬件辅助的全虚拟化技术,没有CPU硬件虚拟化的支持,KVM无法 ...
- 虚拟化技术xen,kvm,qemu区别
虚拟化类型 全虚拟化(Full Virtualization) 全虚拟化也成为原始虚拟化技术,该模型使用虚拟机协调guest操作系统和原始硬件,VMM在guest操作系统和裸硬件之间用于工作协调,一些 ...
- KVM通过qemu实现USB重定向
KVM是通过qemu来支持USB设备的,可以在启动的时候就指定需要连接的USB设备,也可以系统启动后动态的添加删除.通过qemu的help可知,使用qemu的usb_add host:xxx:xxx来 ...
- KVM,QEMU,libvirt入门学习笔记【转】
转自:http://blog.csdn.net/julykobe/article/details/27571387 注:本文内容均来自网络,我只是在此做了一些摘抄和整理的工作,来源均有注明. 0.虚拟 ...
随机推荐
- 【BZOJ1967】[AHOI2005]穿越磁场(最短路)
[BZOJ1967][AHOI2005]穿越磁场(最短路) 题面 BZOJ 洛谷 题解 一个显然的思路是这样的,我们的正方形的边长把整个平面割成了若干块,显然每个联通块都可以看着做一个点,那么接下来只 ...
- bzoj4542: [Hnoi2016]大数(莫队)
这题...离散化...$N$和$n$搞错了...查了$2h$...QAQ 考虑$s[l...r]$,可以由两个后缀$suf[l]-suf[r+1]$得到$s[l...r]$代表的数乘$10^k$得到的 ...
- HDU 6085 bitset
Rikka with Candies Time Limit: 7000/3500 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Other ...
- k8s pod的4种网络模式最佳实战(externalIPs )
[k8s]k8s pod的4种网络模式最佳实战(externalIPs ) hostPort相当于docker run -p 8081:8080,不用创建svc,因此端口只在容器运行的vm ...
- Java基础-Java数据类型
Java基础-Java数据类型 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.数据类型的作用 数据类型就是一组值,以及这一组值上的操作,数据类型可以决定数据的存储方式,取值范围 ...
- [原]JUnit 自定义扩展思路
1. 理解Annotation,http://www.cnblogs.com/mandroid/archive/2011/07/18/2109829.html 2. JUNIT整体执行过程分析,htt ...
- Python3之外部文件调用Django程序操作model等文件实现
import os import sys import django sys.path.append(r'C:\Users\Administrator\PycharmProjects\your pro ...
- Apache的对象复制详解
BeanUtils.copyProperties 和 PropertyUtils.copyProperties 两个工具类都是对两个bean之前存在name相同的属性进行处理,无论是源bean或者目标 ...
- MacOS 下提示APP 损坏 无法安装 解决方法
sudo spctl --master-disable
- spring事务详解(二)实例
在Spring中,事务有两种实现方式: 编程式事务管理: 编程式事务管理使用底层源码可实现更细粒度的事务控制.spring推荐使用TransactionTemplate,典型的模板模式. 申明式事务管 ...