Chinaunix首页 | 论坛 | 博客
  • 博客访问: 62006
  • 博文数量: 8
  • 博客积分: 1425
  • 博客等级: 上尉
  • 技术积分: 170
  • 用 户 组: 普通用户
  • 注册时间: 2005-07-01 12:29
文章分类

全部博文(8)

文章存档

2011年(1)

2009年(2)

2008年(5)

我的朋友

分类:

2008-10-15 23:42:15

hpux群集中共享VG二次配置的方法

 

适用范围:

 

1,           给当前处于群集中的vg增加新的lv

2,           给当前处于群集中的vglv扩展空间

3,           给当前处于群集中的vg添加新的pv

 

主要技术步骤:

 

1,           将群集中的某个vg从群集中暂时去除

2,           在一台主机上激活该vg

3,           然后对该vg进行重新配置操作,如添加新的lv、给当前vg中的lv扩展空间、给当前vg中添加新的pv

4,           重新配置完后,对该机器的vg信息进行手工备份

5,           去激活该vg

6,           查看vgdb的主设备号

7,           将该vg从这台主机导出,需要生成map文件

8,           远程拷贝生成的map文件到另一台机器

9,           在另一台机器上先导出旧的vg信息

10,       在另一台机器上创建新的vg设备文件

11,       在另一台机器上导入重新配置后的vg

12,       在另一台机器上激活新的vg

13,       在另一台机器上手工备份新的vg的信息

14,       在另一台机器上去激活vg

15,       在另一台机器上根据数据库的要求,修改/dev/vgdb和其目录下的文件的属主和属组

16,       启动群集,此时群集中使用vg资源的那个包启动不起来

17,       将重新配置后的vg再加入群集

18,       再相应主机上启动包

19,       修改的包的切换属性

20,       查看群集的健康状况。

 

详细操作步骤:

 

主机1名:hp_01 主机2名:hp_02  共享vg:vgdb 使用vgdb的包名:pkg1

 

1,           将群集中的某个vg从群集中暂时去除

 

hp_01#vgchange c n vgdb

参数-c含义cluster,决定这个vg是否加入cluster

 

2,           在一台主机上激活该vg

 

hp_01#vgchange a y vgdb

参数-a含义active,决定这个vg是否被激活

 

3,           然后对该vg进行重新配置操作,如添加新的lv、给当前vg中的lv扩展空间、给当前vg中添加新的pv

 

hp_01#lvcreate n newlv L 1024 vgdb

 

4,           重新配置完后,对该机器的vg信息进行手工备份

 

hp_01#vgcfgbackup vgdb

 

5,           去激活该vg

 

hp_01#vgchange a n vgdb

 

6,           查看vgdb的主设备号

 

hp_01#ll /dev/*/group

           crw-r-----   1 root       sys         64 0x000000 Jun 19 16:09 /dev/vg00/group

crw-rw-rw-   1 oracle     dba         64 0x020000 Aug  7 20:07 /dev/vgdb/group

 

7,           将该vg从这台主机导出,需要生成map文件

hp_01#vgexport p s v m /tmp/vgdbnew.map vgdb

      参数-p的含义是preview,中文意为预览,加上次参数后不执行真正意义的vg导出

 

      参数-s的作用是,让要导出的vgvgid记录在map文件中,避免再次激活vgvgimport命令还要跟所有pv的设备文件

 

      参数-v的含义是verbose,显示详细的输出

 

      参数-m的含义是map,目的是生成map文件,map文件中存放的是vgid和该vg下的所有lv

     

8,           远程拷贝生成的map文件到另一台机器

 

hp_01#rcp /tmp/vgdbnew.map hp_02:/tmp/vgdbnew.map

 

9,           在另一台机器上先导出旧的vg信息

 

hp_01#vgexport vgdb

 

10,       在另一台机器上创建新的vg设备文件

 

hp_02#mkdir /dev/vgdb

           #mknod /dev/vgdb/group c 64 0x0X0000 (此次X2,目的是要和第6步保持一致)

     

11,       在另一台机器上导入重新配置后的vg

 

hp_02#vgimport s v m /tmp/vgdbnew.map vgdb

参数-s的作用是,根据在map文件中记录的vgid,在系统中查询属于该vgpv,避免激活vgvgimport命令还要跟所有pv的设备文件

 

      参数-v的含义是verbose,显示详细的输出

 

      参数-m的含义是map,目的是读map文件,map文件中存放的是vgid和该vg下的所有lv

 

12,       在另一台机器上激活新的vg

     

      hp_02#vgchange a y vgdb

     

13,       在另一台机器上手工备份新的vg的信息

 

hp_02#vgcfgbackup vgdb

 

14,       在另一台机器上去激活vg

 

hp_02#vgchange a n vgdb

 

15,       在另一台机器上根据数据库的要求,修改/dev/vgdb和其目录下的文件的属主和属组

 

hp_02#chown R oracle:dba /dev/vgdb

 

16,       启动群集,此时群集中使用vg资源的那个包启动不起来(确保群集服务必须是起来的,如果群集是起来的,这步可以省略)

 

hp_01#cmruncl v

      or

      hp_02#cmruncl v

 

17,       将重新配置后的vg再加入群集

 

hp_01#vgchange c y vgdb

 

18,       再相应主机上启动包

 

hp_01#cmrunpkg pkg1

 

19,       修改的包的切换属性

 

hp_01#cmmodpkg e pkg1

 

20,       查看群集的健康状况。

 

hp_01#cmviewcl -v

 

注意问题

 

1,           处于cluster中的vg,即使在群集软件停止的情况下,也不能使用命令#vgchange a y vgdb在一台主机上激活vgdb,必须先将该vg从群集中去除。

2,           处于cluster中的vg,如果之前被从群集中去除,必须在群集软件启动的情况下使用命令#vgchange c y vgdbvgdb加入cluster中,然后才能启动使用这个vg资源的程序包

3,           处于cluster中的vg,在一台机器被修改后,必须将修改信息同步到cluster中的其它机器

阅读(1627) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~