• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

replace boot disk with VxVM

发布: 2007-6-08 22:43 | 作者: seanhe | 来源: | 查看: 24次 | 进入软件测试论坛讨论

领测软件测试网
[b:55f7a7edab]这个帖子和上一个是一对[/b:55f7a7edab]
[b:55f7a7edab]在VxVM下替换失败的系统盘[/b:55f7a7edab]

环境:
Solaris2.X
VxVM 3.2
failed bootdisk(c0t0d0
mirror disk(c0t1d0)

系统盘c0t0d0硬件故障失败,但系统有一个用VxVM做的镜象盘c0t1d0。


下面是替换和恢复系统的过程:

[b:55f7a7edab]1 从镜象盘引导系统[/b:55f7a7edab]
系统无法正常引导时,我们可以让系统进入硬件维护状态,使用devalias找到镜象盘:
ok devalias
vx-mirror               /pci@1f,4000/scsi@3/disk@1,0
vx-root                  /pci@1f,4000/scsi@3/disk@0,0
net                        /pci@1f,4000/network@1,1
disk                       /pci@1f,4000/scsi@3/disk@0,0
cdrom                    /pci@1f,4000/scsi@3/disk@6,0:f
...

然后从镜象盘引导:

ok boot vx-mirror

Boot device: /pci@1f,4000/scsi@3/disk@1,0:a  File and args: 
SunOS Release 5.8 Version Generic_108528-15 64-bit
Copyright 1983-2001 Sun Microsystems, Inc.  All rights reserved.
Starting VxVM restore daemon...
VxVM starting in boot mode...
vxvm:vxconfigd: WARNING: Detaching plex rootvol-01 from volume rootvol
vxvm:vxconfigd: WARNING: Disk rootdisk in group rootdg: Disk device not found
configuring IPv4 interfaces: hme0.
Hostname: app02
VxVM starting special volumes ( swapvol rootvol var ...
VxVM general startup...
dumpadm: no swap devices could be configured as the dump device
The system is coming up.  Please wait.
starting rpc services: rpcbind done.
Setting netmask of hme0 to 255.255.255.0
syslog service starting.
Print services started.
volume management starting.
The system is ready.
app02 console login:

请注意以上过程中的vxconfigd的告警信息,它表示VxVM发现卷rootvol中的有一边的
plex即rootvol-01是不可用的,所以它将这个plex从卷中“踢”了出去(detaching)。
但是从镜象盘系统仍然可以正常的启动。


[b:55f7a7edab]2 检查系统状态[/b:55f7a7edab]
进入系统后,使用vxdisk和vxprint命令来检查和确认失败的状态,是否和我们预计的
一致,在这个例子中,我们的rootdg中有3个卷,rootvol,swapvol和var。我们发现
这3个卷中都有1个plex是Disabled的,并且这3个被Disabled的卷正好是建在失败的原
系统盘c0t0d0上的:

# vxdisk list
DEVICE       TYPE      DISK         GROUP        STATUS
c0t1d0s2     sliced     rootmirror    rootdg        online
-                   -             rootdisk      rootdg        failed was:c0t0d0s2

# vxprint -ht
Disk group: rootdg

DG NAME         NCONFIG      NLOG     MINORS   GROUP-ID
DM NAME         DEVICE       TYPE     PRIVLEN  PUBLEN   STATE
RV  NAME         RLINK_CNT    KSTATE   STATE    PRIMARY  DATAVOLS  SRL
RL  NAME         RVG          KSTATE   STATE    REM_HOST REM_DG    REM_RLNK
V     NAME         RVG          KSTATE   STATE    LENGTH   READPOL   PREFPLEX UTYPE
PL  NAME         VOLUME       KSTATE   STATE    LENGTH   LAYOUT    NCOL/WID MODE
SD  NAME         PLEX         DISK     DISKOFFS LENGTH   [COL/]OFF DEVICE   MODE
SV  NAME         PLEX         VOLNAME  NVOLLAYR LENGTH   [COL/]OFF AM/NM    MODE
DC  NAME         PARENTVOL    LOGVOL
SP  NAME         SNAPVOL      DCO

dg rootdg       default      default  0        1035555399.1025.pegasus

dm rootdisk     -            -        -        -        NODEVICE
dm rootmirror   c0t1d0s2     sliced   3359     17690400 -

v  rootvol      -            ENABLED  ACTIVE   13423200 ROUND     -        root
pl rootvol-01   rootvol      DISABLED NODEVICE 13423200 CONCAT    -        RW
sd rootdisk-B0  rootvol-01   rootdisk 17690399 1        0         -        NDEV
sd rootdisk-02  rootvol-01   rootdisk 0        13423199 1         -        NDEV
pl rootvol-02   rootvol      ENABLED  ACTIVE   13423200 CONCAT    -        RW
sd rootmirror-01 rootvol-02  rootmirror 0      13423200 0         c0t1d0   ENA

v  swapvol      -            ENABLED  ACTIVE   2100000  ROUND     -        swap
pl swapvol-01   swapvol      DISABLED NODEVICE 2100000  CONCAT    -        WO
sd rootdisk-01  swapvol-01   rootdisk 13423199 2100000  0         -        NDEV
pl swapvol-02   swapvol      ENABLED  ACTIVE   2100000  CONCAT    -        RW
sd rootmirror-02 swapvol-02  rootmirror 13423200 2100000 0        c0t1d0   ENA

v  var          -            ENABLED  ACTIVE   2100000  ROUND     -        fsgen
pl var-01       var          DISABLED NODEVICE 2100000  CONCAT    -        WO
sd rootdisk-03  var-01       rootdisk 15523199 2100000  0         -        NDEV
pl var-02       var          ENABLED  ACTIVE   2100000  CONCAT    -        RW
sd rootmirror-03 var-02      rootmirror 15523200 2100000 0        c0t1d0   ENA

[b:55f7a7edab]3 替换失败的硬盘并恢复VxVM的配置[/b:55f7a7edab]

拔掉坏盘插入新盘,首先要确定Solaris可以看到新的硬盘,你可以用format命令来确认,然后使用命令:

# vxdctl enable

这一步是让VxVM也读取新盘的信息,然后用vxdisk命令来检查:

# vxdisk list
DEVICE       TYPE      DISK         GROUP        STATUS
c0t0d0s2     sliced       -                 -                  error
c0t1d0s2     sliced       rootmirror   rootdg         online
-                   -              rootdisk      rootdg       failed was:c0t0d0s2

可以看到VxVM已经看到新盘c0t0d0s2,但它的状态是error,这是正常的,因为VxVM还没有对它进行管理。

接下来要做的就是将新插入的盘c0t0d0s2变回原来的rootdisk,这步工作可以用VxVM
提供的菜单命令vxdiskadm来做,也可以用命令行来做。

# vxdiskadm
出现选项,先选4 - Remove a disk for replacement,
它会问你要删除的"disk name",输入"rootdisk",回主菜单后
再选5-Replace a failed or removed disk,它首先问你上一步
删除的disk name,仍然输入"rootdisk",然后问你一个新的磁盘
来进行初始化,你输入c0t0d0,后面你看提示打Y或N即可。

推出vxdiskadm后,用上面提到的命令:
# vxdisk list
DEVICE       TYPE      DISK         GROUP        STATUS
c0t0d0s2     sliced    rootdisk     rootdg        online
c0t1d0s2     sliced    rootmirror   rootdg       online

可以看到c0t0d0s2现在已经开始online了,再使用vxprint -ht命令观察,
你会发现3个卷都在进行同步。另外还有一个命令vxtask list可以让你
看到同步的进度。这里不再细说了。

如果用命令行的话,可以这么做:
# vxdg -k -g rootdg rmdisk rootdisk
# vxdg -k -g rootdg adddisk rootdisk=c0t0d0s2
# vxrecover -bs


确认镜象同步完成后,重新启动系统。


有问题可以发信给我:recommendedpatch@yahoo.com.cn

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网