Linux系统存储维护指导手册

SLES 环境下使用HDS SAN存储技术指导手册

# ls -la /dev/ASM* brw-rw---- 1 grid dba 251, 1 May 28 21:42 /dev/ASMDAT1 brw-rw---- 1 grid dba 251, 17 May 28 21:42 /dev/ASMDAT2 brw-rw---- 1 grid dba 251, 33 May 28 21:42 /dev/ASMLOG1 brw-rw---- 1 grid dba 251, 49 May 28 21:42 /dev/ASMLOG2 注意:若未创建成功,则执行reboot使其生效。

Suse 11

1)添加磁盘,确认磁盘添加成功

2)对各个共享磁盘进行分区(仅在单个节点执行即可),参照suse分区方法 3)使用cat /proc/partitions查看RAC各节点的新增磁盘及分区是否在分区表配置文件中,如果不存在,使用/usr/sbin/partprobe更新分区表: # cat /proc/partitions 250 112 104857600 sddlmah 250 113 104857600 sddlmah1 # /usr/sbin/partprobe 4)获取需要映射为ASM Disk的磁盘SCSI_ID,并将新增磁盘添加至udev rules文件:

a) 获取磁盘SCSI_ID(仅单节点执行即可)

# /lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/sddlmah1 360060e801047222004f2c5d2000003fc b) 编辑udev rules(仅单节点执行即可,其它节点可直接拷贝)

# vi /etc/udev/rules.d/99-oracle-asmdevices.rules KERNEL==\SUBSYSTEM==\PROGRAM==\--whitelisted --replace-whitespace --device=/dev/$name\RESULT==\NAME=\脚本生成udev rules的内容,并将其添加至udev文件。

vi udevcontent.sh #!/bin/ksh for i in h do echo \SUBSYSTEM==\\\PROGRAM==\\\--whitelisted --replace-whitespace --device=/dev/\\$name\\\RESULT==\\\--whitelisted --replace-whitespace --device=/dev/sddlma$i`\\\NAME=\\\OWNER=\\\11

SLES 环境下使用HDS SAN存储技术指导手册

done 执行结果示例如下:

# sh udevcontent.sh KERNEL==\SUBSYSTEM==\PROGRAM==\--whitelisted --replace-whitespace --device=/dev/$name\RESULT==\NAME=\c) 将节点1的udev rules文件直接拷贝至其它节点(如节点2)。

用udevadm进行测试,udevadm命令不接受/dev/sddlmaa1或/dev/sda1这样的挂载设备名,必须是使用/sys/block/sddlmaa/sddlmaa1或/sys/block/sda/sda1这样的原始设备名。或者,如果磁盘较多,也可以直接使用/usr/sbin/partprobe生成设备别名。

# udevadm test /sys/block/sddlmah/sddlmah1 或:

# /usr/sbin/partprobe 其中,如果udevadm输出结果中的DEVNAME指向设备别名,如DEVNAME=/dev/ASMDATn,则表示udev映射成功;若仍指向原设备名,则表示udev映射失败。

udevadm_test: UDEV_LOG=6 udevadm_test: DEVPATH=/devices/up_primary/up_adapter/host4/target4:0:0/4:0:0:4/block/sdn/sdn1 udevadm_test: MAJOR=8 udevadm_test: MINOR=209 udevadm_test: DEVNAME=/dev/ASMDATn udevadm_test: DEVTYPE=partition udevadm_test: ACTION=add udevadm_test: SUBSYSTEM=block 5)重启udev服务,使其生效,验证设备别名创建成功。 # /etc/init.d/boot.udev restart 6)验证设备别名创建成功。 # ls -la /dev/ASM* brw-rw---- 1 grid dba 251, 1 May 28 21:42 /dev/ASMDAT1 brw-rw---- 1 grid dba 251, 17 May 28 21:42 /dev/ASMDAT2 brw-rw---- 1 grid dba 251, 33 May 28 21:42 /dev/ASMLOG1 brw-rw---- 1 grid dba 251, 49 May 28 21:42 /dev/ASMLOG2 12

SLES 环境下使用HDS SAN存储技术指导手册

注意:若未创建成功,可尝试执行/usr/sbin/partprobe使其生效;若仍不能成功创建别名,可执行reboot使其生效。

五. 从现有环境中回收存储

5.1 保留数据的回收文件系统

1)umount文件系统 # umount /oracleser/app11203 2)卸载VG并导出 #vgchange –an /dev/dbmsvg #exportvg /dev/dbmsvg 3)删除mapping关系 4)删除scsi设备

# dlmcfgmgr –o /dev/sddlmN # echo \# dlmcfgmgr –i /dev/sddlmN 5)刷新HDLM设备,检查LUN状态,并 # dlmcfgmgr –v # dlmcfgmgr –u /dev/sddlmN # dlmcfgmgr –r # dlmcfgmgr -v 5.2 不保留数据的回收LUN

1)umount文件系统 # umount /oracleser/app11203 2)deactive vg

#vgchange –an /dev/dbmsvg 3)删除lv # lvremove /dev/testvg/testlv 4)删除vg # vgremove /dev/testvg 5)删除pv # pvremove /dev/sddlmma 6)删除mapping关系 7)删除scsi设备 # dlmcfgmgr –o /dev/sddlmN # echo \remove-single-device a b c d\> /proc/scsi/scsi #a b c d可通过dlmcfgmgr -v命令得到 13

SLES 环境下使用HDS SAN存储技术指导手册

# dlmcfgmgr –i /dev/sddlmN 8)刷新HDLM设备,检查LUN状态,并 # dlmcfgmgr –v # dlmcfgmgr –u /dev/sddlmN # dlmcfgmgr –r # dlmcfgmgr -v 5.3 ASM环境中回收存储

1)将需要删除的LUN所对应的ASM盘从oracle数据库DG中删除。 2)在节点1上修改udev配置文件,编辑99-oracle-asmdevices.rules,将对应的LUN从文件中删除,如该数据库为RAC,则需要在节点2上相应修改udev配置文件。

3)重启udev服务使之生效: # /etc/init.d/boot.udev restart 4)验证ASM磁盘已从系统上剔出 # ls -l /dev/ASM* 5)将退出的LUN删除分区

# fdisk /dev/sddlmac

Command (m for help): p

Disk /dev/sddlmac: 2147 MB, 2147483648 bytes

48 heads, 4 sectors/track, 21845 cylinders, total 4194304 sectors Units = sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x599ea4f2

Device Boot Start End Blocks Id System

/dev/sddlmac1 2048 4194303 2096128 8e Linux LVM

Command (m for help): d Selected partition 1

Command (m for help): Command (m for help): w

The partition table has been altered!

Calling ioctl() to re-read partition table. Syncing disks.

14

SLES 环境下使用HDS SAN存储技术指导手册

6)使用/usr/sbin/partprobe更新分区表,确认分区执行成功 # /usr/sbin/partprobe # cat /proc/partitions 251 0 104857600 sddlmaa 251 1 104856576 sddlmaa1 251 16 104857600 sddlmab 251 17 104856576 sddlmab1 251 32 1048576 sddlmac 7)从系统上将该块LUN从系统中退出 详见上述回收存储步骤

六. 文件系统迁移(非磁盘复制)

6.1 删除原服务器文件系统

1)卸载原文件系统,并导出vg

# umount /test #vgchange –an /dev/testvg #vgexport /dev/testvg 2)从磁盘机上找到原服务器所在hostgroup,删除原WWN,添加新服务器对应的WWN,并从服务器上将LUN删除,注释/etc/fstab文件所在外置文件系统的行。

6.2 识别新服务器文件系统

3)新服务器上识别LUN,并扫描磁盘盘头信息,自动识别volume group信息 # vgscan 4)激活volume group后,修改/etc/fstab,该文件所对应的外置文件系统内容应与原服务器一致 #vgchange –ay /dev/testvg #mount -a 七. ASM盘全量迁移(非磁盘复制)

7.1 回收原服务器ASM盘

详见ASM回收章节

15

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4