免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3054 | 回复: 0
打印 上一主题 下一主题

AIX Technology Level 更新策略 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-01-19 16:58 |只看该作者 |倒序浏览
引言
保持使用最新的 AIX Technology Level (TL) 一直是实现更好的可用性、可靠性和安全的最佳方法。TL 是为 AIX 版本或新硬件支持所添加的一组修复程序或新特性。
以下是决定您应该更新到新版本 TL 的原因:
  • 新版本 TL 提供了一个您需要的新功能。
  • 当前版本的 TL 不能使用或将不支持新的修复和服务程序包。
  • 系统目前需要一个修复程序,但是这个程序只在新版本 TL 中支持。
本文将详细说明 TL 的多种更新和回滚方法。它介绍了 IBM 提供的已批准和支持的 TL 升级方法。

开始前准备
TL 应用必须以组为单位。安装一个 TL 是一个 “全或无” 的操作。从支持的观点上看,安装一部分 TL 是不可能。
应用一个 TL 之前,您一定要先备份您当前的安装环境,然后要计划一个最坏的情况—在需要的时候将系统回滚到之前的版本。
同时,TL 更新必须提交,因为它们是不能够被拒绝的。如果一个 TL 已经应用但是您需要返回之前的版本,那么您就需要使用一个回滚计划。
一般的经验法则是一定要在更新之前创建一个备份。这个备份可以是任何一种镜像备份(mksysb 镜像、sysback 镜像等)。
备用镜像创建好之后,就可以开始升级了。
同时,一个很好的实践方法是创建一个健康检查表,保存尽可能多的系统信息(netstat、ifconfig、lsvg、lsdev、lscfg、prtconf 等),并将它保存在服务器升级所在位置之外的某个位置。要记住这些信息会在遇到问题时作为支持材料使用。
如果准备安装的 TL 版本是 AIX 5.3 TL10 和 AIX 6.1 TL2 之前的,那么一定要删除系统的所有临时修复程序(ifix)。清单 1 显示了如何检查已安装的 ifix 列表,而清单 2 则显示了如何删除一个 ifix。

清单 1. 检查已安装的 ifix 列表
# emgr –l


清单 2. 删除一个 ifix
# emgr –r –L <ifix Label>

更多关于 emgr 命令使用方法的信息,请参考 IBM 文档或网站主页。
如果您准备更新到 AIX 5.3 TL10 或 AIX 6.1 TL3,那么您不需要执行这些步骤,因为这些版本的 installp 和 emgr 已经改进为自动删除 TL 中出现的 ifix。否则,您需要手动删除这些 ifix。
检查所有的文件集是否均已应用且有效,如清单 3 所示。

清单 3. 检查已安装的文件集的一致性
# instfix –i | grep ML# lppchk –v

如果运行这些命令时有错误,那么要先解决这些问题。应用 TL 到不一致的 AIX 不仅会破坏操作系统,而且它可能导致操作系统无法启动。
接下来,所有状态为 APPLIED 的文件集都应该 COMMENTED。要提交这些文件集,您可以参考清单 4 所的例子。

清单 4. 提交所有状态为 APPLIED 的文件集
# installp -c -f -g –X

或者,可以使用 Smitty 提交,并根据屏幕的指示进行操作。

备用磁盘(Alternate Disk)
这是一个最广泛使用的应用新版本 TL 的方法。它包含在 IBM 技术文档和书籍中。使用一个备用磁盘有以下方法:
  • 使用第二个磁盘并将 TL 应用到这个磁盘中,而不中断原来的磁盘,在 TL 升级完成后重新启动— IBM 建议升级时终止所有进程,并且注销所有用户(本文将会介绍这个过程)。
  • 重新启动到第二个磁盘,然后在主磁盘上运行 TL 升级—有一些系统管理员经常使用这个方法,它能保证系统以一致的状态运行,并且在重新启动后不会出现问题和冲突。
无论使用哪一种方法,您都需要使用一个空闲的磁盘作为备用磁盘。
对于这个备用磁盘更新方法,所更新的服务器有一个具有两块镜像磁盘的 rootvg。因此,在开始之前要解除这些镜像,并使用第二块磁盘作为备用磁盘安装,如清单 5 所示。

清单 5. 解除 rootvg 镜像
# unmirrorvg rootvg

如果配置备用转储设备来使用备用磁盘,那么要使用 migratepv 将它的 LP 转移到保留的磁盘或者不配置备用转储设备。
将这个磁盘从 rootvg 删除(假定 X 是磁盘设备号),如清单 6 所示。

清单 6. 将磁盘从 rootvg 删除
# reducevg rootvg hdiskX

现在可以创建备用磁盘,然后将 TL 更新应用到这个磁盘上。正如本文所介绍的,TL 文件可以存储在本地、远程 NFS 或 CD-ROM 中。
您可以使用 Smitty 快捷方法 smitty alt_clone,或者 alt_disk_copy 命令。图 1 显示了初始 Smitty 屏幕。

图 1. 初始 Smitty alt_clone 屏幕

记住,如果不确定某个域,您可以按 F1 键查看帮助文档。
接下来,使用 hdisk1 目录,而 TL 文件则位于本地文件系统的 /stage_TL 目录,如图 2 所示。

图 2. 添加用于安装的 hdisk1 和 bundle、图像所在目录、以及许可协议验收

所有操作都将会被记录到 /var/adm/ras/alt_disk_inst.log。要查看这个过程,可以输入 tail –f’。
服务器需要在更新过程完成后重新启动,所以要保证启动列表显示目标备用磁盘作为启动设备(如清单 7 所示)。

例 7. 检查启动设备顺序
# bootlist –m normal –ohdisk1 blv=hd5

当服务器启动后,输入命令 oslevel –soslevel –r,检查 OS 级别现在是否为更新的 TL,如清单 8 所示。

清单 8. 检查运行的 AIX 版本
# oslevel –s5300-10-01-0921

如果更新成功,rootvg 就可以再次映射。清单 9 显示了如何再次映射 rootvg。

清单 9. 重新映射 rootvg
# exportvg old_rootvg# extendvg –f rootvg hdisk0# mirrorvg rootvg

在 hdisk0 上创建一个新的启动镜像,并将它添加到启动列表上,如清单 10 所示。

清单 10. 创建一个启动镜像
# bosboot –ad /dev/hdisk0# bootlist –m normal –o hdisk0 hdisk1


Multibos
这是迄今为止最好的升级 AIX 的方法。它是 AIX 5.3 TL3 所引入的。其优点在于 rootvg 上只需要一块磁盘,而不需要任何空闲磁盘作为备用磁盘。
Multibos 在相同的 rootvg 上创建并维护了两个不同的可启动的 AIX 实例。它类似于备用磁盘方式。在这种情况下,其中最大的差别是 Multibos 只会创建和复制以下逻辑卷(LV):
  • /;
  • /usr;
  • /var;
  • /opt;
  • hd5(启动的逻辑卷)。
虽然您可以指定和复制更多的逻辑卷,所有其他的 LV 都会共享给原始启动卷组。Multibos 支持一个新的 TL 更新,但是 Multibos 不支持 AIX 版本升级。
这一部分所提到任务之外,还要确定有足够的空闲空间,以便将所有 BOS 逻辑卷复制到同一个根卷组磁盘中,否则 Multibos 将不会生效。
通过运行 Multibos 命令创建一个新的 BOS 备用实例。在您开始操作之前要阅读它的选项和文档。清单 11 显示了如何创建一个新的 BOS 备用实例。

清单 11. 创建 Multibos 备用 BOS 的预览信息
# multibos –sXp

这里显示了将要执行的 Multibos 预览信息。更详细的信息在其日志文件(/etc/multibos/logs/op.alog)中。如果预览信息显示一切正常,那么您可以不使用预览标记(-p)而再执行一次这个命令,如清单 12 所示。

例 12. 创建 Multibos 备用 BOS
# multibos –sX

复制所有的内容需要几分钟时间,而在完成后,所有新的 LV 将会被加上前缀 “bos_”。清单 13 显示了新备用 BOS 创建后的 rootvg 信息。

清单 13. 创建的 Multibos 备用 BOS
# lsvg –l rootvg
rootvg:
LV NAME             TYPE       LPs   PPs   PVs  LV STATE      MOUNT POINT
hd5                 boot       1     1     1    closed/syncd  N/A
hd6                 paging     192   192   1    open/syncd    N/A
hd8                 jfs2log    1     1     1    open/syncd    N/A
hd4                 jfs2       1     1     1    open/syncd    /
hd2                 jfs2       17    17    1    open/syncd    /usr
hd9var              jfs2       8     8     1    open/syncd    /var
hd3                 jfs2       4     4     1    open/syncd    /tmp
hd1                 jfs2       1     1     1    open/syncd    /home
hd10opt             jfs2       1     1     1    open/syncd    /opt
lvdump1             sysdump    22    22    1    open/syncd    N/A
lvdump2             sysdump    22    22    1    open/syncd    N/A
bos_hd5             boot       1     1     1    closed/syncd  N/A
bos_hd4             jfs2       1     1     1    open/syncd    /bos_inst
bos_hd2             jfs2       17    17    1    open/syncd    /bos_inst/usr
bos_hd9var          jfs2       8     8     1    open/syncd    /bos_inst/var
bos_hd10opt         jfs2       1     1     1    open/syncd    /bos_inst/opt

一个很好的做法是进入最新创建的 BOS 实例 Shell,验证它的当前 TL,如清单 14 所示。要退出 Multibos 环境,您只需要输入‘exit’:

清单 14. 进入 Multibos Shell 并检查 AIX 版本
# multibos –S
Initializing multibos methods ...
Initializing log /etc/multibos/logs/op.alog ...
Gathering system information ...
+-----------------------------------------------------------------------------+
Multibos Shell Operation
+-----------------------------------------------------------------------------+
Verifying operation parameters ...
+-----------------------------------------------------------------------------+
Mount Processing+-----------------------------------------------------------------------------+
Mounting all standby BOS file systems ...
Mounting /bos_inst
Mounting /bos_inst/usr
Mounting /bos_inst/var
Mounting /bos_inst/opt
+-----------------------------------------------------------------------------+
Multibos Root Shell
+-----------------------------------------------------------------------------+
Starting multibos root shell ..
.Active boot logical volume is hd5.
Script command is started. The file is /etc/multibos/logs/scriptlog.090904032855.txt.
MULTIBOS> oslevel –s
5300-06-08-0831

如果所有前提任务都已经完成,TL 更新就会启动。清单 15 中所使用的命令将会更新您新创建的备用 BOS 实例。

清单 15. 更新备用 BOS 实例
# multibos –Xac –l /stage_TL

在命令完成后,再次进入 Multibos Shell,检查当前的 TL,如清单 16 所示。

清单 16. 进入 Multibos Shell
# multibos –S
Initializing multibos methods ...
Initializing log /etc/multibos/logs/op.alog ...
Gathering system information ...
+-----------------------------------------------------------------------------+
Multibos Shell Operation
+-----------------------------------------------------------------------------+
Verifying operation parameters ...
+-----------------------------------------------------------------------------+
Mount Processing
+-----------------------------------------------------------------------------+
Mounting all standby BOS file systems ...
Mounting /bos_inst
Mounting /bos_inst/us
rMounting /bos_inst/var
Mounting /bos_inst/opt
+-----------------------------------------------------------------------------+
Multibos Root Shell
+-----------------------------------------------------------------------------+
Starting multibos root shell ...
Active boot logical volume is hd5.
Script command is started. The file is /etc/multibos/logs/scriptlog.090904035718.txt.
MULTIBOS> oslevel –s
5300-10-01-0921

配置并保证启动列表将备用 BOS 作为第一启动设备,如清单 17 所示。

清单 17. 设置启动到您新的 BOS 备用实例
# multibos –B

# bootlist –m normal –o
hdisk0 blv=bos_hd5
hdisk0 blv=hd5

如果更新过程失败,那么就需要进行一个回滚操作,并将启动列表设置回之前的启动 LV,然后重启— 这将使系统返回旧版 AIX。过程如清单 18 所示。

清单 18. 将启动设备改回初始的 rootvg
# bootlist –m normal –o hdisk0 blv=hd5 hdisk0 blv=bos_hd5
# bootlist –m normal –o
hdisk0 blv=hd5
hdisk0 blv=bos_hd5

但是,如果更新过程没有出现问题,而且备用 BOS 不再需要了,那么它可以通过清单 19 的命令删除。

清单 19. 删除掉的 rootvg
# multibos -R


同一磁盘
这是最简单的方法。这个方法的缺点是回滚时需要两个启动方式。
在本例中,备用磁盘将在更新过程之前进行备份。所以,再次使用 smitty alt_clone,如图 3 所示,选择要求的备份磁盘,使用默认值执行操作。

图 3. smitty alt_clone 菜单

您也可以使用清单 20 所列的命令。

清单 20. 克隆 rootvg 的命令
          # alt_disk_copy -P "all" -d "hdisk1" -B

想要了解备用任务的执行过程,可以查看备用磁盘日志文件 /var/adm/ras/ alt_disk_inst.log。
备用磁盘准备好后,就可以执行更新过程了。您可以使用 Smitty 快捷方法 smitty update_all 或在命令行中使用install_all_updates。清单 21 显示的是更新过程。
进入包含 TL 文件集的目录:

清单 21. 同一磁盘更新过程
>        # cd /stage_TL

然后创建一个 Table of Contents (ToC) 文件:
        # inutoc .

当目录仍然包含这些文件集时,运行我们的 smitty update_all 命令,如图 4 所示。

图 4: smitty update_all initial 屏幕

第一个屏幕将会询问文件集的位置,输入一个 “.”(点)然后回车。
图 5 显示了 smitty 菜单。

图 5. smitty update_all 菜单及选项

更新过程结束后,重启服务器。
服务器重启后,输入命令 oslevel –soslevel –r ,然后检查 OS 级别现在是否在 TL 级别,如清单 22 所示。

清单 22: 检查更新后的 AIX 版本
        # oslevel –s
        5300-10-01-0921

如果更新成功,rootvg 就可以再次映射了。根据清单 23 的例子重新映射 rootvg,并在 hdisk1 上创建一个启动镜像,并将它添加到启动列表。

清单 23. 重新映射 rootvg
        # exportvg alt_inst_rootvg
        # extendvg –f rootvg hdisk1
        # mirrorvg rootvg
        # bosboot –ad /dev/hdisk1
        # bootlist –m normal –o hdisk0 hdisk1

使用一个 NIM 服务器
这也是更新 AIX 服务器的最常用方法之一。然而,在这种情况中需要使用正常运行的 NIM 服务器。
本文并不准备介绍如何配置一个 NIM 服务器及其组件:spots、lpp_sources、machines 等。
如果符合,就根据图 6 的例子开始:

图 6. 进入 smitty nim 菜单

这样会进入主 NIM 服务器 smitty 菜单,如图 7 所示。在第一个界面中选择 “Perform NIM Software Installation and Maintenance Tasks”

图 7. 主 NIM 服务器 smitty 菜单

接下来,选择 “Alternate Disk Installation”,如图 8 所示。

图 8. 选择 “Alternate Disk Installation”

选择 “Alternate Disk Installation” 选项后,再选择 “Clone rootvg to an Alternate Disk”

图 9. 选择 “Clone the rootvg to an Alternate Disk”

下一个界面中所有设置都已完成。
选择客户端主机(将要更新的服务器),输入将要应用 TL 的磁盘— 因为它将会成为一个备用磁盘,要保证这个磁盘没有被任何其他卷组(VG)使用。参照图 10 中显示的所有菜单项。

图 10. Alternate Disk Install 的 NIM 设置

在您确定和输入这些值后,NIM 将会自动开始更新客户端。
您可以从两个日志文件(/var/adm/ras/nimlog 和 /var/adm/ras/alt_disk_inst.log)查看客户端的更新过程。
在更新过程完成后,重启服务器。
当服务器重新启动完成后,输入命令 oslevel –soslevel –r,然后检查现在 OS 级别是否为所应用的 TL 级别。
        # oslevel –s
        5300-10-01-0921

如果更新成功,那么 rootvg 就可以重新映射:
        # exportvg alt_inst_rootvg
        # extendvg –f rootvg hdisk1
        # mirrorvg rootvg

在 hdisk1 上创建一个新的启动镜像,并将它添加到启动列表中:
        # bosboot –ad /dev/hdisk1
        # bootlist –m normal –o hdisk0 hdisk1

关于作者
Guilherme G. Felix 是 IBM Brazil 的一位员工,它有超过 10 年的 AIX 和 Linux 工作经历。他是一名 IBM Certified Advanced Technical Expert (CATE) 和一名 Redhat Certified Engineer (RHCE)。Guilherme 也是 IBM Redbook 的合著者之一。


http://www.ibm.com/developerworks/cn/aix/library/au-aixtlupdate/index.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP