使用AgentService将Agent发布为Windows系统服务.docx
- 文档编号:9904109
- 上传时间:2023-05-21
- 格式:DOCX
- 页数:17
- 大小:928.67KB
使用AgentService将Agent发布为Windows系统服务.docx
《使用AgentService将Agent发布为Windows系统服务.docx》由会员分享,可在线阅读,更多相关《使用AgentService将Agent发布为Windows系统服务.docx(17页珍藏版)》请在冰点文库上搜索。
使用AgentService将Agent发布为Windows系统服务
使用AgentService将Agent发布为Windows系统服务
编制人员:
熊广
编制部门:
软件工程研发中心
模版文件版本:
V1.3.0
适用项目范围:
研发项目
使用AgentService将Agent发布为Windows系统服务
一前言
在ODI中运行开发好的集成项目,每次需要手动进入ODI安装目录BIN目录下,启动AGENT,在命令行中敲入如agentscheduler"-port=20910""-name=local_agent""-v=5"等的启动命令。
这种方法复杂、繁琐,用户需要记住启动命令,每次均需手工键盘敲入;而且当服务器因故重启时,又需要重新手工启动Agent服务;注销用户时,Agent服务也连带着注销了,对于需要24小时运行的数据集成项目来说来说非常不方便,需要大量的人工干预去启停服务。
基于此考虑,本文档介绍使用ODI提供的agentservice方法将agent发布为Windows的系统服务,以后直接在Windows的服务窗口中即能对发布的Agent进行启停,而且系统重启后服务也会自动启动。
二工具介绍
Agentservice.bat是ODI自带提供的一个小工具(提示:
当运行setup安装ODI时,必须选择Tools选项以安装javaWrapper工具,agentservice对agent的发布会用到该工具)。
在WindowsNT,2000,2003或XP平台下,能够使用该工具将代理注册为系统服务。
以后对数据集成项目的运行就可以直接在服务窗口中进行启停,而且每次重启系统后,服务会自动运行,不需要手动干预,当集成项目作废时也可以通过agentservice卸载服务。
Agentservice.bat位于ODI安装目录\oracledi\bin下,如图所示:
运行参数及说明:
agentservice.bat命令的语法及说明如下所示:
agentservice.bat-i|-r-a|-s[
[
各个参数的详细说明如下:
参数
描述
-i|-r
-i发布为服务
-r卸载服务
-a|-s
-a安装listeneragent(该命令会调用snpsagent.conf文件中的参数)
-s安装Scheduleragent(该命令调snpsagentscheduler.conf
文件中的参数)
发布为服务Agent的物理名称,该参数为必选项
Agrnt的监听端口号
ration_file> Wrapper配置文件的名称,该文件必须位于ODI安装目录的ools/wrapper/conf/子目录下,该参数为可选 三前提配置 在运行agentservice前还需要进行相关的一些配置工作,具体如下: 1、安装ODI时必须选择Tools选项以安装javaWrapper工具,agentservice对agent的发布会用到该工具,一般在安装过程中选择为FULL安装即可,如下所示: 2、在运行agentservice前要确保ODI安装目录下的/bin/odiparams.bat文件之前被正确配置过,该文件中定义了Agent启动的环境信息,发布为服务时将会使用到此文件中定义到的参数,如下图所示: 编辑odiparams.bat,修改其参数,如下图显示了其部分内容,在此部分中修改定义了工作资料库和主存储库的JDBCDRIVER类型、连接地址、用户名、ENCODE后的登陆密码等等,Agent启动运行后就是根据此参数运行其中的内容。 另外一般在ODI安装时即会要求机行此文件的配置修改,此处只需确认无误即可;如果在安装后没有配置该文件,则需要重新配置,具体的配置方法参见《ODI安装、部署手册》。 3、修改ODI安装目录\oracledi\tools\wrapper\conf下的snpsagent.conf文件,该配置文件定义了服务如何启动 此文件的以下内容需要修改: (1)需要添加wrapper.java.classpath: 在ODI中新增加的驱动,需要在此处添加,以使服务运行时能找到这些驱动。 如打开snpsagent.conf(可用TXTX或UltraEdit等编辑软件打开)下图添加了ODI安装目录下LIB和DRIVER文件夹下的驱动,以后新增加的驱动必须在此处添加定义。 我们在附录中给出了一个通用型的配置文件,其中定义了大部分会用到的驱动路径,在一般情况下实施人员可以将此部分的配置内容直接拷贝过去进行配置。 (2)还可以定义发布服务的log文件地址,及详细程度等,如下图中默认日志的文件名为agentservice.log,格式为LPTM,日志级别为INFO。 此处一般不需修改,用默认配置即可。 至此,前提配置已完成,可以运行Agentservice发布服务了。 四使用操作 1、启动Windows命令窗口(cmd窗口),进入ODI安装目录\oracledi\bin 2、启动agentservice.bat 启动参数如下: agentservice.bat-i|-r-a|-s[ [ 启动示例如下: agentservice.bat–i–sAgent_Test20915 此处的Agent_Test为在Topology中定义的一个代理物理名称;20915为其监听端口号端口号,实施过程中根据实际的定义更改此处的代理名和端口号;wrapper_configuration_file一般不需要指定;–i表示添加一个代理进系统服务;–s表示添加的是Scheduleragent。 启动agentservice发布此代理为服务,可以看到该代理被注册成为了系统服务 3、打开控制面板/管理工具/服务,可以看此代理已经被发布为服务 4、点击可查看服务详细信息并启动服务,服务启动后,以后系统重启,服务会自动重启,不需要再手工启动 5、打开ODI安装目录\oracledi\bin下的agentservice.log文件,可以看到服务运行的日志内容,如下图所示: 6、若此Agent下有实际运行的接口或包等,可以在Operator中看到,集成项目已经开始运行了 7、至此该Agent已经成功的发布为了Windows系统服务,如果有多个Agent需要发布,可依次方法注册为多个系统服务;另外如果项目有变更或作废,需要从系统服务中卸载此代理,则只需运行如: agentservice.bat–r–sAgent_Test20915 Agent就从系统服务中卸载掉了 五附件: snpsagent.conf配置参考示例 配置文件中的关键参数以绿色高亮显示 #JavawrapperPropertiespropertiesfileforanAgentScheduler #Notethatmostparametersaresetintheodiparams.batfile,oron #theagentservice.batcommandline. #Theyaredisplayedinthisfileforinformation. #******************************************************************** #***SetthepathtoreferencethejvmusedforyourAgent #Thisparameterisreadinodiparams.bat #mand=java.exe wrapper.working.dir=../../../bin/ #JavaMainclass. wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperSimpleApp #JavaClasspath.Addclasspathelementsasneededstartingfrom1 wrapper.java.classpath.1=../tools/wrapper/lib/wrapper.jar wrapper.java.classpath.2=../lib/. wrapper.java.classpath.3=../lib/sunopsis.zip wrapper.java.classpath.4=../lib/snpshelp.zip wrapper.java.classpath.5=../lib/jakarta-ant-1.4.1-optional.jar wrapper.java.classpath.6=../lib/NetComponents.jar wrapper.java.classpath.7=../lib/sunjce_provider.jar wrapper.java.classpath.8=../lib/jce1_2_2.jar wrapper.java.classpath.9=../lib/local_policy.jar wrapper.java.classpath.10=../lib/US_export_policy.jar wrapper.java.classpath.11=../lib/scripting/. wrapper.java.classpath.12=../lib/scripting/bsf.jar wrapper.java.classpath.13=../lib/scripting/bsh-1.2b7.jar wrapper.java.classpath.14=../lib/scripting/js.jar wrapper.java.classpath.15=../lib/scripting/jython.jar wrapper.java.classpath.16=../drivers/. wrapper.java.classpath.17=../drivers/classes12.zip wrapper.java.classpath.18=../drivers/db2java.zip wrapper.java.classpath.19=../drivers/jt400.zip wrapper.java.classpath.20=../drivers/mysql.zip wrapper.java.classpath.21=../drivers/snpsmq.zip wrapper.java.classpath.22=../drivers/snpsxmlo.zip wrapper.java.classpath.23=../drivers/sqlj.zip wrapper.java.classpath.24=../drivers/common.jar wrapper.java.classpath.25=../drivers/db2fs.jar wrapper.java.classpath.26=../drivers/db2jcc.jar wrapper.java.classpath.27=../drivers/jconn2.jar wrapper.java.classpath.28=../drivers/xerces.jar #***addheretheaditionnaldriverclassesthatdonotappearinthe listabove #JavaLibraryPath(locationofWrapper.DLLorlibwrapper.so) wrapper.java.library.path.1=../tools/wrapper/lib/ #JavaAdditionalParameters wrapper.java.additional.1=-Djava.security.policy=server.policy #InitialJavaHeapSize(inMB) #Thisparameterisreadinodiparams.bat #wrapper.java.initmemory=64 #MaximumJavaHeapSize(inMB) #Thisparameterisreadinodiparams.bat #wrapper.java.maxmemory=128 #Applicationparameters. wrapper.app.parameter.1=oracle.odi.Agent #Theparametersbelow,relatedtotherepositoryconnection,areread inodiparams.bat #updatetheminodiparams.sh #wrapper.app.parameter.1=oracle.odi.Agent #wrapper.app.parameter.2="-SECU_DRIVER=org.hsqldb.jdbcDriver" #wrapper.app.parameter.3="-SECU_URL=jdbc: hsqldb: hsql: //localhost" #wrapper.app.parameter.4="-SECU_USER=sa" #wrapper.app.parameter.5="-SECU_PASS=" #wrapper.app.parameter.6="-WORK_REPOSITORY=WORKREP2" # #Addadditionnalparametersbelow,startingfromparameternumber10 #******************************************************************** #WrapperLoggingProperties #******************************************************************** #Formatofoutputfortheconsole.(Seedocsforformats) wrapper.console.format=PM #LogLevelforconsoleoutput.(Seedocsforloglevels) wrapper.console.loglevel=INFO #Logfiletouseforwrapperoutputlogging. wrapper.logfile=agentservice.log #Formatofoutputforthelogfile.(Seedocsforformats) wrapper.logfile.format=LPTM #LogLevelforlogfileoutput.(Seedocsforloglevels) wrapper.logfile.loglevel=INFO #Maximumsizethatthelogfilewillbeallowedtogrowtobefore #thelogisrolled.Sizeisspecifiedinbytes.Thedefaultvalue #of0,disableslogrolling.Mayabbreviatewiththe'k'(kb)or #'m'(mb)suffix.Forexample: 10m=10megabytes. wrapper.logfile.maxsize=1m #Maximumnumberofrolledlogfileswhichwillbeallowedbeforeold #filesaredeleted.Thedefaultvalueof0impliesnolimit. wrapper.logfile.maxfiles=10 #LogLevelforsys/eventlogoutput.(Seedocsforloglevels) wrapper.syslog.loglevel=FATAL #******************************************************************** #WrapperNTServiceProperties #******************************************************************** #WARNING-Donotmodifyanyofthesepropertieswhenanapplication #usingthisconfigurationfilehasbeeninstalledasaservice. #Pleaseuninstalltheservicebeforemodifyingthissection.The #servicecanthenbereinstalled. #Nameoftheservice #ThisparameterissetdependingontheagentName wrapper.ntservice.name=SnpsAgent #Displaynameoftheservice wrapper.ntservice.displayname=OracleDataIntegratorAgent #Descriptionoftheservice wrapper.ntservice.description=ExecutesOracleDataIntegratorSessions #Servicedependencies.Adddependenciesasneededstartingfrom1 wrapper.ntservice.dependency.1= #Modeinwhichtheserviceisinstalled.AUTO_STARTorDEMAND_START wrapper.ntservice.starttype=AUTO_START #Allowtheservicetointeractwiththedesktop. wrapper.ntservice.interactive=false #******************************************************************** #WrapperJVMTimeoutsinseconds(0=Notimeoutlimit) #******************************************************************** #wrapper.ping.timeout=10 #wrapper.cpu.timeout=30
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 使用 AgentService Agent 发布 Windows 系统 服务