2018-12-25


制作kvm镜像(以centos 7 为例)

执行创建虚拟机命令

virt-install --name centos7_kvm --memory  --vcpus= --disk /home/kvm/vm-disk/centos7_kvm.img,format=qcow2,size=  --os-type=linux --os-variant=rhel7 --cdrom /home/kvm/vm-disk/CentOS--x86_64-Minimal-.iso --noautoconsole --vnc --vncport= --vnclisten=0.0.0.0
virsh工具的相关选项说明
--name 虚拟机名称
--memory 内存大小
--vcpus= vcpu个数
--disk 创建硬盘 制定硬盘路径,格式,大小
--network 指定网络(可不加,默认虚拟机正在使用的虚拟网络)
--os-type 指定操作系统类型
--os-variant= 指定操作系统版本
--cdrom 指定光驱安装操作系统
--noautoconsosle 虚拟机创建完毕后不会自动切换tty
--vnc 使用vnc
--vncport vnc端口

创建完虚拟机之后,通过vnc连接虚拟机,完成系统的安装

系统安装完成之后,进入kvm镜像存储目录,本例目录为  /home/kvm/vm-disk/

cd /home/kvm/vm-disk/
virsh list --all   #查看所有kvm虚拟机

 Id    Name                           State
----------------------------------------------------
      centos7_kvm                running

此时虚拟机正在运行,之后查看kvm镜像信息

qemu-img  info centos7_kvm.img 

image: centos7_kvm.img
file format: qcow2
 bytes)
disk size: .9G
cluster_size:
Format specific information:
    compat: 1.1
    lazy refcounts: true

此时可以看出kvm镜像虚拟磁盘大小为20G,实际大小为2.9G

此时异地备份镜像,会发现镜像会按照20G大小传输,不利于我们拷贝镜像

此时可以考虑压缩镜像(只有qcow2和qcow格式的镜像文件才支持压缩)

由于我的kvm镜像是qcow2的格式,我不想改变格式,所以在-O qcow2 时候输出qcow2

qemu-img convert -c  -O qcow2 centos7_kvm.img new-centos7_kvm.img

qemu-img info new-centos7_kvm.img

image: new-centos7_kvm.img
  file format: qcow2
  virtual size: 20G (21474836480 bytes)
  disk size: 989M
  cluster_size: 65536
  Format specific information:
      compat: 1.1
      lazy refcounts: false

kvm镜像虚拟空间也可拓展(raw和qcow2都支持动态的调整磁盘大小,但是qcow2不支持缩减)

[root@localhost vm-disk]# qemu-img resize new-centos7_kvm.img +2G
Image resized.
[root@localhost vm-disk]# qemu-img  info new-centos7_kvm.img
image: new-centos7_kvm.img
file format: qcow2
 bytes)
disk size: 989M
cluster_size:
Format specific information:
    compat: 1.1
    lazy refcounts: false

可见磁盘大小已经拓展(kvm镜像不建议缩减磁盘空间,防止原有数据被破坏而不自知)

kvm镜像格式转换

qcow2转img格式

qemu-img convert -f qcow2 -O raw centos.qcow2  centos.img

vmdk转qcow2格式

qemu-img convert -f vmdk -O qcow2 centos.vmdk  centos.qcow2

其他格式之间相互转换均可参照以上命令转换

制作kvm镜像、格式转换的更多相关文章

  1. KVM镜像image 转换 调整

    qemu-img create -f raw test.raw 8G 创建一个raw格式,大小为8G的镜像. qemu-img info disk1.qcow2     #查看镜像大小及实际占用多少空 ...

  2. Linux的桌面虚拟化技术KVM(四)——虚拟机镜像格式对比与转换

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

  3. OpenStack手动制作CentOS 7 KVM镜像

    在前面讲解KVM的时候,我们已经学习了如何制作KVM镜像,那么制作OpenStack使用的镜像和KVM是有一些区别的. 1.    下载CentOS 7官方ISO安装镜像这里使用国内阿里云的镜像源进行 ...

  4. 完整部署CentOS7.2+OpenStack+kvm 云平台环境(4)--用OZ工具制作openstack镜像

    在部署openstack云平台环境的时候,需要上传镜像到glance. 首先下载iso镜像,这里下载了centos6.5镜像,放到/usr/local/src目录下然后用OZ工具制作openstack ...

  5. qcow2、raw、vmdk等镜像格式的比较和基本转换

    注:本文转自http://www.cnblogs.com/feisky/archive/2012/07/03/2575167.html   云计算用一个朋友的话来说:”做云计算最苦逼的就是得时时刻刻为 ...

  6. 【CI】系列三.宿主机KVM配置及vdi与vmdk格式转换等

    前提:宿主机需要支持虚拟化,如果未打开,则需要重启机器,在bois中打开该项: Ubuntu 及 KVM 相关主要参考官方 https://wiki.ubuntu.com/kvm 另外也可参考该页面: ...

  7. 使用kvm制作Eucalyptus镜像(CentOS 6.5为例)

    1.前言 Elastic Utility Computing Architecture for Linking Your Programs To Useful Systems (Eucalyptus) ...

  8. iSkysoft iMedia Converter Deluxe Mac如何制作视频?视频格式转换工具制作动图的方法

    使用iSkysoft iMedia Converter Deluxe Mac如何制作视频?使用视频格式转换工具,你可以轻松进行动图或视频的制作,也可以把你喜欢的视频的某一段提取出来,制作成你自己风格的 ...

  9. #openstack centos6 centos7 kvm镜像制作

    #openstack centos6 centos7 kvm 镜像制作 openstack windows 2008镜像 制作 http://www.cnblogs.com/elvi/p/800129 ...

随机推荐

  1. jekyll Mac上各种安装问题总结

    Mac上自带了ruby,版本信息如下: qiyongdeMacBook-Air:webproxy qiyong$ ruby -v ruby 2.0.0p481 (2014-05-08 revision ...

  2. c linux ping 实现

    摘自:https://blog.csdn.net/weibo1230123/article/details/79891018 ping的实现和代码分析一.介绍     ping命令是用来查看网络上另一 ...

  3. rabbitMQ日常管理(转)

    原文:http://blog.sina.com.cn/s/blog_790c59140102x5vk.html 一.网页登录方法 http://127.0.0.1:15672/ 用户名和密码默认为gu ...

  4. centos7用fdisk进行分区

    1.查看分区信息:fdisk -l 从上面可以看到,/dev/sdb分区还没有使用,现在将其划分成2个10G的分区. 2.执行:fdisk /dev/sdb 1):fdisk命令参数 p:打印分区表. ...

  5. ASP.NET JSON数据转实体类方式

    实体类 public class FlieList { public string file_unid { get; set; } public string file_name { get; set ...

  6. 深入理解java虚拟机(十三) Java 即时编译器JIT机制以及编译优化

    在部分的商用虚拟机中,Java 程序最初是通过解释器( Interpreter )进行解释执行的,当虚拟机发现某个方法或代码块的运行特别频繁的时候,就会把这些代码认定为“热点代码”.为了提高热点代码的 ...

  7. Vue.js的库,包,资源的列表大全。

    官方资源 外部资源 社区 播客 官方示例 入门 开发工具 语法高亮 代码片段 自动补全 组件集合 库和插件 路由 ajax/数据 状态管理 校验 UI组件 i18n 示例 模板 脚手架 整合 插件/指 ...

  8. redis整理の走进redis世界

    声明:原文摘自http://weibo.com/u/2446082491,谢谢他的分享! 在当前大型互联网应用以及提供云计算服务的时候,怎样保证系统在海量数据环境下的高性 能.高可靠性.高扩展性.高可 ...

  9. Java NIO学习-详细内容(二)

    五.Selector与SelectionKey Selector是SelectableChannel 对象的多路复用器,为什么使用Selector? 仅用单个线程来处理多个Channels的好处是,只 ...

  10. java-03 变量与运算符

    1.java中的变量与常量 1.1 变量的定义: 变量,顾名思义就是会变的量,这种思想来源于数学,指的是一个不确定的量或者随时会改变的量. 在我们进行编程的过程中,有一些东西是会随着实际情况而发生变化 ...