时间:2024-07-28
陈真玄 ,杨 旭 ,姚 敏
(1. 水利部水利信息中心,北京 100053;2. 北京金水信息技术发展有限公司,北京 100053)
水利信息化建设的逐步深化,各项业务应用的逐步开展,大大提高了水行政管理和公共服务能力,提升了水利信息化水平。水利部电子政务系统逐渐由单纯的办公自动化系统转变为涵盖综合办公、规划计划管理、人事管理等多种业务的综合性系统。系统规模越来越大、应用范围越来越宽,对数据可靠性的要求也越来越高,数据存储空间不足的矛盾也表现得越来越突出。在此情况下,存储系统的升级改造不可避免,这必然面临一个数据迁移的问题。
在目前数据迁移的案例中,比较常见的是数据库之间和主机之间的数据迁移。而本文提出的数据迁移在不影响水利部电子政务业务的前提下实现存储系统之间的数据迁移。
实现数据从一个存储系统迁移到另一个存储系统的方式有备份恢复、逻辑卷镜像等不同的方法,各种数据迁移方式有不同的特点,适用于不同的数据迁移需求。主要数据迁移技术有以下 4 种:
1) 直接拷贝方式。直接拷贝方式是利用操作系统命令直接拷贝要迁移的数据,复制到要迁移的目的地[1]。如 Linux/Unix 下的 dd 命令,作用是将指定大小的输入文件(设备文件)以 block 为单位拷贝到指定的输出文件(设备文件)中,并在拷贝的同时进行指定的转换。
直接拷贝方式是快速有效的数据迁移方式,原数据卷可用于紧急回退。数据迁移期间需要停止业务,数据迁移时间与数据量大小相关。
直接拷贝方式适合于数据量不大、可以接受业务中断时间较长的系统,这种系统采用直接拷贝的方式就显得简单、快捷。
2) 逻辑卷镜像方式。逻辑卷镜像方式是利用操作系统中的镜像管理软件,在主机中同时加载新存储和原存储的数据卷,并将对应的 2 组数据卷配置成镜像卷,由操作系统自动将原存储系统中的数据复制到新存储系统中。
逻辑卷镜像方式是对现有的数据卷增加镜像卷,不会影响原来的数据卷;操作步骤相对简单、高效。镜像的初始同步会大量占用主机 CPU 资源,降低源磁盘的 IO 响应时间,数据同步过程也会影响业务性能;但此方式仅在配置和停止镜像时需要停止业务,业务中断时间短,可以最大限度地保障生产系统的可用性;数据迁移时间与整个数据卷大小相关[2]。
逻辑卷镜像方式通常在有联机迁移要求且迁移数据量大的情况下使用,支持任意存储系统之间的迁移,适合于主机存储的非经常性迁移。
3) 备份恢复方式。备份恢复方式是利用数据备份系统将原有数据复制到备份介质,然后再转入新的存储系统中。
备份恢复方式仅从备份系统中恢复数据,风险较低,如果失败,导入原来的数据卷即可还原;数据库恢复的操作步骤比较复杂,需要大量手工操作,恢复时间存在不确定因素;数据全备份时会影响业务性能,恢复过程需要停止业务,业务中断时间较长;数据迁移速度与数据量大小相关。
如果系统没有逻辑卷管理软件,在满足备份窗口要求的情况下,可以考虑采用备份恢复方式实现。
4) 直接盘阵复制方式。直接盘阵复制方式是通过盘阵到盘阵的复制软件将数据从一个盘阵复制到另一个盘阵,即写数据到本地盘阵时,同步或异步地将数据写到远程盘阵。
直接盘阵复制方式,复制过程由磁盘阵列完成,不需要消耗主机资源,但是一般需要 2 个盘阵为同构。
对那些需要在线不停机做数据迁移,同时又要求不占用业务系统主机资源的情况,可以采用直接盘阵复制方法。
水利部电子政务系统原存储系统为 HP EVA 3000,新存储系统为 H3C IX3240E,共涉及 24 台主机,包括 HPUX 小型机和 Windows 系统 PC 服务器,其中 HPUX 小型机为数据库服务器,系统环境为 HPUX Service Guard 管理的 Oracle10g 的 rac,需要迁移 Oracle 数据库的数据,Windows 服务器主要是文件系统数据迁移。水利部电子政务系统存储升级改造数据迁移工作面临极大的挑战:
1) 原存储系统和新存储系统分别为不同的品牌;
2) 需要迁移的数据量在 TB 级别,迁移任务较重;
3) 涉及电子政务的很多核心业务,业务连续性要求高,不能长时间中断业务;
4) 涉及到多个业务平台,环境复杂,数据迁移过程中存在发生错误及数据不一致的风险;
5) 涉及的主机是不同类型的操作系统,有不同的特点,不适合单一的数据迁移方式。
考虑到这些问题,水利部电子政务系统数据迁移根据不同业务情况采用多种数据迁移方式,其中HPUX 小型机使用裸设备文件,数据量大,而且要求数据迁移时间尽可能短,不能影响水利部电子办公,因此排除了直接拷贝方式,而采用备份恢复的方式恢复数据库操作步骤相对复杂,并且恢复时间不能确定,因此最终选择逻辑卷镜像方式,以减少因数据迁移而中断业务的时间;Windows 服务器设备多,但是迁移的数据量小,迁移的时间也比较短,而且主要是文件数据,因此采用直接拷贝方式,以减化操作,避免风险。
水利部电子政务系统数据迁移包括 HPUX 小型机上数据库数据迁移及 Windows 服务器文件数据迁移,Windows 服务器文件数据迁移使用直接拷贝方式,操作相对简单,本文重点介绍 HPUX 集群环境Oracle rac 数据库迁移实施。HPUX 环境 Oracle rac数据库使用 HPUX 系统自身的 LVM 卷管理软件,采用逻辑卷镜像的方式,在数据同步的过程中,业务不中断。
主要实施过程如下:
1)数据迁移前的准备工作,通过这部分工作,可增加对系统环境的了解,降低数据迁移中的风险。
2)将新的 H3C IX3240E 存储系统分别连接到现有各系统服务器上,使得现有主机既可以看到原有的 HP EVA 存储系统,亦可看到新连接上的 H3C IX3240E 存储系统。此后,在 LVM 管理软件控制下,对建立在原有存储系统上的数据卷与新存储系统上的对应数据卷进行镜像操作,这样只是在主机上增加了原有数据卷的镜像卷,并不会影响原有的数据卷。
3)待数据完全同步后,将 HP EVA 存储系统上的数据卷从镜像卷中拆除出来,这样即使新存储系统的数据卷有问题,仍可以导入原存储系统的数据卷,从而达到将数据从 HP EVA 存储系统平稳迁移到H3C IX3240 E 存储系统上的目的。
数据迁移前需要做一些准备工作,具体如下:
1)收集全面的系统背景信息;
2)对硬件安装步骤以及风险进行简单的分析;3)硬件环境调试及准备;
4)停止业务,对 HPUX 小型机操作系统及数据库进行完整有效的备份。
为了保证存储的平稳过渡,先将 HP EVA 上的数据镜像至 H3C IX3240E 存储系统。主要实施步骤如下:
1)在新的 H3C 存储系统上创建与原有的 HP EVA 存储系统同样数量大小的物理单元,并分别表达给主机 1,2;
2)在主机上查看新表达的物理单元;
3)把新创建的物理单元转换为物理卷;
#pvcreate /dev/dsk/c?t?d?
…
4)把新创建的物理卷添加到对应的卷组中;
#vgexend /dev/vgoarac /dev/dsk/c?t?d? /dev/dsk/c?t?d? …
#vgexend /dev/vgpubrac /dev/dsk/c?t?d? /dev/dsk/c?t?d? …
#vgexend /dev/vgoalog /dev/dsk/c?t?d? /dev/dsk/c?t?d? …
#vgexend /dev/vgegov /dev/dsk/c?t?d? /dev/dsk/c?t?d? …
#vgexend /dev/vgoarac2 /dev/dsk/c?t?d? /dev/dsk/c?t?d? …
5)用逻辑卷镜像方式将数据从原数据卷复制到新数据卷;
#lvextend –m 1 /dev/vgoarac/system /dev/dsk/c?t?d?
#lvextend –m 1 /dev/vgoarac/temp /dev/dsk/c?t?d?…
6)检查数据和应用的完整性。
HP EVA 存储与 H3C IX3240E 存储经过一段时间的并行使用后,如果状态正常运行稳定,实施替换HP EVA 存储系统,拆除 HP EVA 上的数据镜像,从而彻底过渡到单独使用 H3C 存储系统的状态。主要实施步骤如下:
1)停止应用程序及操作系统双机集群软件;
#cmhaltcl –fv
2)在主机 1 上单独激活数据卷组;
#vgchange –c n –S n vg?
#vgchange –a y vg?
3)在主机 1 上查看 HP EVA 对应的卷信息;
4)将 HP EVA 存储系统对应的数据卷从镜像卷中拆除;
#sldb1_lvreduce.sh
5)把 HP EVA 存储系统划分的物理卷从对应的卷组中删除;
#sldb1_vgreduce.sh
6)在主机上删除相应卷组;
7)卸载 HP EVA 多路径软件;#swremove
8)安装 H3C IX3240E 多路径软件;
#swinstall
9)调整光纤交换机,从原有的 HP 光纤交换机迁移到新的 EMC 光纤交换机;
10)在主机 2 上导入上述卷组,创建/etc/lvmpvg配置文件;
11)调整双机配置并重新应用;
12)启动操作系统双机集群软件;
#cmruncl –fv
13)在主机 1,2 上以共享方式激活数据卷组;
#vgchange –c y –S y vg?
#vgchange –a s vg?
14)在主机 1,2 上启动双机应用包;
#cmrunpkg ora
#cmrunpkg ora2
15)启动数据库及应用;
16)检查数据和应用的完整性。
在数据迁移完成后,对 Oracle 数据库基本信息进行一致性测试。对比数据库迁移前后的执行结果,查询结果是否完全吻合。对于存储上的系统文件,主要看物理信息在迁移前后是否完全吻合。在任何一种数据迁移完成后都将进行检查以验证迁移的数据一致性。
数据库基本信息的一致性测试检查主要包含以下几个方面:
1)Oracle 数据库版本的检查
select * from v$version;
2)Oracle 数据库实例状态的检查
select instance_name,version,status,database_statusfrom v$instance;
3)Oracle 数据库控制文件的检查
select * from v$controlf i le;
4)Oracle 数据库重做日志文件的检查
select * from v$logf i le;
5)Oracle 数据库所有数据文件的状态检查
select name,status from v$dataf i le;
6)Oracle 数据库所有表空间的状态检查
select tablespace_name,status from dba_tablespaces;
7)Oracle 数据库表空间管理方式的检查
select tablespace_name,extent_management from dba_tablespaces;
8)Oracle 数据库所有用户状态的检查
select username,password,account_status,lock_date,default_tablespace,temporary_tablespace,created from dba_users;
9)Oracle 数据库各个用户下所有表总数的检查
使用不同的应用的用户连接到数据库,执行
select count(*) from user_tables。
水利部电子政务系统数据迁移是一个复杂的过程,数据迁移的成败直接影响系统的运行情况,因此需选择一个安全可靠的方案,能在保证数据完整性和安全性的前提下,实现数据的平稳迁移,减少水利部电子政务系统的停机时间。实际运行情况表明,HPUX 小型机采用逻辑卷镜像方式,Windows系统 PC 服务器采用直接拷贝数据迁移方式实现了水利部电子政务系统数据的可靠和较快速的迁移,为系统的正常运行提供了重要保障[3]。数据迁移完毕之后,H3C 存储系统成为水利部电子政务系统存储的核心,实现了信息的最大程度共享,提高了整个系统的可用性和可靠性。
[1]百度文库. 数据迁移方法概述[EB/OL]. [2012-11-10].http://wenku.baidu.com/view/d874e719964bcf84b9d57b3f.html.
[2]上海怡德数码技术有限公司. Delteq-EMC 数据迁移方案[EB/OL]. [2012-11-10]. http://wenku.baidu.com/view/3f9a8918650e52ea551898e5.html.
[3]陈园园,陶飞. 社保信息系统中数据迁移的实现[J]. 苏州市职业大学学报,2011 (6): 27-30.
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!