技术实践分享|用友NC财务系统上云

云掣YunChe10个月前客户案例652

本文分享一次成功将用友NC财务系统上云的经验,主要涉及阿里云上Oracle ASM存储扩容,阿里云ESC RAC服务器扩容,阿里云上Oracle RAC数据库迁移等相关技术,一起来看看吧!

1 客户数据库上云背景

本次项目我司主要负责客户Oracle RAC数据库迁移,应用系统由客户专门的团队负责。系统始建于2017年,根据企业集团战略规划,所有业务系统全部上云,财务NC自然不可避免。

云下财务数据库基于Linux x86 64位环境构建,采用了Oracle 11g RAC集群数据库架构,64C128G配置,数据量超过1T。

客户原计划找我们在阿里云上搭建一套新的RAC,通过物理备份RMAN迁移的方式上云。但是考虑到成本,客户计划使用逻辑迁移的方式将数据库导入到现有的一套云上RAC中。原先那套业务系统的RAC也由我司搭建和运维,配置为16C64G,数据量100G左右。

2 上云方案

我司作为技术专家给到客户建议:

1)复用原有的云上 RAC环境,不需要购买新的服务器。

2)云上RAC扩容。新购买NC财务的共享数据盘1.5T,归档盘0.5T,两套服务器升配到64C128G;

3)评估停机时间。若采用逻辑导入迁移,加上与周边业务系统调试、参数修改,总共需要2天停机时间,业务不能承受这么长的停机时间。因此改为使用RMAN迁移,在扩容后的RAC环境下新建一套数据库,采用RMAN增量迁移方式,数据库割接时间几乎为0,其他都是应用调整时间,由原先的两天时间缩短为几个小时;

4)建议使用2次迁移的方式,提前1周做好一次数据库迁移,基于云上数据库环境调整好应用,测试应用可用性,更能缩短第二次正式迁移的应用调整时间。

最终云上架构如下:

用友.png

进行详细评审后,客户最终采用了我司提出的整体迁移实施方案。

3 实施过程

下面是具体的实施过程:

(1)共享磁盘扩容

阿里云控制台上购买ESSD共享磁盘,分别挂载到两个ECS上后,用udev方式添加ASM磁盘,原业务系统的数据盘是DATA,归档盘是ARCH。新建磁盘名为NCDATA和NCARCH,用于存放新的NC系统数据。

(2)ECS升配

ECS升配在阿里云控制台操作,要停机重启。客户的业务系统很重要,不能随意停业。RAC架构的优势就出现出来了,通过逐台升配,可以保证业务不停。

整个升配过程如下:

1)节点1,停数据库,停CRS;

2)节点1 ECS控制台上停机,升配选择64C256G配置(64C128G配置阿里云该可用区已售罄)。节点1 ECS停机时,VIP、SCAN IP自动漂移到节点2,因此业务也自动切换到了节点2。

3)启动节点1,用crsctl check crs和crsctl stat res -t 检测到集群启动后,启动实例1数据库实例,crsctl stat res -t检查资源正常,节点1升配完成。

然后在节点2重复节点1的升配过程即可。

(3)迁移验证

1)参数文件很重要,原库的配置文件通过create pfile导出,修改关键的配置参数以适合新的环境。注意涉及到目录的、注意涉及到scan ip的、注意cluster databae要改成false等等。

2)备份数据上云。将前一天的备份文件传到云上,备份文件有1T的数据,所用数据通过专线传了4个多小时才完成,这也是迁移过程中最耗时的一个步骤。

3)数据库恢复。在节点1上操作,需要注意ORACLE_SID。因为RAC环境中有1套生产库,操作时务必再三确认清楚操作对象。先建spfile文件,同时要建好初始文件中涉及到文件系统和ASM存储下的目录结构。然后nomount下恢复控制文件,mount下restore database,然后recover database,然后open resetlogs等等,都是常规操作。restore database脚本务必要改新的asm存储数据目录,否则就恢复到原生产库的data目录上了,比如“set newname for datafile 1 to '+NCDATA/orcl/datafile/system.dbf’;”所有数据文件和临时文件统统要改。再说一遍有生产库在,restore是高危操作,务必检查sid环境和restore脚本。

4)将数据库添加到RAC集群。修改cluster databae参数为true,用srvctl 加下数据库,宕下单库后srvctl start database -d nccdb -o open启动,crsct stat查看实例就有了。

交付给应用测试,数据库完工,一路下来,有惊无险。4通道数据库恢复用了不到2小时,瓶颈在NAS数据读取(备份介质在NAS上)。阿里的ESSD共享存储性能很高。

(4)正式迁移

初次迁移验证了整个迁移方案的可行性,同时也验证了应用系统上云后的功能。正式迁移时,因为第一次迁移后参数文件都在,就相对简单点。

同样在节点1上操作,确保sid已经设置为nccdb1。

1) 删掉第一次迁移恢复的数据库。也可以删除,第二次恢复时会覆盖。删除过程如下,删RAC库要注意几点

a) 环境变量,sid不要搞错了,务必再三确认;

b) 修改cluster_database=FALSE;

c) 停库srvctl stop database -d nccdb,两节点都停掉;

d) 确认instance_name后drop database;

e) srvctl remove database -d nccdb删除该库的集群信息。第5步可以不执行。

2)修改spfile参数cluster_database=FALSE后,检查ASM目录结构,nccdb的是否存在,不存在需要重建;

3)启动数据库到nomount状态恢复控制文件后, restore databse,recover database追归档,最后open resetlogs等等,一路顺利。

4)修改spfile参数cluster_database=true后,shutdown单库,srvctl start database -d nccdb -o open启动,检查集群资源,新数据库存在,检查日志正常。最后别忘了更换临时文件,迁移后原临时文件会失效。

至此,用友NC财务系统 上阿里云oracle RAC完成。

4、本次上云的价值

1)、实现了阿里云上RAC架构下承载多个数据库的案例,为客户节省了云资源成本;

2)、技术上解决了客户不能接受的停机时间,用RMAN增量迁移的方式减少了应用人员迁移业务数据的复杂度、节省迁移时间,最终缩短了业务的停机时间。



标签: 云原生

相关文章

统一融合,云掣助力知名烟草集团打通互联网营销平台数据脉络

统一融合,云掣助力知名烟草集团打通互联网营销平台数据脉络

某烟草集团,集卷烟生产销售、烟草物资配套供应、科研以及多元化经营等为一体,在卷烟产销总量、全国市场覆盖率、国际市场销量等多项指标上均位居行业前列。该集团基于微信服务号运营,策划了以烟包二维码为载体,通...

全面提升|支付企业系统上云实践

全面提升|支付企业系统上云实践

近年来,得益于中央政府一系列的扶持政策以及云计算、大数据和AI等技术在支付领域的深化应用,面向小微企业、个体工商户等群体的普惠支付有了极大的发展。 某支付机构基于创新科技和完善风控能力,聚焦...

数据库高可用架构建设

数据库高可用架构建设

项目背景    某互联网+健康医疗整体解决方案提供商,通过构建线上实名认证卡管系统、虚拟账户结算管理系统、移动互联网平台、远程运维监控平台、预约挂号系统平台,并辅以线下排队及信息发...

可观测运维作战实践-ACOS全链路监控案例

可观测运维作战实践-ACOS全链路监控案例

在时间十分紧迫前提下为客户建设一套监控体系实践就是一次作战!下面问题怎么解呢?1、客户现状痛点?2、适合客户全链路监控怎么搭建?3、故障突袭应急筹备方案?4、acos团队面临内外夹击挑战?5、作战结果...

混合云网络建设

混合云网络建设

项目背景    云计算经过十余年突飞猛进的发展,已经迎来新的黄金十年,进入普惠发展期。据相关机构调研,随着产业结构持续优化,服务部署形态趋于多元化,融合了私有云安全性和公有云开放性...

知名房企数据化可观测运维实践

知名房企数据化可观测运维实践

项目背景    伴随着“云+”时代的到来,通过上云实现企业数字化转型已经成为众多行业的共识。工信部发布的《推动企业上云实施指南(2018—2020年)》一文中提出了企业上云的工作目...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。