KVM虚拟化
之前有介绍KVM,可以参考历史文章
1、CentOS6系统下部署KVM虚拟化2、CentOS6 KVM虚拟化环境中克隆虚拟机操作说明 3、KVM虚拟机Bridge和NAT网络连接模式介绍 4、CentOS7环境下使用Cockpit创建KVM虚拟机
下面介绍CentOS7 KVM环境下制作CentOS7 qcow2格式镜像
如果是CentOS7 KVM环境是VMware虚拟机,需要CPU开启虚拟化
1、配置yum镜像源
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.cloud.tencent.com/repo/centos7_base.repo wget -O /etc/yum.repos.d/epel.repo http://mirrors.cloud.tencent.com/repo/epel-7.repo yum clean all yum makecache
2、安装kvm qemu-img libvirt kvm虚拟化所需环境组件
yum -y install qemu-kvm qemu-img kvm qemu-kvm-tools libvirt bridge-utils
另外还需要安装virt-*
yum install virt-*
截图略
3、启动libvirtd
systemctl enable libvirtd systemctl start libvirtd echo "net.ipv4.ip_forward = 1" >>/etc/sysctl.conf sysctl -p
4、上传原版CentOS ISO镜像到/data目录
5、先创建qcow2镜像文件
qemu-img create -f qcow2 /data/CentOS7_YF.qcow2 100G
6、创建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=7788
使用UltraVNC工具连接宿主机的VNC:7788端口,并完成系统的安装,就不详细介绍安装步骤了
7、等待虚拟机安装完后,登录查看相关IP磁盘分区信息
8、ssh登录虚拟机进行定制、优化等等
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.cloud.tencent.com/repo/centos7_base.repo curl -o /etc/yum.repos.d/epel.repo http://mirrors.cloud.tencent.com/repo/epel-7.repo yum install -y acpid net-tools sed -i '/UUID/d' /etc/sysconfig/network-scripts/ifcfg-eth* sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config setenforce 0 systemctl disable firewalld systemctl stop firewalld
9、定制化之后关机
history -c poweroff
10、virt-sysprep -d 清理机器信息
virt-syprep -d CentOS7_YF
11、virt-sparsify compress压缩镜像
virt-sparsify时可能因为默认的/tmp空间不足,会提示tmp不足,可以提前定义好tmp目录
mkdir /data/tmp chmod 1777 /data/tmp/ export TEMP=/data/tmp export TMPDIR=/data/tmp echo 'export TEMP=/data/tmp' >> /etc/profile echo 'export TMPDIR=/data/tmp' >> /etc/profile source /etc/profile
virt-sparsify --compress /data/CentOS7_YF.qcow2 /data/CentOS7_YF_allinone.qcow2
可以看到压缩后的allinone.qcow2文件只有763M左右
12、测试镜像文件
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=linux
vnc连接登录后,qcow2镜像正常可用,那么qcow2镜像就制作完成了