文章
Proxmox 的本机工具不仅允许您备份数据,还可以创建一组预配置的操作系统映像以进行快速部署。 这不仅可以帮助您在必要时在几秒钟内为任何服务创建新服务器,而且还可以将停机时间降至最低。
我们不会谈论创建备份的必要性,因为这是显而易见的,并且长期以来一直是一个公理。 让我们详细讨论一些不明显的事情和特征。
首先,让我们看看备份过程中数据是如何保存的。
备份算法
首先,Proxmox 拥有用于创建虚拟机备份副本的良好标准工具。 它可以轻松保存所有虚拟机数据,并支持两种压缩机制以及三种创建这些副本的方法。
我们先看一下压缩机制:
- LZO压缩。 一种无损数据压缩算法,发明于 90 年代中期。 代码已经写好了
马库斯·奥伯海默 (在 Proxmox 中由 lzop 实用程序实现)。 该算法的主要特点是拆包速度非常快。 因此,如有必要,可以在最短的时间内部署使用此算法创建的任何备份。 - GZIP 压缩。 使用此算法,备份将由 GNU Zip 实用程序即时压缩,该实用程序使用由
菲尔·卡茨 。 主要强调最大程度的数据压缩,从而减少备份副本占用的磁盘空间。 与 LZO 的主要区别在于压缩/解压过程需要相当多的时间。
归档模式
Proxmox 为系统管理员提供了三种备份方法的选择。 使用它们,您可以通过确定停机需求和备份可靠性之间的优先级来解决所需的问题:
- 快照模式。 这种模式也可以称为实时备份,因为它不需要停止虚拟机来使用它。 使用这种机制不会中断VM的运行,但它有两个非常严重的缺点——可能会因操作系统锁定文件而出现问题以及创建速度最慢。 使用此方法创建的备份应始终在测试环境中进行测试。 否则,如果需要紧急恢复,则存在失败的风险。
- 暂停模式。 虚拟机暂时“冻结”其状态,直到备份过程完成。 RAM 中的内容不会被删除,这样您就可以从暂停的位置继续工作。 当然,这会导致复制信息时服务器停机,但不需要关闭/打开虚拟机,这对于某些服务来说非常关键。 特别是如果某些服务的启动不是自动的。 然而,这样的备份也应该部署到测试环境中进行测试。
- 停止模式。 最可靠的备份方法,但需要完全关闭虚拟机。 发送命令执行定期关闭,停止后执行备份,然后发送命令打开虚拟机。 这种方法的错误数量是最少的,并且通常减少到零。 以这种方式创建的备份几乎总能正确部署。
执行预订程序
创建备份:
- 让我们转到所需的虚拟机。
- 选择一个项目 预订.
- 按下按钮 立即预订。 将打开一个窗口,您可以在其中选择未来备份的参数。
- 作为存储,我们指示我们连接的存储
在前一部分 . - 选择参数后,按下按钮 预订 并等待创建备份。 将会有一个关于此的铭文 任务确定.
现在,创建的包含虚拟机备份副本的存档将可供从服务器下载。 最简单、最常见的复制方法是 SFTP。 为此,请使用流行的跨平台 FTP 客户端 FileZilla,它可以使用 SFTP 协议工作。
- 在 主持人 在字段中输入我们的虚拟化服务器的 IP 地址 用户名 在字段中输入 root 新密码 - 在安装过程中和现场选择的一个 港口 指示“22”(或为 SSH 连接指定的任何其他端口)。
- 按下按钮 快速连接 并且,如果所有数据输入正确,那么在活动面板中您将看到服务器上的所有文件。
- 转到目录 /mnt/存储。 所有创建的备份都将位于“dump”子目录中。 它们看起来像:
- vzdump-qemu-machine_number-date-time.vma.gz 如果您选择 GZIP 方法;
- vzdump-qemu-machine_number-date-time.vma.lzo 如果选择 LZO 方法。
建议立即从服务器下载备份副本并将其保存在安全的地方,例如我们的云存储中。 如果您使用 vma 解析(Proxmox 附带的同名实用程序)解压文件,那么里面会有带有扩展名的文件 原, CONF и fw。 这些文件包含以下内容:
- 原 — 磁盘映像;
- CONF — 虚拟机配置;
- fw - 防火墙设置。
从备份恢复
让我们考虑一下虚拟机被意外删除并需要从备份紧急恢复的情况:
- 打开备份副本所在的存储位置。
- 转到选项卡 内容.
- 选择所需的副本并按按钮 复苏.
- 我们指定目标存储以及进程完成后将分配给机器的 ID。
- 按下按钮 复苏.
恢复完成后,VM 将显示在可用列表中。
克隆虚拟机
例如,假设一家公司需要对某些关键服务进行更改。 这种更改是通过对配置文件进行许多更改来实现的。 结果是不可预测的,任何错误都可能导致服务失败。 为了防止此类实验影响正在运行的服务器,建议克隆虚拟机。
克隆机制将创建虚拟服务器的精确副本,可以使用该副本进行任何更改,而不会影响主服务的运行。 然后,如果更改成功应用,则会启动新虚拟机并关闭旧虚拟机。 在这个过程中有一个特点应该永远记住。 克隆的机器将与原始虚拟机具有相同的IP地址,这意味着启动时会出现地址冲突。
我们将告诉您如何避免这种情况。 在克隆之前,您应该更改网络配置。 为此,您需要暂时更改IP地址,但不要重新启动网络服务。 在主机上克隆完成后,您应该返回设置,并在克隆机上设置任何其他 IP 地址。 因此,我们将在不同地址收到同一服务器的两个副本。 这将使您能够快速将新服务投入运行。
如果此服务是 Web 服务器,那么您只需向 DNS 提供商更改 A 记录,之后客户端对该域名的请求将被发送到克隆虚拟机的地址。
顺便说一句,Selectel 为其所有客户提供免费在 NS 服务器上托管任意数量域名的服务。 记录通过我们的控制面板和特殊的 API 进行管理。 阅读更多相关内容
在我们的知识库中 .
在 Proxmox 中克隆虚拟机是一项非常简单的任务。 为此,您需要执行以下操作:
- 前往我们需要的机器。
- 从菜单中选择 更多 点 克隆.
- 在打开的窗口中,填写名称参数。
- 只需按一下按钮即可执行克隆 克隆.
该工具不仅允许您在本地服务器上制作虚拟机的副本。 如果将多个虚拟化服务器组合成一个集群,那么使用此工具您可以立即将创建的副本移动到所需的物理服务器。 一个有用的功能是磁盘存储的选择(参数 目标存储),当将虚拟机从一种物理介质移动到另一种物理介质时,这非常方便。
虚拟存储格式
让我们详细介绍一下 Proxmox 中使用的驱动器格式:
- 未处理。 最容易理解和最简单的格式。 这是未经压缩或优化的逐字节硬盘数据文件。 这是一种非常方便的格式,因为它可以在任何 Linux 系统上使用标准挂载命令轻松挂载。 此外,这是最快的驱动器“类型”,因为管理程序不需要以任何方式处理它。
这种格式的一个严重缺点是,无论你为虚拟机分配了多少空间,RAW文件都会占用完全相同的硬盘空间(无论虚拟机内部实际占用的空间是多少)。
- QEMU 图像格式 (qcow2)。 也许是执行任何任务的最通用的格式。 它的优点是数据文件将只包含虚拟机内部实际占用的空间。 例如,如果分配了 40 GB 空间,但实际仅使用了 2 GB,则其余空间将可供其他虚拟机使用。 这在节省磁盘空间时非常重要。
使用此格式的一个小缺点如下:为了在任何其他系统上安装此类映像,您首先需要下载
特殊nbd驱动程序 并使用该实用程序 qemu-nbd,这将允许操作系统将文件作为常规块设备进行访问。 此后,该映像将可用于挂载、分区、检查文件系统和其他操作。应该记住,使用此格式时的所有 I/O 操作都是在软件中处理的,这会导致主动使用磁盘子系统时速度减慢。 如果任务是在服务器上部署数据库,那么最好选择RAW格式。
- VMware 映像格式 (vmdk)。 此格式是 VMware vSphere 虚拟机管理程序的本机格式,并包含在 Proxmox 中以实现兼容性。 它允许您将 VMware 虚拟机迁移到 Proxmox 基础架构。
不建议持续使用 vmdk;这种格式是 Proxmox 中最慢的,因此它只适合执行迁移,仅此而已。 这个缺点很可能在可预见的将来被消除。
处理磁盘映像
Proxmox 附带一个非常方便的实用程序,称为 qemu-img。 它的功能之一是转换虚拟磁盘映像。 要使用它,只需打开虚拟机管理程序控制台并按以下格式运行命令:
qemu-img convert -f vmdk test.vmdk -O qcow2 test.qcow2
在给出的示例中,VMware 虚拟驱动器的 vmdk 映像称为 test 将被转换为格式 qcow2。 当您需要纠正初始格式选择中的错误时,这是一个非常有用的命令。
由于相同的命令,您可以使用参数强制创建所需的图像 创建信息图:
qemu-img create -f raw test.raw 40G
此命令将以以下格式创建测试图像 未处理,大小为 40 GB。 现在它适合连接到任何虚拟机。
调整虚拟磁盘大小
最后,我们将向您展示如果由于某种原因磁盘映像不再有足够的空间,如何增加磁盘映像的大小。 为此,我们使用调整大小参数:
qemu-img resize -f raw test.raw 80G
现在我们的镜像大小已经变成了 80 GB。 您可以使用参数查看有关图像的详细信息 info:
qemu-img info test.raw
不要忘记扩展映像本身不会自动增加分区的大小 - 它只会添加可用的可用空间。 要增加分区,请使用以下命令:
resize2fs /dev/sda1
哪里 / dev / sda1 - 所需部分。
备份自动化
使用手动方法创建备份是一项非常费力且耗时的任务。 这就是 Proxmox VE 包含自动计划备份工具的原因。 让我们看看如何做到这一点:
- 使用虚拟机管理程序 Web 界面,打开该项目 数据中心.
- 选择一个项目 预订.
- 按下按钮 添加内容.
- 设置调度程序的参数。
- 勾选复选框 启用.
- 使用按钮保存更改 创建.
现在,计划程序将根据指定的计划在指定的确切时间自动启动备份程序。
结论
我们回顾了备份和恢复虚拟机的标准方法。 使用它们可以让您毫无问题地保存所有数据,并在紧急情况下紧急恢复它们。
当然,这并不是保存重要数据的唯一可能方法。 有很多可用的工具,例如
执行备份过程时,您应该始终考虑到它们会主动加载磁盘子系统。 因此,建议在最小负载期间执行这些过程,以避免机器内 I/O 操作期间的延迟。 您可以直接从管理程序 Web 界面监控磁盘操作延迟的状态(IO 延迟参数)。
来源: habr.com