编者按:笔者单位4 台服务器承载着上下级机构公文的发送、传递和接收,需提供7×24 小时的不间断服务,生产系统和备份系统故障切换要求为分钟级,因此需做好系统级别的1:1 备份方式,确保业务中断后能快速恢复。
单位系统采用C/S 架构,共4 台服务器,操作系统使 用Windows Server;数据库使用Oracle,Web 服务器使用WAS(WebSp here Application Server),Oracle 和WAS 均采用单节点部署,运行1 个实例。1 台提供数据库服务;另外3 台提供门户、办公等服务。
系统服务主要由WAS 提供,在3 台服务器上均有部署,是备份的重点;Oracle 只在1 台服务器上部署,备份相对较简单。
WAS 使用的是自带的IBM版JDK,在安装WAS的时候会自动安装在其目录下,此JDK与SUN JDK 主要是编码上有所区别。由于此系统基于WAS 开发,备份机建议还是使用IBM JDK,否则可能会遇到各种奇怪的问题。
由于系统在使用过程中,不仅修改了很多配置文件,而且还打过不少的补丁,若使用最初的软件包部署备份机,会面临很大的风险,而且故障排除会很困难。因此,备份的思路是利用生产系统制作部署包,进行应用程序备份,数据备份可以直接采用复制的方式。
以其中一台WAS 服务器例,另外2 台相同。该服务器计算机名为s3,部署2 个应用程序oa.war和sf.war。WAS的安装目录WAS_HOME 为D:IBMWebSphereAppServerprofilesApp Srv01;oa.war的安装目录为WAS_HOMEinstalledAppss3 Node01Cell oa_war.earoa.war;sf.war的安装目录为WAS_HOMEinstalledAppss3 Node01Cell sf_war.earsf.war。
首先进入该服务器WAS_HOMEinstalledAppss3Node01Celloa_war.ear目录,将oa.war 目录复制出来,然后进入刚才复制的oa.war 目录,搜索以ibm 开头的文件,共有2 个,一个是Web 绑定文件ibm-web-bnd.xmi,另一个是Web 扩展文件ibm-web-ext.xmi,删除这2个文件,最后在命令行中执行JDK的jar 命令创建应用程序的war 部署包,命令为jar-cvf oa.war *(需 在oa.war 目录中执行)。
ibm-web-bnd.xmi 和ibm-web-ext.xmi 用来描述如何部署一个模块或应用,包括其结构、内容、依赖和运行环境的配置数据,位于META-INF 文件夹。
sf.war 应用程序的备份方式与oa.war的备份方式一致。
备份完成后,在另一台服务器上,安装好操作系统,设置与原服务器相同的计算机和IP 地址,安装并配置好WAS 之后,就可以使用上述2个程序包直接安装应用程序了。
这种方式的好处是应用程序中所做的更新都会被打包(当然也包括已修改的配置文件),而且不会有任何风险。后续只要应用程序和配置不发生变化,就不需要再备份应用,只需定期将生产系统中数据文件同步过来就可以了;缺点是操作相对复杂一些,生成war 包时还需要安装JDK。
在服务器的oa_war.ear、sf_war.ear 目录中,分别将oa.war 目录 和sf.war目录压缩为2 个 ZIP 包。oa.war.zip 包的目录结构是oa.war 更 新的应用程序,其中oa 是应用程序名,oa.war 为文件夹名称,而不是war 包,sf.war.zip 包结构也一样。
进入WAS 管理控制台,依次点击“应用程序”→“企业应用程序”→“更新(先勾选需要更新的应用程序再点更新)”→“替换、添加或删除多个文件”,浏览选择ZIP 文件,点击“下一步”→“确定”,WAS 就开始更新应用程序,在保存之前可以查看更新了那些文件。
这种方式除了更新应用程序外,还会更新WAS DM中的ear 包(企业归档文件,位于WAS_HOMEconfigcellss3Node01Cellapplications),更新过程中路径和文件名一致的文件都会被替换,不存在的文件会添加进去。
更新完毕后,将oa_war.ear 和sf_war.ear 文 件(注意是文件,不是文件夹)复制到其他服务器上即可。当然也可以在WAS管理控制台中,点击“应用程序”→“企业应用程序”,然后勾选oa_war前的复选框,最后点击“导出”,即可下载oa_war.ear,同样的方法下载sf_war.ear包(系统投入使用后,打补丁,修改配置后未在WAS 中更新,则此文件不会更新,因为WAS 应用和DM 部署是分离的)。
新ear 包生成后,在另一台服务器上,按上述配置服务器后,在WAS 管理控制台中,就可以使用2 个ear 包安装应用程序了。这种方式的操作相对简单,具有war包方式的优点,缺点是更新可能导致生产系统服务中断,有一定风险;在更新包比较大时,更新后保存时间会非常的长,有可能更新失败。