赵雅欣 申 振 王 鹏 管 虎 张 宁
青岛前湾联合集装箱码头有限责任公司
目前,集装箱码头生产作业日趋无人化、自动化,ECS(Equipment Control System,设备控制系统)作为集装箱码头设备远程控制的重要系统,要求24 h不停机且稳定运行,对可靠性要求高,ECS数据库如果出现故障,需要能迅速恢复。传统的单节点服务器由于其局限性,在繁重、复杂的应用服务中体现出来的弊端也越来越明显。目前双机热备或多机互备的方式,具备快速自动切换功能,能够保证在无人值守的环境下,主服务器出现故障时提供无数据差异的秒级切换,可大大减少因服务器故障带来的网络瘫痪,提高系统平台的稳定性。合理使用双机热备技术,充分发挥其稳定高效、高可用性的特点,是保障系统数据库稳定运行,码头生产作业正常运转的重要措施。
双机热备是集群热备的特例,一般用于保障重要的服务正常不间断运行[1]。双机热备用两台机器作为服务机器,其中一台用于实际数据库操作应用,另外一台则实时地从前者中获取数据以保持数据一致。如果当前的服务器宕机,备份的服务器在短时间内自动完成服务的切换,代替当前的机器继续提供服务,从而保证在不需要人工干预的情况下,系统能持续提供服务,正常运转[2]。
双机热备有如下几点特征:
(1)业务不间断。备服务器实时地从主服务器中获取数据,确保对数据库24 h不间断访问,保证各项业务的稳定运行。
(2)双机自动切换。若主服务器因某种原因宕机,备服务器在短时间自动完成服务的切换,不需要人工干预[3]。
(3)应用数据不丢失。针对不可预期的服务器主机故障,可通过备份服务器恢复正常的使用能力,且不会造成数据丢失。
双机热备的优点如下:①可在表空间或数据文件级备份,备份时间短;②备份时数据库仍可使用;③可达到秒级恢复;④可对几乎所有数据库实体做恢复;⑤恢复是快速的,大多数情况下在数据库仍工作时即可恢复。其缺点是若热备份不成功,所得结果不可用于时间点的恢复。
某集装箱码头轨道式龙门起重机(以下简称轨道吊)自动化改造项目采用ECS系统指挥码头生产作业,一旦发生服务器宕机故障或应用停机,将会造成数据丢失,影响现场作业,带来重大经济损失。基于安全性、稳定性、可靠性及避免单点故障的考虑,对数据库服务器实现双机热备功能。
该码头作业现场ECS自动化关键业务系统部署在windows server2012服务器上,系统软硬件配置见表1。
表1 系统软硬件配置
数据库双机热备系统建成后,实现如下目标。
(1)系统持续运行。数据同步复制,最短时间内完成故障切换,使系统不停机,业务不间断[3]。
(2)双机自动切换。若主服务器因某种原因宕机,备服务器在短时间自动完成服务的切换,不需要人工的干预。
(3)应用数据全自动备份。减少系统管理员的工作量,增加备份效率,压缩备份时间,消除备份过程中因操作不当导致的严重损失。
(4)数据零丢失。出现系统故障后修复数据要求达到零数据丢失的高安全性。
如果现场运行主库服务器宕机,严格按照如下步骤操作,即可恢复现场作业并重现数据库。
3.3.1 运行主库脱机
作业现场运行主库服务器宕机后,需要第一时间拔除主库所有网线,让服务器进入脱机状态,避免备用从库切换至主库时引起IP冲突等问题。
3.3.2 备用从库切换
运行主库网线拔除后,将备用从库IP修改为主库IP,并通过服务器桌面的一键关闭以及一键开启程序,重启运行应用服务器的所有后台应用服务及服务器桌面的MP中转程序,即可恢复现场作业,整个操作过程耗时不超过5 min。
3.3.3 双机热备重现
双机热备可在恢复现场作业之后进行,不影响现场作业。宕机服务器维修完毕后,接入网络前需要将该服务器IP修改为备用从库IP,此时主备服务器已经调换,删除之前实现的热备功能、发布的事务与订阅后,重新实现热备功能。
对数据库热备功能进行单机模拟测试,以模拟集装箱码头操作系统为基础向单机虚拟环境发送收发箱、装卸船等指令,完全模拟现场作业流程进行作业。该项测试通过后,编写数据插入程序,模拟现场39台轨道吊的作业数据,24 h不间断插入数据库,进行数据压力测试,实时监测数据同步性能,验证热备功能的持续性、稳定性、可靠性。
经过测试的双机热备功能已上线运行,主从数据库数据达到秒级同步,现场数据库服务器进入高可用状态。本次功能的实现极大地提高了现场作业的稳定性、可靠性,即使在主服务器宕机的情况下,也能在极短的时间内进行主备机切换,恢复现场作业。
数据库双机热备技术是保障码头ECS系统稳定运行、生产作业正常运转的必要措施,现场如出现主运行服务器宕机等事故,严格按照恢复手册操作,能够在极短时间内恢复现场作业,极大地提高了系统稳定性、可靠性及安全系数,避免了单点故障对现场作业产生的影响。