Chinaunix首页 | 论坛 | 博客
  • 博客访问: 10197591
  • 博文数量: 1669
  • 博客积分: 16831
  • 博客等级: 上将
  • 技术积分: 12594
  • 用 户 组: 普通用户
  • 注册时间: 2011-02-25 07:23
个人简介

柔中带刚,刚中带柔,淫荡中富含柔和,刚猛中荡漾风骚,无坚不摧,无孔不入!

文章分类

全部博文(1669)

文章存档

2023年(4)

2022年(1)

2021年(10)

2020年(24)

2019年(4)

2018年(19)

2017年(66)

2016年(60)

2015年(49)

2014年(201)

2013年(221)

2012年(638)

2011年(372)

分类: 虚拟化

2012-12-25 15:23:31

如何回收Xenserver 删除虚拟机快照后释放的空间  

2012-12-24 16:26:15|  分类: 虚拟化-XenServer |  标签: |字号 

概要

本文介绍了如何在删除快照或克隆虚拟机后,使用离线合并(Off-line Coalesce)工具回收磁盘空间。

背景资料

在基于LVM的Local EXT和NFS SR上删除快照或克隆虚拟机后,通过释放未使用的数据,XenServer可自动回收磁盘空间,此过程称之为合并(coalescing)。XenServer可在虚拟机运行的同时合并磁盘空间(即在线合并)。

但是,XenServer 5.5的合并部署有一个已知的限制条件。在虚拟机磁盘上删除所有快照或克隆虚拟机后,一些磁盘空间可能仍然处于分配状态。尽管NFS和基于ext的SR的已删除快照或克隆虚拟机所消耗的空间非常少,但对于iSCSI FC和本地SR来说,消耗的空间量是非常巨大的。

为了消除这一局限性,XenServer 5.5 Update 1和更高版本引进了一个离线合并工具。该工具可在虚拟机暂时关闭或暂停使用(离线)时,回收之前分配给已删除快照或克隆的所有磁盘空间。下面介绍了离线合并工具及其使用。

警告!

    ? 运行此脚本会导致虚拟机暂时无法使用,因为执行了暂停/恢复操作。

    ? 运行此工具前,您必须使用XenCenter或XenServer CLI删除与虚拟机相关的所有快照和克隆。否则,脚本就会失败,工具就会显示错误信息,然后退出。

    ? 所有虚拟机磁盘必须在单个主机的共享存储或本地存储上。带有这两种存储类型的磁盘的虚拟机无法合并。

步骤 - 适用于XenServer 5.5 Update 1和更高版本

思杰建议对将运行空间回收工具的虚拟机进行备份,可使用XenCenter导出选项进行备份。
您必须知道虚拟机的UUID。

获取UUID

    1. 在XenCenter中,启用隐藏目标(View menu > Hidden Objects)。

    1. 在Resource窗格中,选择所需UUID对应的虚拟机。UUID将显示在General项中。

回收磁盘空间

    1. 在XenServer CLI中运行以下命令:
    coalesce-leaf –u


    例如,如果虚拟机的UUID是2a8d2815-c97e-245b-efe2-389ba456bd7p,您需要运行以下命令:
    coalesce-leaf –u 2a8d2815-c97e-245b-efe2-389ba456bd7p

    1. 此命令会暂时中止虚拟机的运行(除非其已经关机),启动回收进程,然后恢复虚拟机运行。

根据上次快照后写入磁盘的数据量的大小,所需的时间也不同。最小的虚拟机(10GB或更低)只需不到1分钟。

步骤 - 适用于XenServer 5.6

思杰建议对将运行空间回收工具的虚拟机进行备份,可使用XenCenter导出选项进行备份。
您需要知道虚拟机和主机UUID。

获取UUID

    1. 在XenCenter中,启用隐藏目标(View menu > Hidden Objects)。

    1. 在Resource窗格中,选择所需UUID对应的虚拟机。UUID将显示在General项中。

    1. 在Resource窗格中,选择资源池主机(列表中的第一台主机)。UUID将显示在General项中。如果您没有使用资源池,选择虚拟机所在的主机。

回收磁盘空间

    1. 在XenServer CLI中运行以下命令:
    xe host-call-plugin host-uuid= plugin=coalesce-leaf fn=leaf-coalesce args:vm_uuid=


    例如,如果虚拟机的UUID是9bad4022-2c2d-dee6-abf5-1b6195b1dad5,主机UUID是b8722062-de95-4d95-9baa-a5fe343898ea,您需要运行以下命令:
    xe host-call-plugin host-uuid=b8722062-de95-4d95-9baa-a5fe343898ea plugin=coalesce-leaf fn=leaf-coalesce args:vm_uuid=9bad4022-2c2d-dee6-abf5-1b6195b1dad5

    1. 此命令会暂时中止虚拟机的运行(除非其已经关机),启动回收进程,然后恢复虚拟机运行。

更多信息

    ? 思杰建议运行离线合并工具前,手动关闭或暂停虚拟机的运行(使用XenCenter或XenServer CLI)。如果您在处于运行状态的虚拟机上运行合并工具,工具会自动暂停虚拟机运行,执行所需的VDI合并操作,然后恢复虚拟机运行。

    ? 如果欲合并的虚拟磁盘镜像(VDI)保存在共享存储,您必须在资源池主服务器(pool master)上运行离线合并工具。

    ? 如果欲合并的VDI保存在本地存储,您必须在与本地存储相关联的服务器上运行离线合并工具。

阅读(2391) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~