利用命令行virt-install来安装虚拟机。
virt-install 是一个使用“libvirt” hypervisor 管理库构建新虚拟机的命令行工具,此工具使用串行控制台,SDL(Simple DirectMedia Layer)图形或者VNC客户端/服务器。
--name 虚拟机名字 --ram内存 --disk(nodisk)存储 vcpus虚拟cpu个数 -u uuid虚拟机唯一编号 --ls-type操作系统类型 --network网络配置 --location安装方式后接安装源 --extra-args 附加到内核命令行参数到安装程序
详细的配置见http://tcqws.blog.51cto.com/4860028/1377074
创建模板机:
#virt-install
--name rhel6.4_base --vcpus=1 --ram=1024
--disk path=/var/lib/libvirt/p_w_picpaths/rhel6.4_base,size=10,format=qcow2
--location="http://192.168.0.1/rhel6.4"
--extra-args="ks=http://192.168.0.1/kickstart/ks.cfg noipv6"
--os-type=linux --os-variant=rhel6
--network bridge=br0,mac=52:54:00:00:00:01
--graphics spice
创建磁盘镜像:
#qemu-img create -f qcow2 -o backing_file=/var/lib/libvirt/p_w_picpath/rhel6.4_base /var/lib/libvirt/p_w_picpath/client
对模板机做快照:
virt-install --name client1 --ram=1024 --vcpus=1
--disk path=/var/lib/libvirt/p_w_picpaths/client1.img
--os-type=linux --os-variant=rhel6
--network bridge=br0,mac=52:54:00:00:00:02
--graphics spice --import &>/dev/null
虚拟机镜像格式:
1.raw:
raw 就是原始的,它直接将文件系统的存储单元分配给虚拟机使用,采取直读直写的策略。在 raw 格式的文件中,虚拟出来的磁盘数据块号的大小决定了该数据块在 raw 文件中的偏移量,也就是说虚拟磁盘存放数据的顺序和 raw 文件中存放数据的顺序是一致的,由于这个特性,VBA 到 IBA 的转换比较简单,而 IBA 实际上就是 PBA。在很多的实际应用中,模板镜像采用 raw 格式,以提高模板镜像的读性能,而增量镜像则使用其他格式,方便支持其他辅助特性。
raw 格式的优点有: 一是寻址简单,访问效率较高; 二是可以通过格式转换工具方便地转换为其他格式; 三是可以方便地被宿主机挂载,可以在不启动虚拟机的情况下和宿主机进行数据传输。但是,由于 raw 格式实现简单,不支持诸如压缩、快照、加密和 CoW 等特性,另外,raw 格式文件在创建时指定大小之后,就占用了宿主机指定大小的空间,而不像 qcow2等稀疏模式的镜像格式可以从很小的文件按需地增长。
4.qcow2:
现在比较主流的一种虚拟化镜像格式,经过一代的优化,目前qcow2的性能上接近raw裸格式的性能。
对于qcow2的格式,几点还是比较突出的,qcow2的snapshot,可以在镜像上做N多个快照。更小的存储空间,即使是不支持holes的文件系统也可以。支持多个snapshot,对历史snapshot进行管理。支持zlib磁盘的压缩。支持AES加密。
3.vmdk:
vmdk 是 VMware 实现的虚拟机镜像格式,与 qcow2 类似,vmdk 也可以支持 CoW、快照、压缩等特性,镜像文件的大小也是随着数据写入操作的增长而增长,数据块的寻址也需要通过两次查询。