Solaris Volume Manager 管理指南

第 3 章 Solaris Volume Manager 概述

本章介绍 Solaris Volume Manager 的总体结构。本章包含以下信息:

Solaris Volume Manager 中的新增功能

本节介绍了此 Solaris 发行版中在使用 Solaris Volume Manager 方面的新增功能。

有关 Solaris 新增功能的完整列表以及 Solaris 发行版的描述,请参见《Solaris 10 新增功能》

Solaris Volume Manager 介绍

Solaris Volume Manager 是用于管理大量磁盘及磁盘上数据的软件产品。尽管 Solaris Volume Manager 产品的用途有很多,但主要任务包括:

在某些情况下,Solaris Volume Manager 还可以提高 I/O 性能。

有关 Solaris 操作系统所支持的磁盘类型的信息,请参见《系统管理指南:设备和文件系统》中的第 11  章 “管理磁盘(概述)”

Solaris Volume Manager 如何管理存储

Solaris Volume Manager 使用虚拟磁盘来管理物理磁盘及其关联的数据。在 Solaris Volume Manager 中,虚拟磁盘称为。出于历史原因,某些命令行实用程序也将卷称为元设备

在应用程序或文件系统看来,从功能方面讲,卷与物理磁盘完全相同。Solaris Volume Manager 可将定向到卷的 I/O 请求转换成定向到基础成员磁盘的 I/O 请求。

Solaris Volume Manager 卷是由磁盘片或其他 Solaris Volume Manager 卷构建的。创建卷的简单方法是使用内置于 Solaris Management Console 中的图形用户界面 (graphical user interface, GUI)。Solaris Management Console 中增强的存储工具为您展示了所有现有卷的视图。按照向导中的步骤,您可以方便地生成任何种类的 Solaris Volume Manager 卷或组件。您还可以使用 Solaris Volume Manager 命令行实用程序生成和修改卷。

例如,如果需要更多存储容量作为单个卷,可以使用 Solaris Volume Manager 使系统将片集合视为一个较大的卷。使用这些片创建卷之后,可以立即开始使用该卷,就像使用任何“真正”的片或设备一样。

有关卷的更详细的介绍,请参见卷概述

Solaris Volume Manager 通过使用 RAID-1(镜像)卷和 RAID-5 卷可以提高数据的可靠性和可用性。Solaris Volume Manager 热备件可以进一步提高镜像卷和 RAID-5 卷的数据可用性。

设置配置后,可以使用 Solaris Management Console 中增强的存储工具来报告其操作。

如何管理 Solaris Volume Manager

使用以下方法之一来管理 Solaris Volume Manager:


注 –

请不要尝试同时使用命令行和 GUI 来管理 Solaris Volume Manager。对配置进行的更改可能会发生冲突,致使其行为不可预测。可以使用这两种工具来管理 Solaris Volume Manager,但不能同时使用。


图 3–1 Solaris Management Console 中增强的存储工具 (Solaris Volume Manager) 视图

屏幕抓图显示了增强的存储工具。组件列于右侧,各种 Solaris Volume Manager 工具列于左侧。

Procedure如何访问 Solaris Volume Manager 图形用户界面 (Graphical User Interface, GUI)

Solaris Volume Manager GUI(增强的存储)是 Solaris Management Console 的一部分。要访问 GUI,请按照以下说明操作:

  1. 使用以下命令在主机系统上启动 Solaris Management Console:


    % /usr/sbin/smc
    
  2. 在“导航”窗格中双击“本计算机”。

  3. 在“导航”窗格中双击“保存”。

  4. 在“导航”窗格中双击“增强存储器”,以装入 Solaris Volume Manager 工具。

  5. 如果系统提示您登录,请以超级用户或具备等效访问权限的用户身份登录。

  6. 双击用于管理卷、热备用池、状态数据库副本和磁盘集的相应图标。


    提示 –

    Solaris Management Console 中的所有工具都在控制台窗口底部或向导面板左侧显示信息。在任何时候选择“帮助”,都可查找有关在此界面中执行任务的其他信息。


Solaris Volume Manager 要求

Solaris Volume Manager 要求包括以下内容:

Solaris Volume Manager 组件概述

使用 Solaris Volume Manager 创建的五种基本类型的组件为卷、软分区、磁盘集、状态数据库副本和热备用池。下表概述了这些 Solaris Volume Manager 功能。

表 3–1 Solaris Volume Manager 功能汇总

Solaris Volume Manager 功能 

定义 

目的 

更多信息 

  • RAID-0 卷(条带化卷、串联卷、串联的条带化卷)

  • RAID-1(镜像)卷

  • RAID-5 卷

一组物理片,在系统中显示为单个逻辑设备 

用于增加存储容量、改善性能或提高数据可用性。 

卷概述

软分区 

物理片或逻辑卷的细分,提供更小,更易于管理的存储单元 

用于提高大型存储卷的可管理性。  

第 12 章,软分区(概述)

状态数据库(状态数据库副本)

包含所有卷、热备件和磁盘集的配置和状态信息的数据库。创建状态数据库副本之前,Solaris Volume Manager 无法操作。 

用于存储有关 Solaris Volume Manager 配置状态的信息 

状态数据库和状态数据库副本

热备用池

保留的片(热备件)集合。子镜像或 RAID-5 卷组件出现故障时,系统会使用这些片进行替换。 

用于提高 RAID-1 和 RAID-5 卷的数据可用性。 

热备用池

磁盘集

单独名称空间中的一组共享的磁盘驱动器,其中包含可由多台主机不同时共享的卷和热备件 

用于提供数据冗余性和数据可靠性,并提供单独的名称空间以便更易于管理。 

磁盘集

卷概述

是一组物理片,在系统中显示为单个逻辑设备。在标准的 UNIX® 术语中,卷实际上是伪(或虚拟)设备。


注 –

以前,Solstice DiskSuiteTM 产品将这些逻辑设备称为元设备。但是,为了简单化和标准化,本书将这些设备称为卷。


卷的类别

可以将卷作为 RAID-0(串联或条带化)卷、RAID-1(镜像)卷、RAID-5 卷或软分区进行创建。

可以使用 Solaris Management Console 中增强的存储工具或命令行实用程序来创建和管理卷。

下表汇总了各种类别的卷。

表 3–2 卷的类别

卷 

说明 

RAID-0(条带化卷或串联卷)

可以直接使用,也可用作镜像的基本生成块。RAID-0 卷不直接提供数据冗余性。  

RAID-1(镜像)

通过维护多个副本来复制数据。RAID-1 卷由一个或多个称为子镜像的 RAID-0 卷组成。 

RAID-5

通过使用奇偶校验信息来复制数据。在磁盘出现故障时,可以使用可用数据和奇偶校验信息重新生成缺少的数据。一般情况下,RAID-5 卷是由片组成的。将大小相当于一片的空间用来存储奇偶校验信息,但奇偶校验分布于 RAID-5 卷的所有片上。 

软分区 

将片或逻辑卷分成一个或多个更小的可扩展卷。 

如何使用卷

可以使用卷来提高存储容量、性能和数据可用性。在某些情况下,卷还可以提高 I/O 性能。在功能方面,卷与片特性相同。卷与片很相像,所以对于最终用户、应用程序和文件系统,卷是透明的。就像访问物理设备一样,可以通过块或原始设备名称来访问卷。根据使用的是块还是原始设备,卷名称也会有所不同。有关卷名称的详细信息,请参见卷名称

可以对卷使用大多数文件系统命令,包括 mkfsmountumountufsdumpufsrestore 等。但是,不能使用 format 命令。只要卷包含挂载的文件系统,就可以对该卷进行读取、写入和复制文件等操作。

示例—包含两个片的卷

图 3–2 显示一个包含两个片的卷,一个片来自磁盘 A,另一个片来自磁盘 B。应用程序或 UFS 会像处理一个物理磁盘那样处理卷。通过向卷中添加更多片,可以增加其存储容量。

图 3–2 卷、物理磁盘和片之间的关系

图中显示两个磁盘没,以及 Solaris Volume Manager 将这些磁盘上的片显示为单个逻辑卷的方式。

使用 growfs 命令扩展卷和磁盘空间

使用 Solaris Volume Manager,可以通过添加其他片来扩展卷。可以使用 Solaris Management Console 中增强的存储工具 或命令行界面向现有卷添加片。

在不停止或备份系统的情况下,可以扩展卷中包含的已挂载或未挂载的 UFS 文件系统。不过,备份数据总是有益无害的。扩展卷后,请使用 growfs 命令来扩充文件系统。


注 –

扩展文件系统后,就不能缩小文件系统的大小。无法缩小文件系统的大小是 UFS 的限制。同样,增大 Solaris Volume Manager 分区后,就不能再将其缩小。


使用原始卷的应用程序和数据库必须自备“增加”扩展空间的方法,以便应用程序可以识别它。Solaris Volume Manager 不提供此功能。

可以采用以下方式扩展卷中的磁盘空间:

growfs 命令可以扩展 UFS 文件系统,而不会中断服务或丢失数据。但是,在 growfs 命令运行的同时会暂停对卷的写访问。可以将文件系统的大小扩展到包含该文件系统的片或卷的大小。

通过对 growfs 命令使用 -s size 选项,可以扩展文件系统以便仅使用所增加的磁盘空间的部分。


注 –

扩展镜像时,先向镜像的基础子镜像添加空间。然后,再对 RAID-1 卷运行 growfs 命令。一般规则是向基础设备添加空间,并对顶层设备运行 growfs 命令。


卷名称

就像物理片一样,卷的逻辑名称也会出现在文件系统中。逻辑卷名在块设备的 /dev/md/dsk 目录和原始设备的 /dev/md/rdsk 目录中具有对应的项。在任何 meta* 命令中,通常使用缩写形式的卷名(如 d1),而不用指定完整的卷名(如 /dev/md/dsk/ volume-name)。一般情况下,只要卷当前没有被使用,且新名称没有被其他卷使用,就可以对卷进行重命名。有关更多信息,请参见交换卷名称

最初,卷名称必须以字母“d”开头,后跟一个数字(例如 d0)。此格式现在仍可使用。下面是使用“d*”命名构造的卷名称示例:

/dev/md/dsk/d0

块卷 d0

/dev/md/dsk/d1

块卷 d1

/dev/md/rdsk/d126

原始卷 d126

/dev/md/rdsk/d127

原始卷 d127

卷名称命名原则

命名卷名称时使用一个统一的标准可以简化管理并使您可以快速识别卷类型。以下是几条建议:

状态数据库和状态数据库副本

状态数据库是用于存储有关 Solaris Volume Manager 配置状态信息的数据库。状态数据库记录并跟踪对配置所做的更改。配置或状态发生更改时,Solaris Volume Manager 会自动更新状态数据库。例如,创建新卷是一种配置更改,而子镜像失败则是一种状态更改。

实际上,状态数据库是多个复制的数据库副本的集合。每个副本(称为状态数据库副本)都可以确保状态数据库中的数据始终有效。多个状态数据库副本可以防止发生单点故障时丢失数据。状态数据库可以跟踪所有已知状态数据库副本的位置和状态。

在创建状态数据库及其状态数据库副本之前,Solaris Volume Manager 无法进行操作。Solaris Volume Manager 配置中必须具有运行状态数据库。

当设置配置时,您可以将状态数据库副本放在以下位置之一:

Solaris Volume Manager 可以识别包含状态数据库副本的片,如果该片位于某个卷中而且正在使用,则会自动跳过其中的副本。为状态数据库副本保留的那部分片不应用于任何其他用途。

一个片上可以存储多个状态数据库副本。但是这样做,在发生单点故障时系统可能更容易受到损坏。

Solaris 操作系统在删除所有状态数据库副本后仍然可以继续正常工作。但是,如果在磁盘上不存在现有状态数据库副本的情况下重新引导系统,系统会丢失所有的 Solaris Volume Manager 配置数据。

热备用池

热备用池是 Solaris Volume Manager 保留的用于自动替换出故障组件的片(热备件)的集合。可以在子镜像或 RAID-5 卷中使用这些热备件。热备件为 RAID-1 和 RAID-5 卷提供增强的数据可用性。可以使用 Solaris Management Console 中增强的存储工具 或命令行界面来创建热备用池。

出现组件错误时,Solaris Volume Manager 会查找第一个等于或大于故障组件大小的热备件。如果找到符合条件的热备件,Solaris Volume Manager 会自动替换组件并重新同步数据。如果未在热备件列表中找到适当大小的片,则认为子镜像或 RAID-5 卷已失败。有关更多信息,请参见第 16 章,热备用池(概述)

磁盘集

磁盘集是一组物理存储卷,其中包含逻辑卷和热备件。卷和热备用池必须在该磁盘集中的驱动器上生成。在磁盘集中创建卷后,可以像使用物理片一样使用该卷。

磁盘集在群集环境中提供数据可用性。如果某台主机出现故障,其他主机可以接管出故障主机的磁盘集。(这种类型的配置称为故障转移配置。)此外,可以使用磁盘集来帮助管理 Solaris Volume Manager 名称空间,并实现对网络连接存储设备的随时访问。

有关更多信息,请参见第 18 章,磁盘集(概述)

Solaris Volume Manager 配置原则

设计不完善的 Solaris Volume Manager 配置可能会降低性能。本节提供有关实现 Solaris Volume Manager 的良好性能的提示。有关存储配置性能原则的信息,请参见常规性能指南

一般原则

文件系统挂载原则

请不要在卷的基础片上挂载文件系统。如果该片将用于任何种类的卷,则不得将该片作为文件系统进行挂载。如果可能,请在激活卷之前先取消挂载要用作卷的任何物理设备。

有关创建 Solaris Volume Manager 组件的概述

创建 Solaris Volume Manager 组件时,可以为逻辑 Solaris Volume Manager 名称(如 d0)指定物理片。可以创建的 Solaris Volume Manager 组件包括以下各项:


注 –

有关如何命名卷的建议,请参见卷名称


创建 Solaris Volume Manager 组件的先决条件

以下是创建 Solaris Volume Manager 组件的先决条件:

Solaris Volume Manager 中的多 TB 支持的概述

从 Solaris 9 4/03 发行版开始,Solaris Volume Manager 支持在运行 64 位内核的系统上使用大于 1 TB (Tbyte) 的存储设备和逻辑卷。


注 –

请使用 isainfo -v 确定系统是否正在运行 64 位内核。如果出现字符串 "64-bit",则说明您正在运行 64 位内核。


使用 Solaris Volume Manager,可以执行以下操作:

系统自动支持大的卷。如果创建大于 1 TB 的设备,则 Solaris Volume Manager 会对其进行相应配置,而无需用户干预。

大卷支持限制

Solaris Volume Manager 仅支持在 Solaris 9 4/03 或更高发行版的系统上运行 64 位内核时使用大卷(大于 1 TB)。 在以前的 Solaris 9 发行版上的 32 位内核下运行包含大卷的系统将影响 Solaris Volume Manager 的功能。 具体来说,请注意以下几点:


注意 – 注意 –

如果期望使用 32 位内核运行 Solaris 软件,或者希望使用 Solaris 9 4/03 发行版之前的 Solaris OS 版本,请不要创建大卷。


使用大卷

所有的 Solaris Volume Manager 命令都适用于大卷。不需要做任何语法变更或执行任何特殊任务,即可利用大卷支持。因此,熟悉 Solaris Volume Manager 的系统管理员可以直接使用 Solaris Volume Manager 大卷。


提示 –

如果创建了大卷,随后确定需要在以前的 Solaris 发行版下使用 Solaris Volume Manager,或需要在 32 位 Solaris 9 4/03 或更高版本内核下运行,则需要删除大卷。请在 64 位内核下使用 metaclear 命令从 Solaris Volume Manager 配置中删除大卷,然后在以前的 Solaris 发行版或 32 位内核下重新引导系统。


升级到 Solaris Volume Manager

Solaris Volume Manager 完全支持从 Solstice DiskSuite 版本 4.1、4.2 和 4.2.1 进行无缝升级。请确保所有的卷都处于 Okay(正常)状态(而不是“Needs Maintenance(需要维护)”或“Last Erred(最近出错)”状态),而且任何热备件都没有被使用。您不需要对 Solaris Volume Manager 执行任何其他特殊任务,即可使升级顺利进行,也就是说,不必更改配置或细分引导镜像。升级系统时,将显示 Solstice DiskSuite 配置,并且升级后通过 Solaris Volume Manager 工具可以访问该配置。

Solaris 10 OS 引入了服务管理工具 (Service Management Facility, SMF),该工具提供了用于扩充传统 UNIX 启动脚本、init 运行级和配置文件的基础结构。 从以前的 Solaris OS 版本升级时,请验证与 Solaris Volume Manager 关联的 SMF 服务是否处于联机状态。 如果 SMF 服务没有联机,管理 Solaris Volume Manager 时可能会遇到问题。

要检查与 Solaris Volume Manager 关联的 SMF 服务,请使用以下形式的 svcs 命令:


# svcs -a |egrep "md|meta"

disabled       12:05:45 svc:/network/rpc/mdcomm:default

disabled       12:05:45 svc:/network/rpc/metamed:default

disabled       12:05:45 svc:/network/rpc/metamh:default

online         12:05:39 svc:/system/metainit:default

online         12:05:46 svc:/network/rpc/meta:default

online         12:05:48 svc:/system/fmd:default

online         12:05:51 svc:/system/mdmonitor:default

如果 Solaris Volume Manager 配置仅包含本地集,则这些服务应该是联机的:

svc:/system/metainit

svc:/network/rpc/meta

svc:/system/mdmonitor

如果 Solaris Volume Manager 配置包括磁盘集,则这些其他服务应该是联机的:

svc:/network/rpc/metamed

svc:/network/rpc/metamh

如果 Solaris Volume Manager 包括多节点磁盘集,则除了已提到的其他服务以外,此服务也应该是联机的:

svc:/network/rpc/mdcomm

有关 SMF 的更多信息,请参见《系统管理指南:基本管理》中的第 14  章 “管理服务(概述)”