起因:由于公司的几台开发测试服务器从IDC机房搬回办公室后,电费飙涨,为降低公司成本,倡导绿色节能,遂想将几台资源利用率不高的服务器进行虚拟化后关停,因此就有了本文。权当学习记录,有不当之处,欢迎读者指出,共同探讨。
一、基本环境
源服务器:Ubuntu18.04
目的服务器:CentOS 7.9 、 Libvirt KVM/QEMU
网络:同一局域网
软件:Clonezilla-live-2.7.1-22 、rufus 、VNC Viewer
下载链接:
Clonezilla: https://clonezilla.org/downloads.php
Rufus: https://rufus.ie/zh/
二、Clonezilla(再生龙)简介
Clonezilla是类似于TrueImage®或NortonGhost®的分区和磁盘映像/克隆程序。它可以帮助您进行系统部署,裸机备份和恢复。可以使用三种类型的Clonezilla:Clonezilla live,Clonezilla lite服务器和Clonezilla SE(服务器版)。Clonezilla live适用于单机备份和还原。尽管Clonezilla lite服务器或SE用于大规模部署,但它可以同时克隆许多(40多台!)计算机。Clonezilla仅在硬盘中保存和恢复使用过的块。这提高了克隆效率。借助42节点群集中的某些高端硬件,创造了最高8 GB / min的速率恢复多台的记录。(官网英文Google机翻)
三、操作步骤
1.前期准备:
确认源服务器或主机正确的配置了U盘启动,并确认U盘可以正常使用,因为我在操作过程中就遇到了同一个U盘有些服务器可以识别,有些不能识别的情况。
准备好显示器、键盘,一般服务器只有VGA接口,确认显示器配备相应线缆。
准备好存储备份镜像的空间,因为服务器数据动辄几十上百G,备份多台将消耗很多磁盘空间,因此需做好提前规划。
2.创建Clonezilla启动U盘
官方推荐了几种方式进行启动U盘的创建,本次采用rufus。
rufus有绿色版本,下载后直接打开运行,先选择镜像:

选择已经下载好的Clonezilla镜像后,确认U盘中数据已备份后,可点击开始,此时会提示写入方式,直接点击OK,以推荐方式写入:

提示缺少的文件,点击是将在rufus文件同目录下创建一个文件夹并自动下载:

警告提示,点确定:

完成后,关闭rufus即可。
3.开始备份
重启服务器,并通过U盘启动,如果服务器使用的是UEFI引导程序,用U盘启动时记得选择BIOS,进入Clonezilla启动页,默认选择第一项:

选择语言,支持简体中文:

选择键盘布局,默认即可:

进入软件:

选择第一项,备份和还原都是这个,后面详细说明:

选择文件目录,这里使用ssh服务,第二项:

配置当前服务器的网络信息,即IP地址、子网掩码、网关、DNS服务器等,这里根据自己的网络环境设置,我这里使用静态IP:

配置IP地址:

配置子网掩码:

配置网关:

配置DNS服务器:

配置存储备份镜像的服务器IP:

配置备份服务器ssh服务端口:

配置ssh登陆的用户名:

配置备份存储的路径:

提示要确认并输入服务器密码:

点击确定后,输入yes,并输入密码:

如果连接成功,则会提示挂载的备份目录,可以查看是否正确,回车继续:

选择工作模式,这里选择第二项,专家模式:

根据自己的情况选择,这里我选择备份硬盘到镜像:

输入镜像文件名称,软件会自动在备份目录生成一个文件夹:

确定名称后,选择需要备份的硬盘,有多个可以选择多个:

接下来的几个选项都是跟备份数据的参数有关,如果不熟悉可以使用默认设置。
选择备份程序的顺序:

备份高级参数:

镜像压缩格式:

选择卷大小:

检查源文件系统:

检查备份镜像:

是否加密镜像:

操作完成后的动作:

按回车继续:

再次确认,输入y并回车:

等待备份过程结束:

完成后可以选择关闭服务器。
至此,一台服务器备份完成,可以在备份服务器上查看备份文件情况。
4.还原备份镜像为kvm虚拟机
首先,创建虚拟机磁盘文件,因后续可能需要将虚拟机导入openstack,因此我创建了qcow2格式的磁盘文件,也可根据情况指定其他磁盘文件格式,并指定文件大小:
qemu-img create -f qcow2 /data/test.qcow2 200G
建立虚拟机配置文件,默认在/etc/libvirt/qemu/文件夹下,格式为xml。可以从其它虚拟机文件复制来修改,也可以自己写或者用virt-install命令建立,这里复制一份其它虚拟机文件并做修改:
<!--
WARNING: THIS IS AN AUTO-GENERATED FILE. CHANGES TO IT ARE LIKELY TO BE
OVERWRITTEN AND LOST. Changes to this xml configuration should be made using:
virsh edit test
or other application using the libvirt API.
-->
<domain type='kvm'>
<name>test</name> #虚拟机的名称
<uuid>e5b3ab33-9317-4b8e-a5bc-7b0150409166</uuid> #虚拟机的UUID,此值是唯一的,可以用uuidgen命令生成
<memory unit='KiB'>8388608</memory> #虚拟机最大内存限制,单位是KB
<currentMemory unit='KiB'>8388608</currentMemory> #虚拟机当前内存大小,单位是KB
<vcpu placement='static'>4</vcpu> #虚拟机虚拟cpu个数
<os>
<type arch='x86_64' machine='pc-i440fx-rhel7.6.0'>hvm</type> #arch参数表示宿主机cpu架构,machine表示宿主机系统,如:pc-i440fx-rhel7.6.0表示centos7.6版本,pc-i440fx-bionic表示ubuntu18.04版本
<boot dev='cdrom'/> #启动设备为光驱,如果是硬盘,则将cdrom改为hd
<bootmenu enable='yes'/

本文介绍如何使用Clonezilla备份服务器,并将其还原至KVM虚拟机的过程。包括创建启动U盘、备份服务器、配置KVM虚拟机、挂载虚拟磁盘等内容,并解决了磁盘扩容、UEFI启动等问题。
最低0.47元/天 解锁文章
1317





