如何在 CentOS 和 XenServer 的 Linux 中使用 3 个以上的虚拟磁盘

如何在 CentOS 和 XenServer 的 Linux 中使用 3 个以上的虚拟磁盘

我已将 5 个虚拟磁盘附加到 Citrix XenServer 中的虚拟机。该虚拟机已安装 xs-tools。最初它说无法添加这么多磁盘。安装 xs-tools 后,它允许我添加所有磁盘。

/dev不会显示所有磁盘。它显示以下内容:

/dev/xvda
/dev/xvdb
/dev/xvdc
/dev/cdrom

也许它受到 IDE 总线的限制?(3 个磁盘 + CD-ROM)如果是这样,如何将 VM 更改为使用 SCSI?

编辑: 根据文档:

2.6.3. VM 块设备

在 PV Linux 情况下,块设备作为 PV 设备传递。XenServer 不会尝试模拟 SCSI 或 IDE,而是以 xvd* 设备的形式在虚拟环境中提供更合适的接口。也可以使用相同的机制获取 sd* 设备,其中 VM 内的 PV 驱动程序接管 SCSI 设备命名空间。这是不可取的,因此最好尽可能为 PV 客户机使用 xvd*(这是 Debian 和 RHEL 的默认设置)。

对于 Windows 或其他完全虚拟化的客户机,XenServer 以 hd* 设备的形式模拟 IDE 总线。使用 Windows 时,安装 Citrix Tools for Virtual Machines 会安装一个特殊的 PV 驱动程序,该驱动程序的工作方式与 Linux 类似,但在完全虚拟化的环境中除外。

尽管如此,连接了 5 个虚拟磁盘后,我还是看不到其他 xvd 设备。

编辑#2:(附所要求的信息)

主机:

XenServer 6.1
Linux version 2.6.32.43-0.4.1.xs1.6.10.777.170770xen (geeko@buildhost) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-51)) #1 SMP Wed Apr 17 05:52:03 EDT 2013

客机:

CentOS release 6.4 (Final)
Linux version 2.6.32-358.6.2.el6.x86_64 ([email protected]) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-3) (GCC) ) #1 SMP Thu May 16 20:59:36 UTC 2013

客户机上‘fdisk -l’的输出:

请注意,除前 3 个附加磁盘之外的磁盘均不显示 - 应该有 4 个 100GB 磁盘。(XenCenter 中总共显示 5 个磁盘 - 16GB、100GB、100GB、100GB、100GB)

Disk /dev/xvdb: 107.4 GB, 107374182400 bytes
255 heads, 63 sectors/track, 13054 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xfb6c95b9

    Device Boot      Start         End      Blocks   Id  System
/dev/xvdb1               1       13054   104856223+  83  Linux

Disk /dev/xvda: 17.2 GB, 17179869184 bytes
255 heads, 63 sectors/track, 2088 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000e5f41

    Device Boot      Start         End      Blocks   Id  System
/dev/xvda1   *           1          64      512000   83  Linux
Partition 1 does not end on cylinder boundary.
/dev/xvda2              64        2089    16264192   8e  Linux LVM

Disk /dev/xvdc: 107.4 GB, 107374182400 bytes
255 heads, 63 sectors/track, 13054 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xed249ced

    Device Boot      Start         End      Blocks   Id  System
/dev/xvdc1               1       13054   104856223+  83  Linux

Disk /dev/mapper/vg_blue-lv_root: 14.6 GB, 14571012096 bytes
255 heads, 63 sectors/track, 1771 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000


Disk /dev/mapper/vg_blue-lv_swap: 2080 MB, 2080374784 bytes
255 heads, 63 sectors/track, 252 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

我看到 Linux 版本上写着 SMP。Guest VM 名称中没有“xen”。但是,我已经运行了yum install kernel-xen。这能提供一些线索吗?

答案1

同样的问题。我想你会在 /var/log/messages 中看到错误消息

blkfront: your disk configuration is incorrect, please use an xvd device instead

GUI 中的磁盘是 /dev/hda、/dev/hdb、/dev/hdc,但在 RHEL < 6 上它是 /dev/xvda/ 等...如果将其命名为 /dev/xvd ,则可以从 cli 手动添加磁盘。

发现了这个:http://forums.citrix.com/message.jspa?messageID=1692261查看 Albert Czarnecki 的回答。

“正如我所说,您的机器正在 HVM 模式下运行。您必须运行命令并从 HVM 更改为 PV:xe vm-param-set uuid=your_machine PV-bootloader=pygrub HVM-boot-policy="",然后再次运行机器。”

另请检查https://www.linuxnet.ch/xenserver-howto-convert-hvm-to-pv-rhelsuse/

编辑:我尝试过,现在所有磁盘都可见并且系统是 PV 。

快速摘要(可能有所不同):

xe vm-list name-label=SERVERNAME params=uuid 
uuid ( RO)    : 2a596adf-ccf4-6469-cf89-702d723cfbb9

UUID=`xe vm-list name-label=SERVERNAME params=uuid | cut -d ":" -f 2`

检查 PV 或 HVM

xe vm-param-list uuid=2a596adf-ccf4-6469-cf89-702d723cfbb9 | egrep "PV-bootloader|HVM-boot-policy"
xe vm-param-list uuid=`echo ${UUID}` | egrep "PV-bootloader|HVM-boot-policy"
HVM-boot-policy ( RW): BIOS order
PV-bootloader ( RW): 
PV-bootloader-args ( RW):

设置 PV:

xe vm-param-set uuid=2a596adf-ccf4-6469-cf89-702d723cfbb9 PV-bootloader=pygrub HVM-boot-policy=""
xe vm-param-set uuid=`echo ${UUID}` PV-bootloader=pygrub HVM-boot-policy=""

重启后:

fdisk -l 2>/dev/null | grep xvd
Disk /dev/xvdb: 51.5 GB, 51539607552 bytes
Disk /dev/xvde: 1073 MB, 1073741824 bytes   <------ YEAAAAAH "test disk 1GB visible for os"
Disk /dev/xvda: 16.1 GB, 16106127360 bytes
/dev/xvda1   *           1          13      102400   83  Linux
/dev/xvda2              13         274     2097152   82  Linux swap / Solaris
/dev/xvda3             274        1959    13528064   8e  Linux LVM
Disk /dev/xvdc: 1073 MB, 1073741824 bytes

相关内容