NC6X及WAS部署用友软件股份有限公司NC平台技术部代群义2013-08目录NC集群部署WAS安装及部署NC集群部署NC安装ncsetup.batUFIDANC6安装请执行NC安装盘根目录下ncsetup.bat文件(要求安装盘同级目下有ufjdk文件),例如安装uap,执行\uap\ncsetup.bat,出现如下图界面:NC集群部署Apache安装以系统管理员登陆:拥有操作系统的所有权限,如administrator,运行“httpd-2.2.21-win32-x86-no_ssl.msi”开始安装。httpd-2.2.21-win32-x86-no_ssl.msi存放位置为NC6\TOOLS。安装完后,需要将NC6\tools\Apache插件mod_jk.so文件拷贝到Apache_home\modules目录下。NC集群部署NC集群配置:Nchome/bin/ncSysConfig.bat在服务器名称中添加master服务,并勾选“主服务器标识”,管理端口任意,协议定义中协议类型选择HTTP,IP地址为当前主机IP,端口任意。NC集群部署NC集群配置:Nchome/bin/ncSysConfig.bat选择增加按钮,服务名称为ncMem01,不勾选“主服务器标识”,管理端口任意,协议定义选择HTTP和AJP,IP地址为当前主机IP,端口任意,(所有端口在当前系统上必须唯一,非master服务必须选择AJP协议)注:如果是水平集群,从机配置的IP地址需要输入从机的IP地址。在主机上完全配置好后,将nchome拷贝到从机器即可。NC集群部署NC集群配置:Nchome/bin/ncSysConfig.bat服务转发:ApacheHome选择Apache安装路径,例如本环境为“E:\env\Apache22”,单击StartConfig生成配置文件。NC集群部署NC集群配置:Nchome/bin/ncSysConfig.bat生成的文件:E:\env\Apache22Apache_home\conf下ncworkers.properties和ncmodjk.conf文件。其中ncworkers.properties内容为:worker.list=ncMem01,ncMem02,framework,default#worker.ncMem01.host=20.10.130.107worker.ncMem01.port=9066worker.ncMem01.type=ajp13worker.ncMem01.lbfactor=1worker.ncMem01.socket_keepalive=1worker.ncMem01.socket_timeout=0#worker.ncMem02.host=20.10.130.107worker.ncMem02.port=9067worker.ncMem02.type=ajp13worker.ncMem02.lbfactor=1worker.ncMem02.socket_keepalive=1worker.ncMem02.socket_timeout=0#worker.framework.type=lbworker.framework.balanced_workers=ncMem01,ncMem02#worker.default.type=lbworker.default.balanced_workers=ncMem01,ncMem02NC集群部署Nchome/ncSysConfig.batNC集群部署Nchome/ncSysConfig.batNC集群部署Nchome/ncSysConfig.bat服务分配:在集群环境下需手工指定某些服务和模块运行的server,因为NC集群在master上不能起线程,所以需将这些服务和模块配置到非master的其他集群成员上并保存。如下图,会计平台服务,预警和ia模块都配置在ncMem01上。NC集群部署Nchome/ncSysConfig.bat进入$NC_HOME下执行startup.bat启动nc,进入Apache_home\bin下执行httpd.exe启动Apache。浏览器中输入http://hostip:port即可登陆nc,在URL后添加各server端口即可测试各端口配置是否正确。若为NC中间件多机集群则在部署完后将代码同步到各从机的相同路径下,然后运行各$NC_HOME下的startup.bat启动所有server。NC安装及NC集群部署建立账套并升级建系统过程就是根据安装的产品,执行预置的脚本。建立账套登陆http://IP:port/admin.jsp登陆NC系统,用户名root密码为空。点击系统管理→增加,输入系统编码,系统名称,选择生效/失效日期,选择数据源,选择语种,添加系统管理员。点击保存按钮开始升级。升级完成后需要重启中间件。$NC_HOME下stop.bat/startup.batNC安装及NC集群部署建立账套并升级建立账套登陆http://IP:port/admin.jsp登陆NC系统,用户名root密码为空。WAS安装时需要注意事项安装WAS时,WAS的windows环境默认安装路径“c:\programfiles\IBM\Websphere”,这个默认安装路径是不被NC应用所支持,NC应用要求安装简单,不要有空格,不要有下划线,不要有连接线等特殊路径。所以WAS不能安装到默认路径下。通常情况下下列特殊符号包括“`”“~”“!”“@”“#”“$”“%”“^”“&”“*”“(”“)”“-”“_”“+”“=”“{”“}”“[”“]”“\”“|”“;”“:”“””“’”“,”“.”“/”“?”“中文”不能命名成安装路径。安装WAS的另一个要求是网络设置。通常情况下要保证网络链接。如果服务器上有2块或更多网卡,这些网卡如果被启用了,要保证正确分配了IP地址,有正常的网络连线链接。如果某块网卡没有物理连线或正常IP地址设置。就要将该网卡设置为禁用状态。设置合理的IP地址,一般部署NC应用的服务器需要设置成固定IP地址,固定IP地址有利于以后的管理和访问。同时正确维护hosts文件。Unix/Linux环境下,维护hosts文件由为重要。正确维护hosts文件才能保证WAS的正常启动与访问。主机名称要简单简介。通常情况下不要特殊符号命名主机名称。特殊符号包括“`”“~”“!”“@”“#”“$”“%”“^”“&”“*”“(”“)”“-”“_”“+”“=”“{”“}”“[”“]”“\”“|”“;”“:”“””“’”“,”“.”“/”“?”“中文”。安装好WAS建立了profile了,又进行了主机名变更,会出现WAS无法正常启动问题,这个profiles已经坏掉了。用户需要重新建立一个profiles来使用。这一点在今后的维护中需要注意。WASSERVER安装及部署Win7操作系统安装说明:C:\app_was.cd.6100.nd.windows.ia32\WAS\install.exe或者:C:\app_was.cd.6100.nd.windows.ia32\WAS\launchpad.exe如果在Win7操作系统,运行不了,需要选择中”launchpad.exe”右键属性兼容模式:选择兼容WindowsServer2008WASSERVER安装及部署问题描述:1.某建筑总公司用的是NC56+WAS,操作系统是windows200864位(正版),目前系统已上线,WAS一直没有安装上,报错:此安装程序不能在图形方式中运行,但是WAS打补丁用的工具盘则可以安装。2.download.updii.61013.windows.ia64安装之后,没有\IBM\UpdateInstaller\update.bat3.安装完WAS64后,\IBM\AppServer\java目录下没有bin目录分析解决办法:(1)该问题是WAS安装盘中的JDK在Windows2008上有点问题,需要用WAS的补丁盘\download.updii.61013.windows.ia32\JDK覆盖WAS安装盘的JDK,然后再安装即可。(2)download.updii.61013.windows.ia64安装之后,如果没有\IBM\UpdateInstaller\update.bat,则需要从其它机器上拷贝一个update.bat,然后打WAS补丁即可。或者用download.updii.61013.windows.ia32的补丁盘安装。(3)安装完WAS64后,\IBM\AppServer\java目录下没有bin目录,此时,执行.bat命令时会提示:该命令不可用。同样需要从其它机器上安装好的WAS64目录下拷贝一个java即可。WASSERVER安装及部署:常见问题WASSERVER安装及部署WAS补丁和NC版本对应关系:NC501对应was6103NC5011对应was6107NC502及NC55,NC5.6对应was61011NC5.7对应的WAS61031如果不打was补丁或者补丁打的不正确,可能会出现什么问题?举例如下:NC501标准版无法部署到was6107上:表现:was打上6107补丁后,NC501版本(07年2月份发版的)无法部署成功,报:[07-6-2619:06:14:359CST]0000005eDeployEJBTaskIADMA0158I:[EJBDeploy]java.lang.RuntimeException:属性未找到:IComponentCreationDataModelProperties.PROJECT_NAME分析:NC新版的501sp1版本在部署这块基于was6107补丁做了修改。因此,原来nc501只能部署在was6103及以下版本中,不能部署在was6107补丁版本上。反之,nc501sp1可以部署在was6107上而不能部署在was6103及其低版本下。解决办法:对应好nc与was的版本。WASSERVER安装及部署NC6.0对应的WAS版本为:WAS7.0.0.0was.7000.windows.ia32.zipihs.7000.windows.ia32.zipplg.7000.windows.ia32.zipjdk.7000.windows.ia32.zipWAS对应的补丁为:7.0.0-WS-WAS-WinX32-FP0000017.pak7.0.0-WS-WASSDK-WinX32-FP0000017.pak7.0.0-WS-PLG-WinX32-FP0000017.pak7.0.0-WS-IHS-WinX32-FP0000017.pak补丁工具:7.0.0.17-WS-UPDI-WinIA32.zipWASSERVER安装及部署NC6.1对应的WAS版本为:WAS7.0.0.0was.7000.windows.ia32.zipihs.7000.windows.ia32.zipplg.7000.windows.ia32.zipjdk.7000.windows.ia32.zipWAS6.1对应的补丁为:WAS和WASSDK补丁版本是7.0.0.21IHS和plugin需要的补丁版本是7.0.0.23。WebSphere7.0.0.21补丁需要通过WebSphereUpdateInstaller来安装WASSERVER安装及部署\IBM\WebSphere\AppServer需要打的补丁为:7.0.0-WS-WAS-WinX32-FP0000017.pak7.0.0-WS-WASSDK-WinX32-FP0000017.pakWASSERVER安装及部署\IBM\HTTPServer需要打的补丁为:7.0.0-WS-IHS-WinX32-FP0000017.pak7.0.0-WS-WASSDK-WinX32-FP0000017.pak\IBM\HTTPServer\Plugins需要打的补丁为:7.0.0-WS-WASSDK-WinX32-FP0000017.pak7.0.0-WS-PLG-WinX32-FP0000017.pakWASSERVER安装及部署Was安装:可以先只安装软件。WASSERVER安装及部署Was安装:(一)创建管理节点d:\IBM\WebSphere\AppServer\bin>manageprofiles.bat-create-templatePathd:/IBM/WebSphere/AppServer/profileTemplates/dmgr-profileNameDmgr01-profilePathd:/IBM/WebSphere/AppServer/profiles/Dmgr01(二)创建受管节点d:\IBM\WebSphere\AppServer\bin>manageprofiles.bat-create-templatePathd:/IBM/WebSphere/AppServer/profileTemplates/default-profileNameAppSrv01-profilePathd:/IBM/WebSphere/AppServer/profiles/AppSrv01(三)将受管节点加入到管理节点d:\IBM\WebSphere\AppServer\profiles\Dmgr01\bin>startManager.batd:\IBM\WebSphere\AppServer\profiles\AppSrv01\bin>addNode.bat10.1.6.88879注:10.1.6.8为管理节点所在的机器IP地址WASSERVER安装及部署WASSERVER安装及部署在ncsysconfig的服务器信息工具项上点击“从WAS读取”.在这里,可以设置集群中每个服务器的JVM参数、端口等信息。点击”保存“后,这些信息会同步到WAS上去。注意:要为从WAS上读过来的集群设置一个主服务器。WASSERVER安装及部署WASSERVER安装及部署相关概念:1.完全部署:指一次性为选择的模块生成EAR包。完全部署不仅部署代码,而且部署所有的WAS相关的资源信息,安装NC必须完成一次完全部署。2.增量部署:将选择的模块生成的EJB追加到己生成的EAR包中。3.两阶段部署:将部署过程分为两阶段,第一阶段是EJB的代码生成和EAR包的生成。第二阶段是向WAS部署生成的EAR、创建数据源、设署WAS参数的过程。注:生成代码时不要求WAS中间件启动,但是部署时要求WAS中间件启动。生成及部署时记录的日志:\nchome\bin\configsys.logWASSERVER安装及部署WASSERVER安装及部署生成EJB:nchome/bin/目录下:wasDeploy.bat/wasDeploy.sh\nchome\dist\nc.earWASSERVER安装及部署部署EJBnchome/bin/目录下:wasInstall.bat/wasInstall.sh\IBM\AppServer\profiles\AppSrv01\installedApps\javavagCell01\nc60.earWASSERVER安装及部署WASSERVER安装及部署WASSERVER安装及部署例:检查模块与服务器关系时应用程序验证失败并出现意外异常问题描述:WAS+NC55:WAS生成时,没有报错,部署时报错如下:Nchome/bin/configsys.log中报错信息信息:MonJun2114:33:18CST2010-ADMA5016I:安装nc50已启动。MonJun2114:33:21CST2010-ADMA5057E:检查模块与服务器关系时应用程序验证失败并出现意外异常:org.eclipse.jst.j2ee.commonarchivecore.internal.exception.DeploymentDescriptorLoadException:IWAE0022EExceptionoccurredloadingdeploymentdescriptorformodule"nc.itf.fbm.ejb.FBMprivateEJB.jar"inEARfile"D:/usercode/huludao/nchome/nchome/dist/nc.ear"MonJun2114:33:21CST2010-ADMA5011I:清除应用程序nc50的temp目录已完成。ADMA5069E:安装应用程序nc50失败。此应用程序在完全更新当中,因此已从配置会话中卸载。立即废弃您当前的配置会话以恢复应用程序。不要保存对WebSphereApplicationServer配置库所作的更改。未从此存储库中卸载该应用程序。直到当前配置会话已废弃,您才会在当前会话中看到此应用程序。Installapplicationfailed.java.lang.Exception:Faileddeployapplicationatnc.bs.framework.was.admin.ApplicationManage.install(ApplicationManage.java:167)atnc.bs.framework.was.admin.WasSetup.installApp(WasSetup.java:323)WASSERVER安装及部署例:检查模块与服务器关系时应用程序验证失败并出现意外异常分析:nchome/history/application.xml:nc.itf.ebank.OBMEJB.jarnc.itf.fbm.ejb.FBMprivateEJB.jarnc.gejb.so2.cmt.SCM_SO2_SOPRICEEJB.jar……………………………………nc.gejb.fbm.cmt.FBMprivateEJB.jar如上可以看出history/application.xml中FBMprivateEJB出现两次nc.itf.fbm.ejb.FBMprivateEJB.jar和nc.gejb.fbm.cmt.FBMprivateEJB.jar中.在NC55中,主要采用nc.gejb.fbm.cmt.FBMprivateEJB.jar模式,nc.itf.fbm.ejb.FBMprivateEJB.jar上以前版本使用的.造成现在的问题原因主要是升级时history目录下的内容应该清除掉,但是,NC程序并没有清除掉,application.xml中原来旧版本的模块配置信息也保留着,但是,旧版本的模块配置信息部署到was时,找不到对应的代码,所以报错。解决办法:删除nchome/history和temp目录,然后重新生成部署即可。或执行\nchome\bin>ncDomainCmd.batCLEAN,然后重新生成部署即可。例:检查模块与服务器关系时应用程序验证失败并出现意外异常分析:nchome/history/application.xml:nc.itf.ebank.OBMEJB.jarnc.itf.fbm.ejb.FBMprivateEJB.jarnc.gejb.so2.cmt.SCM_SO2_SOPRICEEJB.jar……………………………………nc.gejb.fbm.cmt.FBMprivateEJB.jar如上可以看出history/application.xml中FBMprivateEJB出现两次nc.itf.fbm.ejb.FBMprivateEJB.jar和nc.gejb.fbm.cmt.FBMprivateEJB.jar中.在NC55中,主要采用nc.gejb.fbm.cmt.FBMprivateEJB.jar模式,nc.itf.fbm.ejb.FBMprivateEJB.jar上以前版本使用的.造成现在的问题原因主要是升级时history目录下的内容应该清除掉,但是,NC程序并没有清除掉,application.xml中原来旧版本的模块配置信息也保留着,但是,旧版本的模块配置信息部署到was时,找不到对应的代码,所以报错。解决办法:删除nchome/history和temp目录,然后重新生成部署即可。或执行\nchome\bin>ncDomainCmd.batCLEAN,然后重新生成部署即可。WASSERVER安装及部署例:检查模块与服务器关系时应用程序验证失败并出现意外异常/nchome/bin/ncDomainCmd.bat:清除NC临时文件,ejb部署文件,ejbXMLS文件,日志文件等。如:history,nclogs,temp,work,domain,dist,conf,ejb,ejbXMLs等.(建议执行该命令前,将上面的目录先备份一份.将nchome/bin目录下的文件备份一份.)删除后,NC需要重新全模块生成和部署。如:E:\ncenv\nc56\bin>ncDomainCmd.batCLEANJAVA_HOME=E:\ncenv\nc56\ufjdk.NC_HOME=E:\ncenv\nc56.ncDomainCmdisncdomainmanagertool.usage:ncDomainCmd.batcommandcommand:specifiesCLEAN.CLEANmeanscleaningnctemporaryfile,ejbXMLsfileandlogfileYoumustfulldeployafteryoucleandone.file,ejbsample:ncDomainCmd.batCLEANBuildfile:E:\ncenv\nc56\bin\buildmisc.xmlnc.Domain.Clean:[delete]DeletingdirectoryE:\ncenv\nc56\ejb[delete]DeletingdirectoryE:\ncenv\nc56\ejbXMLs[delete]DeletingdirectoryE:\ncenv\nc56\history[delete]DeletingdirectoryE:\ncenv\nc56\nclogs[delete]DeletingdirectoryE:\ncenv\nc56\temp[delete]DeletingdirectoryE:\ncenv\nc56\work[delete]DeletingdirectoryE:\ncenv\nc56\domain[delete]DeletingdirectoryE:\ncenv\nc56\dist[delete]DeletingdirectoryE:\ncenv\nc56\conf…………BUILDSUCCESSFULTotaltime:1secondWASSERVER安装及部署was+nc5X部署不成功本次部署出现错误,所有的文件显示都和下面的错误有关:[ejbModule/nc/itf/iufo/EJSLocalStatelessnc_itf_iufo_AllEJB_0bfd4279.java(31105):没有为类型AllEJBEjbBean定义方法removeRepData(String,String,MeasurePubDataVO,boolean,String)]但是真正的原因是:MANIFEST.MF文件,引起的,而且只有was_sysconfig.log中简短的一行报错,如下红色:modules\iufo\classes\META-INF\MANIFEST.MFwas_sysConfig.log报:………………………..[java]Savingsession...[java]java.util.zip.ZipException:duplicateentry:META-INF/MANIFEST.MF[java]atjava.util.zip.ZipOutputStream.putNextEntry(ZipOutputStream.java:188)[java]atjava.util.jar.JarOutputStream.putNextEntry(JarOutputStream.java:114)MANIFEST.MF文件的内容只有一行,如下:Manifest-Version:1.0删除modules\iufo\classes\META-INF\MANIFEST.MF文件,重新生成部署,正常。所以对于nc5X的was环境,要查出META-INF\MANIFEST.MF文件,删除掉。如果META-INF目录没有其它文件,该目录也一起删除。如:\nchome\modules\gl\client\classes\META-INF\nchome\modules\uapbd\META-INF\classes\META-INF\nchome\modules\uapqe\client\classes\META-INFWASSERVER安装及部署was+nc5X部署不成功cleanClassesMETA-INF.bat命令(nchome\bin目录下)cleanClassesMETA-INF.bat:清除modules目录下各个模块classes目录下的MANIFEST.MF文件.否则部署可能会错.因为该目录下不应该有MANIFEST.MF文件,常常是打补丁打错的META-INF文件.WASSERVER安装及部署was+nc5X部署部署失败某项目生成成功,部署失败,报错误信息如下/ufsoft/nchome/modules/uapqe/hasthesamemodulenamewithmoduleat:file:/D:/ufsoft/nchome/modules/backup/uapqe-1225bak/[Thread-9]2008/01/1509:09:12[nc.bs.framework.server.deploy.ModuleDeployer]ERROR-file:/D:/ufsoft/nchome/modules/hrpe/hasthesamemodulenamewithmoduleat:file:/D:/ufsoft/nchome/modules/backup/hrpe-1225BAK/[Thread-9]2008/01/1509:09:12[nc.bs.framework.server.deploy.ModuleDeployer]ERROR-file:/D:/ufsoft/nchome/modules/hrta/hasthesamemodulenamewithmoduleat:file:/D:/ufsoft/nchome/modules/复件hrta/………………原因:在上面的信息中,发现/nchome/modules目录下有英文及中文目录的备份文件.这些备份目录及文件删除后,重新生产及部署,成功.WASSERVER安装及部署was+nc5X部署部署失败检查重目录/文件命令(nchome\bin目录下)checkFileDuplicate.bat:检查重复的文件.主要是检查nchome下的目录:moduleshotwebsresourceslib这些目录下的重复的文件,特别是打补丁时在modules下备份的文件,会造成部署时失败.E:\ncenv\nc55\bin>checkFileDuplicate.batJAVA_HOME=E:\ncenv\nc55\ufjdk.NC_HOME=E:\ncenv\nc55.Buildfile:E:\ncenv\nc55\bin\buildmisc.xmlcheck.File.Duplicate:………………[java]E:\ncenv\nc55\modules\modules\yer\lib\pubyer.jar[java]Duplicatejarfile:E:\ncenv\nc55\modules\复件cmp\lib\pubcmp.jar[java]E:\ncenv\nc55\modules\cmp\lib\pubcmp.jar…………………WASSERVER安装及部署websphere启用安全性:在安装websphere时就可以启用安全性,若安装时未启用则可以通过如下方式启用:启动WAS中间件后登陆was管理控制台选择安全性->全局安全性->选择安全配置向导WASSERVER安装及部署websphere启用安全性:WASSERVER安装及部署websphere启用安全性:NC中需要导入证书:LINUX/UNIX:$NC_HOME/bin/wasCertCmd.shIMPWindows下执行%NC_HOME%\bin\wasCertCmd.batIMPWASSERVER安装及部署websphere启用安全性:nchome/ncSysCOnfig.bat:Deploymentsecurity中用户及密码wasUser和wasUserPasswd是was启用安全管理是需要设置的用户及密码.wasTrustStorePasswd和jdkTrustStorePasswd和上面的was安全管理的用户和密码没有关系.如果更改了,需要更改很多地方,所以不要更改.如果不小心更改了,则恢复默认密码,恢复方法:将文件\ufida\nchome\bin\wasinstall\jmx\wasconfig.properties替换为原来的.但是,其他配置都恢复了默认值,所以其他以前设置的项目信息就需要重新设置了.WASSERVER安装及部署websphere启用安全性:登录http://127.0.0.1:9060/ibm/console/会自动转换为:https://127.0.0.1:9043/ibm/console/logon.jspWASSERVER安装及部署websphere启用安全性:启动WAS管理控制台仍然用:d:\IBM\WebSphere\AppServer\profiles\Dmgr01\bin>startManager.bat关闭WAS管理控制台时会弹出窗口让输入用户名和密码:d:\IBM\WebSphere\AppServer\profiles\Dmgr01\bin>stopManager.bat或者使用下面的方法关闭:d:\IBM\WebSphere\AppServer\profiles\Dmgr01\bin>stopManager.bat-useradmin-passwordadminWASSERVER安装及部署websphere启用安全性:如果忘记was管理控制台密码或者想关闭was安全性,方法如下:先停止was及was管理控制台,然后做如下修改.was密码忘记的话,可以通过修改下面的配置文件,取消was密码:$WAS_HOME/config/cells/xxx/securtiy.xml文件,如:..\AppServer\profiles\Dmgr01\config\cells\javavagCell01将“enabled="true"”修改为false.