问题现象描述:
有用户反映在XenServer上的存储上同一个计算机目录会有多个对应的同名baskdisk占用存储空间且不知如何清除
背景及原理:
Citrix Machine Creation Service(MCS)的原理不再这里做详细介绍,MCS的主要目的是根据一个虚拟机模板批量创建多一个虚拟机,我们这里简单回忆下MCS创建的步骤:
- 选择桌面操作系统类型(服务器,桌面或RemotePC)
- 选择电源托管和置备类型并指定需要使用的托管主机
- 选择桌面类型(专有,池静态,池随机)
- 选择模板或者快照(这里推荐先创建快照然后选择指定的快照,以方便用户后续管理)
- 选择创建的数量,内存,cache大小等
- 选择对应的OU和命令规则
- 选择scope并指定计算机目录的名称
完成以上步骤后后续交给DDC去执行,无需用户干预。这里需要特别指出的步骤2中选择的托管主机,托管主机的目的是配置创建机器需要是用的网络,存储和GPU资源等。在创建计算机目录或者更新计算机目录的过程中,MCS会在使用的托管主机中的每个存储分别拷贝一个Basedisk(举例:用户XenServer资源池中配置10个共享存储,但是托管主机中配置5个共享存储,这里会往指定的5个存储上拷贝basedisk).
问题产生可能原因:
- 拷贝超时并不断重试
- 用户现有的VM没有关联到新的basedisk
- 没有达到系统自动删除的时间
- 其他原因
解决方法:
- 打开Citrix studio->查询->确保没有pending update(待定更新)的机器
- DDC上管理员权限运行Powershell并输入asnp citrix来加载snapin
- 输入Get-Provscheme查询计算机目录对应的ProvsioningSchemeUid和host(默认ProvsioningSchemeName为计算机目录名称)
- 打开数据库服务器找到表 [DesktopUpdateManagerSchema].[ProvisioningSchemeVMImageLocation],这张表中我们可以看到这个计算机目录对应的存储和basedisk对应的UUID
- 打开XenCenter找到上面步骤中对应的存储id:
- 从步骤4.5以看到在此存储上对应正在使用的basedisk的UUID,这里我们记录下,因为多个basedisk存在的时候它们名称相同,我们只能通过uuid来区分。
- 回到XenServer命令行通过以下命令来重命名正在使用的basedisk,其他没有被重命名的即可以通过xencenter进行删除
参考以上步骤删除其他存储上的basedisk即可
原文地址:https://blog.51cto.com/virtuallife/2354626
时间: 2024-10-22 08:52:54