Chinaunix首页 | 论坛 | 博客
  • 博客访问: 338654
  • 博文数量: 282
  • 博客积分: 10010
  • 博客等级: 上将
  • 技术积分: 3260
  • 用 户 组: 普通用户
  • 注册时间: 2008-07-26 14:38
文章分类

全部博文(282)

文章存档

2011年(1)

2008年(281)

我的朋友
最近访客

分类: 服务器与存储

2008-07-31 19:50:06

   客户新购HDS USP存储和Brocade 48000交换机,需要把原HP XP512和HP VA7410上的业务和数据迁移到新存储上.原环境有两套MC/SG群集,分别是两台RP8420的群集1,两台RP7410和一台Superdome的三机群集2.
 
方案分几步走,第一天把群集1的备机和群集2的一台Rp7410备机拆到HDS USP上,接下来数据复制到HDS USP上.原系统仍提供服务.
第二天停业务把增量数据复制到HDS USP上,迁移应用系统,由两台连新存储的主机提供服务.
接下来的几天做测试,如果测试失败则回退到原来环境.
测试阶段完成后再把群集1里剩下的一台RP8420和群集2里的Superdome移到新存储上来.然后新环境重新做两套群集.原群集2里剩下那台RP7410单机跑次要业务.
 
 
第一天,两台机器cmhaltnode后把HBA卡的光纤连到Brocade 48000交换机上,HDS工程师从USP上做MAP.然后ioscan,insf认出日立的盘后安装HDLM,配多路径,按要求重启系统.
这样就可以用/usr/DynamicLinkManager/bin/dlnkmgr view -lu命令看到LDEV和盘符的关系了.注意在群集里不同的主机上生成的盘符可能不同,只要对应相同的LDEV,那就是同一个LUN.而且HDLM做出来的盘符与HPUX缺省的cXtYdZ不同了,是chXtYdZ在做MC/SG时与传统的方法不同了.完成后客户自已复制数据.
 
第二天停业务后客户把增量数据复制到HDS USP上,迁移应用系统,用两台连新存储的主机提供服务.工程师在现场整个晚上就建了几个VG,等了一个通宵.
 

过了几天迁另一台RP8420和Superdome遇到的麻烦就多啦.
由于第二台RP8420需要同时连VA7410和USP,HDS工程师做HDLM多路径时没把VA7410的LUN全部排除掉,引起宕机半夜把HP原厂工程师也叫了过来,排除故障都已经快临晨4点了.Superdome的HPUX 11.11版本又太老,没升级补丁,新版HDLM装不上,生产系统又不能随意打补丁.又搞了好长时间,好不容易找到一套老版HDLM装上.客户申请的停机时间也到了,只能停下来恢复成第二天的状态,两套群集只能配一下不能启了.下面是配群集的过程
 
先做节点间的信任关系,/.rhosts和/etc/hosts文件,然后用ping,nslookup,rlogin,arp,netstat一一测试通过.
在新节点上做
mkdir /dev/applyvg
mknod /dev/applyvg/group c 64 0x020000
注意这里的0x020000最好与主节点一致.
在已经提供服务的主机上做
vgexport -v -p -m /tmp/applyvg.map -f /tmp/applyvg.out applyvg
注意这里没有-s参数了,-f参数导出盘符.然后把MAP和OUT文件rcp到另一节点上,先在两个节点上分别执行
/usr/DynamicLinkManager/bin/dlnkmgr view -lu
确认新节点的LDEV对应的chXtYdZ盘符,以此对applyvg.out进行改动.完成后执行
vgimport -v -m /tmp/applyvg.map -f /tmp/applyvg.out /dev/applyvg
建锁盘,锁盘虽然也在USP上,但不做HDLM多路径,盘符仍是原来的cXtYdZ.两个节点上分别执行
mkdir /dev/vglock
mkmod /dev/vglock/group c 64 0x030000
在任一节点上执行
pvcreate /dev/rdsk/c33t6d0
vgcreate /dev/vglock /dev/dsk/c33t6d0 /dev/dsk/c43t6d0
这里要把两条路径都加入VG
vgexport -v -p -s -m /tmp/vglock.map vglock
把MAP文rcp到另一节点上执行
vgimport -v -s -m /tmp/vglock.map /dev/vglock
 
 
配置Cluster
先在一台RP8420上清空/etc/cmcluster然后执行
cmquerycl -v -C /etc/cmcluster/cluster.conf -n app1 -n app2
返回网络权限错误,用ping,nslookup,rlogin,arp,netstat测试找不到原因.两台RP8420的群集就做不下去了.
 
在Superdome上清空/etc/cmcluster然后执行
cmquerycl -v -C /etc/cmcluster/cluster.conf -n db1 -n db2
成功生成/etc/cmcluster/cluster.conf文件,按实际环境改了后做
cmcheckconf -v -k -C /etc/cmcluster/cluster.conf
居然返回原来三机群集的Check信息.估计原配置信息没删除干净,但又找不到在哪里,Superdome和RP7410的群集也做不下去了.
 
想到用cmdeleteconf来删除Superdome上的原配置信息,但环境已经改变,连hostname都更改了.估计不能解决问题,也没敢这样做.Google上也搜不到相关资料.第二天打HP800电话问了才知道配置信息是保存在群集每个节点上,删除时必需每个节点都要删干净,我只清空了一个节点的/etc/cmcluster.不管做cmquerycl还是cmcheckconf都会到其它节点上去找原配置的二进制文件.所以这里的故障现象虽然完全不同,原因却是相同的.
 
接下来第二天晚上做就太顺利了
在两台RP8420上清空/etc/cmcluster然后执行
cmquerycl -v -C /etc/cmcluster/cluster.conf -n app1 -n app2
成功生成/etc/cmcluster/cluster.conf文件,按实际环境改了后做
cmcheckconf -v -k -C /etc/cmcluster/cluster.conf
没有错误后执行
vgchange -a y vglock
cmapplyconf -v -C /etc/cmcluster/cluster.conf
vgchange -a n vglock
cmruncl-v
确认后执行
cmhaltcl -f -v
在RP7410和Superdome上清空/etc/cmcluster然后执行
cmquerycl -v -C /etc/cmcluster/cluster.conf -n db1 -n db2
成功生成/etc/cmcluster/cluster.conf文件,按实际环境改了后做
cmcheckconf -v -k -C /etc/cmcluster/cluster.conf
没有错误后执行
vgchange -a y vglock
cmapplyconf -v -C /etc/cmcluster/cluster.conf
vgchange -a n vglock
cmruncl-v
确认后执行
cmhaltcl -f -v
 
配置PKG
两套群集命令都相同
cmmakepkg -p /etc/cmcluster/pkgname/pkgname.ascii
vi /etc/cmcluster/pkgname/pkgname.ascii
cmmakepkg -s /etc/cmcluster/pkgname/pkgname_control.sh
vi /etc/cmcluster/pkgname/pkgname_control.sh
把控制文件pkgname_control.sh通过rcp到其它节点
cmcheckconf -v -P /etc/cmcluster/pkgname/pkgname.ascii
没有错误后执行
vgchange -c n vglock
vgchange -a y vglock
cmapplyconf -v -P /etc/cmcluster/pkgname/pkgname.ascii
cmruncl -v
测试应用.
 

总结:
1,做了HDLM多路径后生成chXtYdZ盘符,在做导出时去掉-s参数,加上-f参数
vgexport -v -p -m /tmp/applyvg.map -f /tmp/applyvg.out applyvg
导入时按本节点的LDEV对应盘符情况更改out文件,LDEV对应盘符用下面命令确认
/usr/DynamicLinkManager/bin/dlnkmgr view -lu
导入时也得用下面的命令
vgimport -v -m /tmp/applyvg.map -f /tmp/applyvg.out /dev/applyvg
2,删除原来群集信息时一定要在所有节点上清空/etc/cmcluster,否则会出现奇奇怪怪的错误.
阅读(378) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~