Linux的桌面虚拟化技术KVM(一)——新建KVM虚拟机

Linux的桌面虚拟化技术KVM(二)——远程桌面管理

Linux的桌面虚拟化技术KVM(三)——KVM虚拟机克隆和快照

(1).常用镜像格式对比

  目前常用虚拟机镜像格式:raw、cow、qcow、qcow2、vmdk。

 1)raw

  raw格式:老牌的镜像格式,用一个字来说就是裸,也就是赤裸裸,你随便dd一个file就模拟了一个raw格式的镜像。由于裸的彻底,性能上来说的话还是不错的。centos6上KVM和XEN默认的格式还是这个格式。centos7以上默认是qcow2 。

  裸的好处还有就是简单,支持转换成其它格式的虚拟机镜像对裸露的它来说还是很简单的(如果其它格式需要转换,有时候还是需要它做为中间格式),空间使用来看,这个很像磁盘,使用多少就是多少(du -h看到的大小就是使用大小)。
  例: qcow2 转为 vmdk 方法是: qcow2 转为 raw ,然后把raw转为vmdk 。也可以直接qcow2转为vmdk

  佳能相机上的高保真用的就是这格式。RAW的原意就是“未经加工”。可以理解为:RAW图像就是CMOS或者CCD图像感应器将捕捉到的光源信号转化为数字信号的原始数据。RAW理解为“数字底片”

  缺点:不支持snapshot快照。

 2)cow、qcow、qcow2

  cow格式:还没有成熟,就被放弃了。后来被qcow格式所取代。

  qcow格式:刚刚出现的时候有比较好的特性,但其性能和raw格式对比还是有很大的差距,目前已经被新版本的qcow2取代。

  qcow2格式:现在比较主流的一种虚拟化镜像格式,经过一代的优化,目前qcow2的性能上接近raw裸格式的性能。qcow2格式支持snapshot快照,可以在镜像上做多个快照,具有以下优点:更小的存储空间;支持创建image镜像;支持多个snapshot快照,对历史snapshot进行行管理;支持zlib的磁盘压缩;支持AES的加密。

 3)vmdk

  vmdk格式:VMware的格式,整体性能最好,因为VMware就是做虚拟化起家。从性能和功能上来说,vmdk应该算最出色的,由于vmdk结合了VMware的很多能力,目前来看,KVM和XEN使用这种格式的情况不是太多。但就VMware的企业级虚拟化Esxi来看,它的稳定性和各方面的能力都很好。

(2).常用镜像格式转换

  格式转换使用qemu-img convert -f [源镜像格式] -O [目标镜像格式] [源镜像地址] [目标镜像地址]

  例如,将centos7.0由qcow2格式转换为raw格式

[root@youxi1 ~]# qemu-img convert -f qcow2 -O raw /var/lib/libvirt/images/centos7.0.qcow2 /var/lib/libvirt/images/centos7.0.raw
[root@youxi1 ~]# qemu-img info /var/lib/libvirt/images/centos7.0.raw
image: /var/lib/libvirt/images/centos7.0.raw
file format: raw  //可以看到格式已经变了
virtual size: 10G (10737418240 bytes)
disk size: 1.3G

  注意:如果修改了镜像格式,需要去修改其相应的配置文件才能使用。

  修改配置文件的方法一:该方法不需要重启libvirtd服务

[root@youxi1 ~]# virsh edit centos7.0
//修改第33~34行
<driver name='qemu' type='raw'/>
<source file='/var/lib/libvirt/images/centos7.0.raw'/>

  修改配置文件的方法二:该方法需要重启libvirtd服务

[root@youxi1 ~]# vim /etc/libvirt/qemu/centos7.0.xml
//修改第40~41行
<driver name='qemu' type='raw'/>
<source file='/var/lib/libvirt/images/centos7.0.raw'/>
[root@youxi1 ~]# systemctl restart libvirtd

  

Linux的桌面虚拟化技术KVM(四)——虚拟机镜像格式对比与转换的更多相关文章

  1. Linux的桌面虚拟化技术KVM(三)——KVM虚拟机克隆和快照

    Linux的桌面虚拟化技术KVM(一)——新建KVM虚拟机 Linux的桌面虚拟化技术KVM(二)——远程桌面管理 (1).KVM虚拟机克隆 KVM虚拟克隆命令virt-clone [选项] 常用选项 ...

  2. Linux的桌面虚拟化技术KVM(五)——virsh常用命令

    Linux的桌面虚拟化技术KVM(一)——新建KVM虚拟机 Linux的桌面虚拟化技术KVM(二)——远程桌面管理 Linux的桌面虚拟化技术KVM(三)——KVM虚拟机克隆和快照 Linux的桌面虚 ...

  3. Linux的桌面虚拟化技术KVM(二)——远程桌面管理

    Linux的桌面虚拟化技术KVM(一)——新建KVM虚拟机 远程桌面管理,指的是远程图形界面管理,所以要保证物理机要有图形化界面. (1).VNC管理 安装VNC-server服务,并进行配置 [ro ...

  4. Linux的桌面虚拟化技术KVM(一)——新建KVM虚拟机

    (1).虚拟化产品对比介绍 虚拟化技术有以下三种:仿真虚拟化,这是一种对系统硬件没有要求,但性能最低的虚拟化技术:半虚拟化,这是一种直接使用物理硬件,性能高,但需要修改内核的虚拟化技术:全虚拟化,这是 ...

  5. 关于Linux虚拟化技术KVM的科普

    虚拟化技术应用越来越广泛,虚拟化技术需求越来越强劲.KVM.XEN.Docker等比较热门,尤其是KVM技术越来越受欢迎. 基于此背景,了解一下KVM+QEMU就有点必要了. 从网上收集了一些资料进行 ...

  6. 关于Linux虚拟化技术KVM的科普 科普四(From humjb_1983)

    另一组关于KVM的分析文档,虚拟化相关概念.KVM基本原理和架构一-概念和术语.KVM基本原理和架构二-基本原理.KVM基本原理及架构三-CPU虚拟化.KVM基本原理及架构四-内存虚拟化.KVM基本原 ...

  7. 关于Linux虚拟化技术KVM的科普 科普三(From OenHan)

    http://oenhan.com/archives,包括<KVM源代码分析1:基本工作原理>.<KVM源代码分析2:虚拟机的创建与运行>.<KVM源代码分析3:CPU虚 ...

  8. Linux虚拟化技术KVM、QEMU与libvirt的关系(转)

    说明:个人理解,KVM是内核虚拟化技术,而内核是不能使用在界面上使用的,那么此时QEMU提供了用户级别的使用界面,相互辅助.当然,单独使用QEMU也是可以实现一整套虚拟机,不过QEMU+KVM基本是标 ...

  9. 关于Linux虚拟化技术KVM的科普 科普一(先用起来!)

    是骡子是马是拉出来溜溜,通过<KVM虚拟化技术之使用Qemu-kvm创建和管理虚拟机>跑一遍,就会对KVM.QEMU-KVM有个大概的认识了. qemu-kvm已经不单独存在,qemu加上 ...

随机推荐

  1. 题解 UVa11388

    题目大意 \(T\) 组数据,每组数据给定两个整数 \(G,L\),输出数对 \(x,y\) 满足 \(GCD(x,y)=G,LCM(x,y)=L\) 且 \(x\) 最小.若无解则输出 \(-1\) ...

  2. RookeyFrame 添加 导入功能

    我遇到的情况: 我在‘模块管理’里面, 把模块‘客户联系人’的‘允许导入’勾上,保存后,在‘客户联系人’页面没有导入按钮, 模块‘客户主数据’却可以, 这是为什么额?两个模块都是线下创建的,是哪儿不一 ...

  3. 洛谷 P1376 机器工厂 题解

    P1376 机器工厂 题目描述 小T开办了一家机器工厂,在N(N<=10000)个星期内,原材料成本和劳动力价格不断起伏,第i周生产一台机器需要花费Ci(1<=Ci<=5000)元. ...

  4. 【概率论】5-7:Gama分布(The Gamma Distributions Part I)

    title: [概率论]5-7:Gama分布(The Gamma Distributions Part I) categories: - Mathematic - Probability keywor ...

  5. Pro自定义数据源原理

    1.  概念 Connector:定义连接到一个数据源的连接信息,用于创建datastore. Datastore:代表一个数据源的实例,用于打开一个或多个tables或feature class. ...

  6. ArcGIS分支版本化( Branch Versioning )技术介绍

    概述 分支版本化技术是有别于传统的SDE版本化技术,它用于支持WebGIS模式下的多用户长事务编辑. 优势功能 使用分支版本化技术将获得以下功能 1. 支持长事务的编辑. 2. 支持Undo和Redo ...

  7. Pytest权威教程-更改标准(Python)测试发现

    目录 更改标准(Python)测试发现 在测试收集过程中忽略路径 测试期间收集的测试取消 保留从命令行指定的重复路径 更改目录递归 更改命名约定 将cmdline参数解释为Python包 找出收集的东 ...

  8. kubernetes架构和组件

    一.Kubernetes整体架构 Kubernetes属于主从分布式架构,主要由Master Node和Worker Node组成,以及包括客户端命令行工具kubectl和其它附加项. Master ...

  9. gisoracle做windows界面

    import tkinter as tk from tkinter import messagebox # 设置窗口居中 def window_info(): ws = window.winfo_sc ...

  10. [设计原则与模式] 面向对象程序设计之五大原则(SOLID)

    cp from:  https://blog.csdn.net/zhangbuzhangbu/article/details/51719952 S.O.L.I.D是面向对象设计和编程(OOD& ...