CentOS7 KVM环境下制作qcow2格式镜像_虚拟化之前有介绍KVM虚拟化​​​​

​1、CentOS6系统下部署KVM虚拟化​

​​2、​​CentOS6 KVM虚拟化环境中克隆虚拟机操作说明​​​

3、​​KVM虚拟机Bridge和NAT网络连接模式介绍​​​

4、​​CentOS7环境下使用Cockpit创建KVM虚拟机​下面介绍CentOS7 KVM环境下制作CentOS7 qcow2格式镜像

如果是CentOS7 KVM环境是VMware虚拟机,需要CPU开启虚拟化

CentOS7 KVM环境下制作qcow2格式镜像_centos_021、配置yum镜像源

​wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.cloud.tencent.com/repo/centos7_base.repowget -O /etc/yum.repos.d/epel.repo http://mirrors.cloud.tencent.com/repo/epel-7.repoyum clean allyum makecacheCentOS7 KVM环境下制作qcow2格式镜像_centos_032、安装kvm qemu-img libvirt kvm虚拟化所需环境组件

​yum -y install qemu-kvm  qemu-img kvm qemu-kvm-tools libvirt  bridge-utilsCentOS7 KVM环境下制作qcow2格式镜像_linux_04另外还需要安装​yum install virt-*​,截图略​

3、启动libvirtd​systemctl enable libvirtdsystemctl start libvirtdecho "net.ipv4.ip_forward = 1" >>/etc/sysctl.confsysctl -p

CentOS7 KVM环境下制作qcow2格式镜像_虚拟化_05

4、上传原版CentOS ISO镜像到/data目录

CentOS7 KVM环境下制作qcow2格式镜像_虚拟化_06

5、先创建qcow2镜像文件

​qemu-img create -f qcow2 /data/CentOS7_YF.qcow2 100GCentOS7 KVM环境下制作qcow2格式镜像_虚拟化_076、创建KVM虚拟机

virt-install --name CentOS7_YF --ram 4096 --vcpus 4 --os-type linux --os-variant rhel7 --arch=x86_64 --network network=default,model=virtio --disk path=/data/CentOS7_YF.qcow2,format=qcow2 --location /data/CentOS-7-x86_64-DVD-1908.iso --console pty,target_type=serial   --graphics vnc,listen=0.0.0.0,port=7788CentOS7 KVM环境下制作qcow2格式镜像_centos_08

使用UltraVNC工具连接宿主机的VNC:7788端口,并完成系统的安装,就不详细介绍安装步骤了

CentOS7 KVM环境下制作qcow2格式镜像_虚拟化_09CentOS7 KVM环境下制作qcow2格式镜像_虚拟化_10CentOS7 KVM环境下制作qcow2格式镜像_centos_11CentOS7 KVM环境下制作qcow2格式镜像_虚拟化_12CentOS7 KVM环境下制作qcow2格式镜像_centos_13CentOS7 KVM环境下制作qcow2格式镜像_linux_147、等待虚拟机安装完后,登录查看相关IP磁盘分区信息

CentOS7 KVM环境下制作qcow2格式镜像_centos_158、ssh登录虚拟机进行定制、优化等等

curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.cloud.tencent.com/repo/centos7_base.repocurl -o /etc/yum.repos.d/epel.repo http://mirrors.cloud.tencent.com/repo/epel-7.repoyum install -y acpid net-toolssed -i '/UUID/d' /etc/sysconfig/network-scripts/ifcfg-eth*sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/configsetenforce 0systemctl disable firewalldsystemctl stop firewalldCentOS7 KVM环境下制作qcow2格式镜像_linux_16CentOS7 KVM环境下制作qcow2格式镜像_linux_179、定制化之后关机

CentOS7 KVM环境下制作qcow2格式镜像_linux_18

10、virt-sysprep -d 清理机器信息​virt-syprep -d CentOS7_YFCentOS7 KVM环境下制作qcow2格式镜像_centos_19

11、virt-sparsify compress压缩镜像

virt-sparsify时可能因为默认的/tmp空间不足,会提示tmp不足,可以提前定义好tmp目录

mkdir /data/tmpchmod 1777 /data/tmp/export TEMP=/data/tmpexport TMPDIR=/data/tmpecho 'export TEMP=/data/tmp' >> /etc/profileecho 'export TMPDIR=/data/tmp' >> /etc/profilesource /etc/profileCentOS7 KVM环境下制作qcow2格式镜像_centos_20

virt-sparsify --compress /data/CentOS7_YF.qcow2 /data/CentOS7_YF_allinone.qcow2CentOS7 KVM环境下制作qcow2格式镜像_虚拟化_21可以看到压缩后的allinone.qcow2文件只有763M左右

13、测试镜像文件

virt-install --virt-type kvm --name YuanFan_DIY --ram 4096 --vcpus=4 \ --import \ --disk path=/data/CentOS7_YF_allinone.qcow2,format=qcow2 \--network network=default,model=virtio \ --graphics vnc,listen=0.0.0.0,port=7799 \ --os-type=linuxCentOS7 KVM环境下制作qcow2格式镜像_虚拟化_22vnc连接登录后,qcow2镜像正常可用,那么qcow2镜像就制作完成了