如何在物理主机上挂载Xen虚拟机存储设备?

如何在物理主机上挂载Xen虚拟机存储设备?,第1张

出于本文的写作目的,我把VHD在主机上存放的位置称之为后端存储设备。针对后端存储设备现在有两种常见的配置方案:最简单的解决方法是使用磁盘文件镜像,这个磁盘文件镜像是通过宿主操作系统来创建的,也是虚拟机安装其文件的位置;另外一个方法就是使用一个物理设备作为一个后端存储设备,这个设备可以是一个逻辑卷、一个分区或者是一个存储区域网络(Storage Area Network,即SAN)上的逻辑单元号(Logic Unit Numbers,即LUN)。本质上你可以使用任何存储设备来完成,并且由于在性能上比较高效,所以这个方案现在用得比较广泛。通过在宿主操作系统上挂载一个虚拟机,你可以很轻松地完成任何必要的系统维护工作。如果虚拟机上运行的是Linux操作系统,这个方法使用起来就更方便了,因为Xen宿主操作系统也是一个Linux。另外一个原因是有一个虚拟机维护的工具在Linux宿主系统下默认安装的,这个工具是基于Xen环境下虚拟机维护最有用的工具。但是即使虚拟机使用的是Windows系统,也有多种方法,你可以使用NTFS中的维护工具,这些工具在当前系统中都是可用的。如果宿主操作系统中没有你所需要的工具(对于一些高级NTFS工具,会有这种情况),你就需要从一个安装有Linux系统的CD(如Knoppix)重启物理机。在这种情况下,要注意一个问题:一定要把基于Xen服务器的所有其它正常运转的虚拟机迁移到网络中的其它物理服务器上。挂载一个物理后端存储设备首先我们假设后端存储设备在主机上是可见的,文件名是/dev/hosts/vm1,并且作为一个逻辑卷管理器(Logical Volume Manager,即LVM)而存在。另外,如果你使用其他设备(如一个分区、一个完整的硬盘或者SAN上的一个LUN),这个方法也同样适用。唯一需要做的就是把文件名/dev/hosts/vm1根据你所使用的设备改为正确的名字。fdisk –l /dev/host/vm1现在就可以知道存储设备的分区情况了。但是由于宿主操作系统不能识别这些分区,并且在宿主操作系统中也没有对应的设备文件,所以现在仍然不能挂载这些分区。不过可以使用kpartx这个工具,这个工具是多路径工具包的一部分,使用它可以创建这些设备文件。具体使用这个工具的命令如下:kparts –a /dev/host/vm1运行这个命令之后,就可以在/dev/mapper目录下看到所有需要的设备文件了。这些设备文件都是以你使用的设备的名字开头,紧接着的是特定设备的一个分区号。如/dev/host/vm1的第一个分区就变为了/dev/host/vm1p1。接下来,需要找到存放根文件系统的分区。在找到这个分区之后,你就可以把这个分区挂载到物理机上了。如果你不能确定存放根文件系统的分区,逐个挂载这些分区,一一尝试。假设根文件系统在vm1上的第二个分区,使用如下命令挂载该分区:mount /dev/mapper/vm1p2/mnt运行上述命令之后,你就可以访问虚拟机的后端存储设备上的所有文件了。此时,因为你拥有对全部的文件系统的全部访问控制权限,所以你对虚拟机的任何修改操作都将存储在这些文件中。可以使用下面两个命令完成这个操作:

系统:XenServer7.4

安装XenSserver7.4后,Local Storage,挂载的盘过小,需要增加一块硬盘进行扩容。

操作如下:

首先获取 host-uuid

一、删除旧的Local Storage,找到对应的 sr-uuid(可选)

1、找对对应的sr-uuid

2、删除sr-uuid,提示被占用

二、重启后。添加新磁盘

xenserver 能查看到 Local Storage。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/645455.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-07-21
下一篇2023-07-21

发表评论

登录后才能评论

评论列表(0条)

    保存