virsh 快速复制一个虚拟机

2024-03-05 13:20
文章标签 快速 虚拟机 复制 virsh

本文主要是介绍virsh 快速复制一个虚拟机,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在很多测试环境中,想快速复制一个虚拟机,如何实现?

  • 假如环境中已有一个虚拟机,查看虚拟机磁盘信息

    # virsh domblklist hc1Target   Source
    -------------------------------sda      /data/vms/hc1.qcow2hda      -
    
  • 复制一份镜像文件,复制一份虚拟机 xml,等新虚拟机去使用

    cp /data/vms/hc1.qcow2 /data/vms/hc2.qcow2
    cp /etc/libvirt/qemu/hc1.xml /etc/libvirt/qemu/hc2.xml
    
  • 对 hc2.xml 做修改,主要修改名称、uuid、新磁盘路径、网络(这部分不是绝对,根据需求增删改)

    # diff /etc/libvirt/qemu/hc1.xml /etc/libvirt/qemu/hc2.xml 
    4c4
    <   virsh edit hc1
    ---
    >   virsh edit hc2
    9,10c9,10
    <   <name>hc1</name>
    <   <uuid>6a74d86f-1891-479b-ac5c-28099f0d1ecf</uuid>
    ---
    >   <name>hc2</name>
    >   <uuid>aa74d86f-1891-479b-ac5c-28099f0d1eca</uuid>
    40c40
    <       <source file='/data/vms/hc1.qcow2'/>
    ---
    >       <source file='/data/vms/hc2.qcow2'/>
    
  • 由于环境中的 ip 是需要重新修改,我这里要对新虚拟机网络做以下调整(针对同一台主机修改网络配置)

        <interface type='bridge'><mac address='20:ac:9c:22:c3:0e'/><source bridge='ovsbr0'/><virtualport type='openvswitch'><parameters interfaceid='5677886d-9bfe-4990-9cb6-fb836912f018'/></virtualport><model type='virtio'/><address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/></interface>

在这里插入图片描述

  • 1、删除新虚拟机xml中mac,否则会有冲突,删除mac后,重启主机会自动生成,这样之后ens3 两个 mac 就不同了
    2、ip link / ovs-vsctl show 查看网络配置信息,两个机器 mac 一样 
    3、ovs-vsctl del-port ovsbr0 如果想让两个机器 ovsbr0 也不同,需要使用 ovs 相关命令重新配置网卡,但从原理角度分析,ovsbr0 最终的出口都是 ens0,所以如果不需要ovsbr0的化,我们可以把后面机器的ovsbr0 删去,让数据直接走ens3
    4、vim /etc/sysconfig/network-scripts/xxx 给ens3 配上网络信息
    5、systemctl restart network-scripts 重新生成网络
    

这篇关于virsh 快速复制一个虚拟机的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/776655

相关文章

使用EasyPoi快速导出Word文档功能的实现步骤

《使用EasyPoi快速导出Word文档功能的实现步骤》EasyPoi是一个基于ApachePOI的开源Java工具库,旨在简化Excel和Word文档的操作,本文将详细介绍如何使用EasyPoi快速... 目录一、准备工作1、引入依赖二、准备好一个word模版文件三、编写导出方法的工具类四、在Export

C#利用Free Spire.XLS for .NET复制Excel工作表

《C#利用FreeSpire.XLSfor.NET复制Excel工作表》在日常的.NET开发中,我们经常需要操作Excel文件,本文将详细介绍C#如何使用FreeSpire.XLSfor.NET... 目录1. 环境准备2. 核心功能3. android示例代码3.1 在同一工作簿内复制工作表3.2 在不同

C#文件复制异常:"未能找到文件"的解决方案与预防措施

《C#文件复制异常:未能找到文件的解决方案与预防措施》在C#开发中,文件操作是基础中的基础,但有时最基础的File.Copy()方法也会抛出令人困惑的异常,当targetFilePath设置为D:2... 目录一个看似简单的文件操作问题问题重现与错误分析错误代码示例错误信息根本原因分析全面解决方案1. 确保

Python多线程实现大文件快速下载的代码实现

《Python多线程实现大文件快速下载的代码实现》在互联网时代,文件下载是日常操作之一,尤其是大文件,然而,网络条件不稳定或带宽有限时,下载速度会变得很慢,本文将介绍如何使用Python实现多线程下载... 目录引言一、多线程下载原理二、python实现多线程下载代码说明:三、实战案例四、注意事项五、总结引

C#使用Spire.XLS快速生成多表格Excel文件

《C#使用Spire.XLS快速生成多表格Excel文件》在日常开发中,我们经常需要将业务数据导出为结构清晰的Excel文件,本文将手把手教你使用Spire.XLS这个强大的.NET组件,只需几行C#... 目录一、Spire.XLS核心优势清单1.1 性能碾压:从3秒到0.5秒的质变1.2 批量操作的优雅

MySQL 临时表与复制表操作全流程案例

《MySQL临时表与复制表操作全流程案例》本文介绍MySQL临时表与复制表的区别与使用,涵盖生命周期、存储机制、操作限制、创建方法及常见问题,本文结合实例代码给大家介绍的非常详细,感兴趣的朋友跟随小... 目录一、mysql 临时表(一)核心特性拓展(二)操作全流程案例1. 复杂查询中的临时表应用2. 临时

MySQL实现多源复制的示例代码

《MySQL实现多源复制的示例代码》MySQL的多源复制允许一个从服务器从多个主服务器复制数据,这在需要将多个数据源汇聚到一个数据库实例时非常有用,下面就来详细的介绍一下,感兴趣的可以了解一下... 目录一、多源复制原理二、多源复制配置步骤2.1 主服务器配置Master1配置Master2配置2.2 从服

MySQL配置多主复制的实现步骤

《MySQL配置多主复制的实现步骤》多主复制是一种允许多个MySQL服务器同时接受写操作的复制方式,本文就来介绍一下MySQL配置多主复制的实现步骤,具有一定的参考价值,感兴趣的可以了解一下... 目录1. 环境准备2. 配置每台服务器2.1 修改每台服务器的配置文件3. 安装和配置插件4. 启动组复制4.

Mybatis-Plus 3.5.12 分页拦截器消失的问题及快速解决方法

《Mybatis-Plus3.5.12分页拦截器消失的问题及快速解决方法》作为Java开发者,我们都爱用Mybatis-Plus简化CRUD操作,尤其是它的分页功能,几行代码就能搞定复杂的分页查询... 目录一、问题场景:分页拦截器突然 “失踪”二、问题根源:依赖拆分惹的祸三、解决办法:添加扩展依赖四、分页

c++日志库log4cplus快速入门小结

《c++日志库log4cplus快速入门小结》文章浏览阅读1.1w次,点赞9次,收藏44次。本文介绍Log4cplus,一种适用于C++的线程安全日志记录API,提供灵活的日志管理和配置控制。文章涵盖... 目录简介日志等级配置文件使用关于初始化使用示例总结参考资料简介log4j 用于Java,log4c