Solaris 9 9/04 安装指南

第 33 章 Solaris Live Upgrade(概述)

本章介绍 Solaris Live Upgrade 进程。


注意:

本书采用这一术语,但某些 Solaris 文档和程序可能将片称为分区。


Solaris Live Upgrade 简介

Solaris Live Upgrade 提供了一种可以在系统继续操作时更新系统的方法。 当前引导环境运行时,可以复制引导环境,然后升级副本。 或者,如果不想升级,可以在引导环境上安装一个 Solaris Flash 归档文件。 原始系统配置仍保持完全正常运行,不受升级或安装归档文件的影响。 做好准备后,可以通过重新引导系统来激活新的引导环境。 如果发生故障,只需重新引导即可快速恢复到原始引导环境。 此开关消除了测试和评估进程中常见的停机时间。

通过 Solaris Live Upgrade 可以复制引导环境,而不影响当前运行的系统。 然后可以执行以下操作:

在使用 Solaris Live Upgrade 之前,有必要对基本系统管理做一些了解。 有关系统管理任务(如管理文件系统、安装、引导和管理交换)的背景信息,请参见 System Administration Guide: Devices and File Systems

Solaris Live Upgrade 进程

下面概述了为创建当前引导系统的副本、升级副本和切换升级副本使之成为使用中的引导环境而必须执行的任务。

创建引导环境

创建引导环境的进程提供了一种将重要文件系统从使用中的引导环境复制到新引导环境的方法。 磁盘在必要时被重新组织,文件系统被定制,而重要文件系统则被复制到新的引导环境中。

文件系统类型

Solaris Live Upgrade 可以区分两种类型的文件系统: 重要文件系统和可共享文件系统。 Solaris 操作环境必需的重要文件系统。 这些文件系统是使用中和未激活的引导环境的 vfstab 中的独立安装点。根 (/)、/usr/var/opt 就属于这类文件系统。 这些文件系统始终从源复制到未激活的引导环境。 重要文件系统有时被称作不可共享。 可共享文件系统是用户定义的文件,如 /export,它在使用中和未激活的引导环境的 vfstab 中包含相同的安装点。 因此,在使用中的引导环境中更新共享文件也会更新未激活的引导环境中的数据。 当您创建一个新的引导环境时,缺省情况下,可共享文件系统将被共享。 但是您可以指定一个目标片,然后文件系统被复制。 有关可共享文件系统的详细信息,请参见为可共享文件系统选择片的原则

交换是特殊的可共享文件系统。 与可共享文件系统一样,缺省情况下,所有交换片都被共享。 但如果您为交换指定一个目标目录,交换片将被复制。 有关重新配置交换的过程,请参见以下内容:

Solaris Live Upgrade 可以通过文件系统中的 RAID-1 卷(镜像)创建引导环境。 有关概述信息,请参见使用镜像文件系统创建引导环境

复制文件系统

创建新引导环境的进程从标识未用的片开始,重要文件系统可以复制到这个片中。 如果片不可用,或片无法满足最低要求,则需要格式化一个新片。

定义了片之后,可以在文件系统被复制到目录中之前,在新的引导环境上重新配置文件系统。 您通过拆分和合并文件系统来重新配置它们,这提供了一种编辑 vfstab 以连接和断开文件系统目录的简单方法。 指定同一个安装点,可以将文件系统合并到父目录。 还可通过指定不同的安装点,将文件系统从父目录中拆分出来。

在未激活的引导环境上配置了文件系统后,您开始自动复制。 重要文件系统被复制到指定目录中。 可共享的文件系统不会被复制,但会被共享。 但有一个例外情况:您可以指定某些要复制的可共享文件系统。 当文件系统从使用中的引导环境复制到未激活的引导环境时,这些文件将被定向到新的目录中。 使用中的引导环境不会有任何变化。

下图显示了创建新引导环境的不同方法。

图形 33–1 显示了已复制到磁盘的其它片上以创建新引导环境的重要文件系统根 (/)。 使用中的引导环境包含一个片上的根 (/)。 新的引导环境是一个精确的副本,其根 (/) 在一个新片上。 文件系统 /swap/export/home 由使用中和未激活的引导环境共享。

图形 33–1 创建未激活的引导环境 - 将根 (/) 复制到根 (/)

文中对此图例进行了说明。

图形 33–2 显示了被拆分并复制到磁盘片上以创建新引导环境的重要文件系统。 使用中的引导环境包含一个片上的根 (/)。 在那个片上,根 (/) 中包含 /usr/var/opt 目录。 在新的引导环境中,根 (/) 被拆分,/usr/opt 被放在不同的片上。 文件系统 /swap /export/home 被两个引导环境共享。

图形 33–2 创建未激活的引导环境 - 拆分文件系统

文中对此图例进行了说明。

图形 33–3 显示了被合并并复制到磁盘片上以创建新引导环境的重要文件系统。 使用中的引导环境中包含根 (/)、/usr/var/opt,每个文件系统都在自己的片上。 在新的引导环境中,/usr 和 /opt 在一个片上被合并到根 (/) 中。 文件系统 /swap /export/home 被两个引导环境共享。

图形 33–3 创建未激活的引导环境 - 合并文件系统

文中对此图例进行了说明。

使用镜像文件系统创建引导环境

Solaris Live Upgrade 使用 Solaris 卷管理器技术创建包含镜像文件系统的引导环境。 Solaris 卷管理器提供了一种通过使用卷来可靠管理磁盘的有效方法。 在 Solaris 卷管理器中可以启用关联、分组和其它复杂配置。 在 Solaris Live Upgrade 中可以启用这些任务的子集,例如创建根 ( /) 文件系统的 RAID-1 卷。

卷可以跨几个磁盘对磁盘片进行分组,以便透明显示为操作环境的单个磁盘。 Solaris Live Upgrade 仅限于为在 RAID-1 卷(镜像)内部包含单片关联的根 (/) 文件系统创建引导环境。 这是由于引导 PROM 仅限于从要引导的片中选择一片。

创建引导环境时,可以使用 Solaris Live Upgrade 管理以下任务。

要使用 Solaris Live Upgrade 的镜像功能,必须至少创建一个状态数据库和三个状态数据库副本。 状态数据库在磁盘上存储有关 Solaris 卷管理器配置的状态的信息。 状态数据库是多个复制的数据库副本的集合。 每个副本都代表一个状态数据库副本。 复制状态数据库时,应该防止单点故障引起的数据丢失。 有关创建状态数据库的步骤,请参见 Solaris Volume Manager Administration Guide 中的“State Database (Overview)”

运行 lucreate 命令时使用 -m 选项可以创建镜像、拆离子镜像以及为新引导环境附加子镜像。

表 33–1 Solaris Live Upgrade 使用的 Solaris 卷管理器元素

术语 

说明 

状态数据库

状态数据库在磁盘上存储有关 Solaris 卷管理器配置的状态的信息。 状态数据库是多个复制的数据库副本的集合。 每个副本都代表一个状态数据库副本。 状态数据库可以跟踪所有已知状态数据库副本的位置和状态。 

状态数据库副本 

状态数据库的副本。 副本可以确保数据库中的数据有效。 

一组物理片或其它卷,在系统中显示为单个逻辑设备。 从应用程序或文件系统的角度看,卷在功能上等同于物理磁盘。 在某些命令行公用程序中,卷称作元设备。  

表 33–2 中显示了 Solaris Live Upgrade 可以管理的组件。

表 33–2 卷的类别

术语 

说明 

RAID-1 卷

通过保留多个副本复制数据的卷的类。 RAID-1 卷有时称为镜像。 RAID-1 由一个或多个称为子镜像的 RAID-0 卷组成。  

RAID-0 卷

可以为分组或关联的卷的类。 这些组件也称为子镜像。 分组或关联是镜像的基本生成块。  

镜像

RAID-1 卷。 参见 RAID-1 卷。 

关联

RAID-0 卷。 如果片被关联,数据将写入第一个可用片,直到该片被写满。 该片写满后,数据将依次写入下一个片。 关联不提供数据冗余,除非它包含在镜像中。 

子镜像

请参见 RAID-0 卷。 

图形 33–4 显示了在两个物理磁盘上创建的、包含 RAID-1 卷(镜像) 的新引导环境。 以下命令创建了新的引导环境和镜像。


# lucreate -n second_disk -m /:/dev/md/dsk/d30:mirror,ufs \ 
-m /:c0t1d0s0,d31:attach -m /:c0t2d0s0,d32:attach \ 
-m -:c0t1d0s1:swap -m -:c0t2d0s1:swap  

此命令执行以下任务:

图形 33–4 创建引导环境并创建镜像

文中对此图例进行了说明。

图形 33–5 显示了包含 RAID-1 卷(镜像)的新引导环境。 以下命令创建了新的引导环境和镜像。


# lucreate -n second_disk -m /:/dev/md/dsk/d20:ufs,mirror \ 
-m /:/dev/dsk/c0t1d0s0:detach,attach,preserve

此命令执行以下任务:

图形 33–5 创建引导环境并使用现有子镜像

文中对此图例进行了说明。

升级引导环境

创建引导环境后,可以在引导环境中执行升级。 作为升级的一部分,引导环境可以包含任何文件系统的 RAID-1 卷(镜像)。 升级并不影响使用中的引导环境中的任何文件。 做好准备后,便可以启动新的引导环境,它将成为当前引导环境。

图形 33–6 显示了到未激活的引导环境的升级。

图形 33–6 升级未激活的引导环境

文中对此图例进行了说明。

如果不想升级,可以在引导环境上安装一个 Solaris Flash 归档文件。 Solaris Flash 安装功能允许您在系统上创建 Solaris 操作环境的单个引用安装。 此系统称为主系统。 然后,您可以在许多被称为克隆系统的系统上复制该安装。 在这里,未激活的引导环境就是一个克隆。 当您在系统上安装 Solaris Flash 归档文件时,它会像初始安装那样替换现有引导环境中的所有文件。

有关安装 Solaris Flash 归档文件的过程,请参见在引导环境中安装 Solaris Flash 归档文件

图形 33–7 显示了在未激活的引导环境上的 Solaris Flash 归档文件安装。

图形 33–7 安装 Solaris Flash 归档文件

文中对此图例进行了说明。

激活引导环境

当您准备好切换并使新的引导环境成为使用中时,只需快速激活新的引导环境并重新引导。 文件在您第一次引导新建的引导环境时在引导环境之间同步。 “同步”是指某些系统文件和目录从上一个使用中的引导环境复制到正在引导的引导环境。 重新引导系统时,在新的引导环境中安装的配置仍是使用中的。 原始引导环境于是变成未激活的引导环境。

图形 33–8 显示了重新引导后从未激活引导环境到使用中的引导环境的切换。

图形 33–8 启动未激活的引导环境

文中对此图例进行了说明。

回退到原始引导环境

如果显示故障,则可以通过激活和重新引导快速回退到原始引导环境。 回退到原始引导环境可能是出于以下原因:

使用回退只需要重新引导系统的时间,比备份并恢复到原始环境要快得多。 不能引导的新引导环境会被保留。 然后,就可以分析该故障。 您只能回退到由 luactivate 用来启动新引导环境的引导环境。

您可以通过以下几种方式回退到以前的引导环境:

有关回退的过程,请参见故障恢复: 回退到初始引导环境 (命令行界面)

图形 33–9 显示了您重新引导以回退时的切换。

图形 33–9 回退到原始引导环境

文中对此图例进行了说明。

维护引导环境

您还可以进行多种维护操作,如检查状态、重命名或删除引导环境。 有关维护过程,请参见第 37 章,维护 Solaris Live Upgrade 引导环境(任务)