利用已经存在的kvm虚拟机创建模板快速创建一个新的虚拟机

一、制作模板

  • 制作镜像模板
[root@lwq kvm]# cp /home/kvm/virtual-img/centos-lwq-1.qcow2   /home/kvm/virtual-img/centos7-mod.qcow2
  • 制作配置文件模板
[root@lwq kvm]# cp /etc/libvirt/qemu/centos-lwq-1.xml  /etc/libvirt/qemu/centos7-mod.xml
  • 修复配置文件模板
    –把里面要替换的地方换成关键字 然后用sed做替换
    修改的位置
    在这里插入图片描述
  • 网卡的mac地址改后面三位就行
    在这里插入图片描述

开始配置虚拟机

  • 定义变量
 vm_name=centos7-1
 vm_uuid=`uuidgen`
 vm_mem=1048576
 vm_disk_path=/home/centos7-1.qcow2  #这个地方时复制镜像的稳住
 vm_mac=`openssl rand -hex 3 | sed -r 's/..\B/&:/g'` #这是随机生成的16进制用来替换mac地址的
  • 开始替换
 sed -r \
    -e s%vm_name%$vm_name% \
    -e s%vm_uuid%$vm_uuid% \
    -e s%vm_mem%$vm_mem% \
    -e s%vm_disk_path%$vm_disk_path% \
    -e centos7-mod.xml  > centos7-1.xml
  • 重启服务
systemctl restart libvirtd
  • 启动虚拟机
virsh start centos7-1

写成shell脚本

#!/bin/bash
##利用模板快速创建虚拟机
## zy.小强
modkvm_install(){
    def_name=`openssl rand -hex 5`  #随机生成的字符串用来做默认名字
    read -p "请输入虚拟机的名字[默认名字:$def_name]:" vm_name
    read -p "请输入内存大小[默认1G],不要输入单位:" vm_mem
    vm_name=${vm_name:-$def_name} #定义默认名字
    vm_uuid=`uuidgen`
    def_mem=1
    vm_mem=${vm_mem:-$def_mem} #定义默认内存
    vm_mac=`openssl rand -hex 3 | sed -r 's/..\B/&:/g'`
    vm_mem=${vm_mem}00000
    #源镜像位置
    sourceimage=/home/kvm/virtual-img/centos-lwq-1.qcow2
    #源模板位置
    sourcexml=/etc/libvirt/qemu/centos7-mod.xml
    
    #新的镜像位置
    newimg=/home/kvm/virtual-img/${vm_name}.qcow2
    #新的模板位置
    newxml=/etc/libvirt/qemu/${vm_name}.xml
    echo "正在复制模板和镜像"
    cp $sourceimage  $newimg
    cp $sourcexml    $newxml
    echo "正在修改模板"
    sed -r \
    -e s%vm_name%$vm_name% \
    -e s%vm_uuid%$vm_uuid% \
    -e s%vm_mem%$vm_mem% \
    -e s%vm_disk_path%$newimg% \
    -e s%vm_mac%$vm_mac% $sourcexml   > $newxml
    echo "正在重启libvirtd服务"
    systemctl restart libvirtd
    echo "正在启动虚拟机"
    virsh start $vm_name
	if [ $? -eq  0 ];then
		echo "启动成功自动列出虚拟机信息"
		virsh list --all | grep $vm_name | awk '{print $2"——————"$3}'
		
	else
		echo "启动失败!!!!!!!!"

	fi


}
modkvm_install  #调用函数

在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
在Linux系统上,可以使用KVM(Kernel-based Virtual Machine)创建虚拟机KVM是一种基于内核的虚拟化技术,可以在Linux系统上运行多个虚拟机。 以下是在Linux系统上使用KVM创建虚拟机的步骤: 1. 确认主机支持虚拟化。使用以下命令检查主机是否支持虚拟化: ``` grep -E 'svm|vmx' /proc/cpuinfo ``` 如果输出中包含"svm"或"vmx",则表示主机支持虚拟化。 2. 安装KVM和相关工具。使用以下命令安装KVM和相关工具: ``` sudo apt-get install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virt-manager ``` 3. 创建虚拟网络。使用以下命令创建一个虚拟网络: ``` sudo virsh net-create network.xml ``` 其中,network.xml是一个XML配置文件,用于定义虚拟网络的配置信息。 4. 创建虚拟机。使用以下命令创建一个虚拟机: ``` sudo virt-install --name vm-name --ram 2048 --vcpus 2 --disk path=/var/lib/libvirt/images/vm-name.qcow2,size=20 --network network=network-name --graphics vnc,listen=0.0.0.0 --os-type linux --os-variant ubuntu20.04 --cdrom /path/to/iso-image.iso ``` 其中,vm-name是虚拟机的名称,network-name是虚拟网络的名称,/var/lib/libvirt/images/vm-name.qcow2是虚拟机的磁盘镜像文件路径,20是虚拟机磁盘的大小(单位为GB),/path/to/iso-image.iso是用于安装操作系统的ISO镜像文件路径。 运行上述命令后,将会启动一个的图形化窗口,用于安装操作系统。按照提示进行操作即可完成虚拟机创建。 这些步骤可以让您在Linux系统上使用KVM创建虚拟机

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值