跳过导航链接
退出打印视图
| Oracle VM Server for SPARC 2.0 管理指南

搜索范围:

- 本文档
- 整个文档库

### 在 Logical Domains 环境中使用卷管理器

本节介绍在 Logical Domains 环境中使用卷管理器的情况。

#### 在卷管理器之上使用虚拟磁盘

可以将任何 Zettabyte 文件系统 (Zettabyte File System, ZFS)、Solaris 卷管理器或 Veritas 卷管理器 (Veritas Volume Manager, VxVM) 卷作为虚拟磁盘从服务域导出到来宾域。卷可以作为具有单个分片的磁盘导出（如果使用 `ldm` `add-vdsdev` 命令指定了 `slice` 选项）或作为完整磁盘导出。

注 - 本节的其余部分将以 Solaris 卷管理器卷为例进行说明。但是，所讨论的内容也适用于 ZFS 卷和 VxVM 卷。

以下示例介绍如何将卷作为具有单个分片的磁盘导出。

来宾域中的虚拟磁盘（例如，`/dev/dsk/c0d2s0`）直接映射到相关联的卷（例如，`/dev/md/dsk/d0`），来宾域的虚拟磁盘上存储的数据直接存储到相关联的卷中，而没有额外的元数据。因此，也可以通过相关联的卷从服务域直接访问来宾域的虚拟磁盘上存储的数据。

示例

- 如果将 Solaris 卷管理器卷 `d0` 从 `primary` 域导出到 `domain1`，则 `domain1` 的配置需要一些额外的步骤。

      primary# metainit d0 3 1 c2t70d0s6 1 c2t80d0s6 1 c2t90d0s6
      primary# ldm add-vdsdev options=slice /dev/md/dsk/d0 vol3@primary-vds0
      primary# ldm add-vdisk vdisk3 vol3@primary-vds0 domain1

- 例如，绑定并启动 `domain1` 之后，导出的卷会显示为 `/dev/dsk/c0d2s0`，并且您可以使用它。

      domain1# newfs /dev/rdsk/c0d2s0
      domain1# mount /dev/dsk/c0d2s0 /mnt
      domain1# echo test-domain1 > /mnt/file

- 停止并取消绑定 `domain1` 后，可通过 Solaris 卷管理器卷 `d0` 从主域直接访问 `domain1` 的虚拟磁盘上存储的数据。

      primary# mount /dev/md/dsk/d0 /mnt
      primary# cat /mnt/file
      test-domain1

##### 在 Solaris 卷管理器之上使用虚拟磁盘

当 RAID 或镜像 Solaris 卷管理器卷由另一个域用作虚拟磁盘时，则在导出它时不得设置独占 (`excl`) 选项。否则，如果 Solaris 卷管理器卷的某个组件出现故障，就无法启动使用 `metareplace` 命令或热备份恢复 Solaris 卷管理器卷的过程。`metastat` 命令将卷视为正在进行重新同步，但并未进行重新同步。

例如，`/dev/md/dsk/d0` 是使用 `excl` 选项作为虚拟磁盘导出到另一个域的 RAID Solaris 卷管理器卷，并且 `d0` 配置有一些热备份设备。如果 `d0` 的组件出现故障，则 Solaris 卷管理器会将出现故障的组件替换为热备份，并重新同步 Solaris 卷管理器卷。但是，重新同步并不会启动。卷会被报告为正在进行重新同步，但并没有进行重新同步。

    # metastat d0
    d0: RAID
        State: Resyncing
        Hot spare pool: hsp000
        Interlace: 32 blocks
        Size: 20097600 blocks (9.6 GB)
    Original device:
        Size: 20100992 blocks (9.6 GB)
    Device                                     Start Block  Dbase   State Reloc
    c2t2d0s1                                           330  No       Okay  Yes
    c4t12d0s1                                          330  No       Okay  Yes
    /dev/dsk/c10t600C0FF0000000000015153295A4B100d0s1  330  No  Resyncing  Yes

这种情况下，必须停止并取消绑定将 Solaris 卷管理器卷用作虚拟磁盘的域，以便完成重新同步。然后，可使用 `metasync` 命令重新同步 Solaris 卷管理器卷。

    # metasync d0

##### 在安装了 VxVM 的情况下使用虚拟磁盘

在系统上安装 Veritas 卷管理器 (Veritas Volume Manager, VxVM) 后，如果已针对要作为虚拟磁盘导出的物理磁盘或分区启用了 Veritas 动态多路径 (Dynamic Multipathing, DMP)，则在导出该磁盘或分区时不得设置 `excl` 选项（非默认选项）。否则，在绑定使用此类磁盘的域时，则会在 `/var/adm/messages` 中收到错误。

    vd_setup_vd():  ldi_open_by_name(/dev/dsk/c4t12d0s2) = errno 16
    vds_add_vd():  Failed to add vdisk ID 0

您可以通过查看命令 `vxdisk` `list` 的输出中的多路径信息，检查是否启用了 Veritas DMP；例如：

    # vxdisk list Disk_3
    Device:    Disk_3
    devicetag: Disk_3
    type:      auto
    info:      format=none
    flags:     online ready private autoconfig invalid
    pubpaths:  block=/dev/vx/dmp/Disk_3s2 char=/dev/vx/rdmp/Disk_3s2
    guid:      -
    udid:      SEAGATE%5FST336753LSUN36G%5FDISKS%5F3032333948303144304E0000
    site:      -
    Multipathing information:
    numpaths:  1
    c4t12d0s2  state=enabled

或者，如果您针对要在设置了 `excl` 选项的情况下作为虚拟磁盘导出的磁盘或分片启用了 Veritas DMP，则可以使用 `vxdmpadm` 命令禁用 DMP。例如：

    # vxdmpadm -f disable path=/dev/dsk/c4t12d0s2

#### 在虚拟磁盘之上使用卷管理器

本节介绍在虚拟磁盘之上使用卷管理器的情况。

##### 在虚拟磁盘之上使用 ZFS

任何虚拟磁盘都可以与 ZFS 结合使用。在任何域中都可以导入 ZFS 存储池 (`zpool`)，该域可以看到属于该 `zpool` 的所有存储设备，而不管该域将所有这些设备视为虚拟设备还是实际设备。

##### 在虚拟磁盘之上使用 Solaris 卷管理器

在 Solaris 卷管理器本地磁盘组中可以使用任何虚拟磁盘。例如，虚拟磁盘可用于存储本地磁盘组的 Solaris 卷管理器元设备状态数据库 `metadb`(1M)，或者用于在本地磁盘组中创建 Solaris 卷管理器卷。

其后端为 SCSI 磁盘的任何虚拟磁盘都可以在 Solaris 卷管理器共享磁盘组 `metaset`(1M) 中使用。其后端不是 SCSI 磁盘的虚拟磁盘不能添加到 Solaris 卷管理器共享磁盘组。如果尝试将其后端不是 SCSI 磁盘的虚拟磁盘添加到 Solaris 卷管理器共享磁盘组，则会失败并显示类似下面内容的错误。

    # metaset -s test -a c2d2
    metaset: domain1: test: failed to reserve any drives

##### 在虚拟磁盘之上使用 VxVM

有关来宾域中的 VxVM 支持的信息，请参见 Symantec 的 VxVM 文档。

版权所有 © 2007, 2010, Oracle 和/或其附属公司。 保留所有权利。 法律声明 |