Solaris Volume Manager 管理指南

关于 Solaris Volume Manager 状态数据库和副本

Solaris Volume Manager 状态数据库包含所有卷、热备件和磁盘集的配置和状态信息。Solaris Volume Manager 可维护状态数据库的多个副本,以提供冗余并防止数据库在系统崩溃过程中损坏(最多只会有一个数据库副本损坏)。

状态数据库副本可以确保状态数据库中的数据始终有效。当状态数据库被更新时,每个状态数据库副本也被更新。一次只会对一个副本进行更新(以防止系统崩溃的情况下所有更新副本都会损坏)。

如果系统丢失了状态数据库副本,则 Solaris Volume Manager 必须确定哪个状态数据库副本仍然包含有效数据。Solaris Volume Manager 通过使用多数一致算法来确定此信息。在此算法中,只有当多数(半数 + 1 个)状态数据库副本可用并一致时,才会认为其中的任何状态数据库副本是有效的。由于多数一致算法的要求,设置磁盘配置时,必须创建至少三个状态数据库副本。只要三个状态数据库副本中至少有两个可用,就可以取得一致。

在引导过程中,Solaris Volume Manager 将忽略损坏的状态数据库副本。在某些情况下,Solaris Volume Manager 会尝试重写损坏的状态数据库副本。否则,在修复这些状态数据库副本之前,会将其忽略。如果状态数据库副本由于其基础片遇到错误而损坏,则需要修复或替换该片,然后再启用副本。


注意 – 注意 –

请勿将状态数据库副本放置在通过光纤连接系统的存储器、SAN 或未与系统直接连接的其他存储器中。否则可能无法引导 Solaris Volume Manager。副本所在的存储设备在引导过程中必须与传统 SCSI 驱动器或 IDE 驱动器在同一时间可用。


如果丢失所有的状态数据库副本,则理论上可能会丢失存储在 Solaris Volume Manager 卷中的所有数据。出于此原因,最好是在单独的驱动器上跨多个控制器创建足够的状态数据库副本,以防止灾难性故障。另外,保存初始的 Solaris Volume Manager 配置信息以及磁盘分区信息也是明智之举。

有关如何向系统中添加其他状态数据库副本的信息,请参见第 7 章,状态数据库(任务)。有关丢失状态数据库副本时如何进行恢复的信息,请参见从状态数据库副本故障中恢复

状态数据库副本还用于 RAID-1 卷重新同步方面。与镜像数目相比,如果状态数据库副本相对过少,则可能会导致副本 I/O 影响 RAID-1 卷的性能。也即是说,如果有大量镜像,请确保每个 RAID-1 卷至少有两个状态数据库副本,每个磁盘集最多有 50 个副本。

缺省情况下,卷(本地集)和磁盘集的每个状态数据库副本都占用 4 MB(8192 个磁盘扇区)的磁盘存储空间。多属主磁盘集的状态数据库副本的缺省大小为 16 MB。

副本可以存储在以下设备中:

副本不能存储在根 (/)、swap/usr 片上,也不能存储在包含现有文件系统或数据的片上。副本存储后,可以将卷或文件系统放置在同一个片上。