




已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
KARAF读书笔记目录KARAF读书笔记1一 序21.1序篇感言21.2名词解释3二 KARAF简介32.1概念32.1.1KARAF简介32.1.2WRAPPER简介32.1.3守护进程42.1.4作用42.2环境52.2.1下载地址52.3参考资料52.3.1网络参考52.3.2书籍参考5三 服务化配置53.1WINDOWS系统服务化配置53.1.1手动配置53.1.2自动配置73.2LINUX系统服务化配置103.2.1手动配置103.2.2自动配置10四 KARAF控制台使用114.1介绍114.2SHELL模块114.2.1介绍114.2.2指令介绍11五 SSHD模块155.1介绍155.2SSH容器跳转165.2.1KARAF间跳转16六 LOG模块166.1介绍166.2KARAF.LOG16七 KARAF其他功能介绍167.1目录结构167.2KARAF重置17八 KARAF子实例178.1子实例作用17一 序 1.1 序篇感言KARAF是APACHE开源项目,是一款非常优季的OSGI容器,内部集成了很多优秀的功能,通过调研,该项目很适合用作自动化采集客户端使用 耘刈 2015-12-231.2 名词解释名词说明备注控制台全部指在BIN目录下启动的karaf.bat打开的控制界面,下文中所有控制台都表示该界面。二 KARAF简介12.1 概念2.1.1 KARAF简介Karaf是Apache旗下的一个开源项目.Karaf同时也是一个基于OSGi的运行环境,Karaf提供了一个轻量级的OSGi容器,可以用于部署各种组件,应用程序.Karaf提供了很多特性用于帮助开发者和用户更加灵活的部署应用,例如:热部署,动态配置,几种日志处理系统,本地系统集 成,可编程扩展控制台,ssh远程访问,内置安装认证机制等等.同时Karaf作为一款成熟而且优秀的OSGi运行环境以及容器已经被诸多Apache项目作为基础容器,例如:Apache Geronimo, ApacheServiceMix, Fuse ESB,由此可见Karaf在性能,功能和稳定性上都是个不错的选择。karaf是OSGI的容器实例,类似tomcat是servlet的容器实例一样。Karaf内部还集成了很多实用功能,如:WRAPPER功能。2.1.2 WRAPPER简介JAVA SERVICE WRAPPER可以将JAVA程序包装成系统服务并以守护进程的运行方式运行服务。简单地说就是让JAVA程序成为系统服务进程,随着系统的运行而运行。而且WRAPPER支持的系统非常全面,下面为它可以支持的系统:2.1.3 守护进程在linux或者unix操作系统中在系统引导的时候会开启很多服务,这些服务就叫做守护进程。为了增加灵活性,root可以选择系统开启的模式,这些模式叫做运行级别,每一种运行级别以一定的方式配置系统。 守护进程是脱离于终端并且在后台运行的进程。守护进程脱离于终端是为了避免进程在执行过程中的信息在任何终端上显示并且进程也不会被任何终端所产生的终端信息所打断。守护进程,也就是通常说的Daemon进程,是Linux中的后台服务进程。它是一个生存期较长的进程,通常独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。守护进程常常在系统引导装入时启动,在系统关闭时终止。Linux系统有很多守护进程,大多数服务都是通过守护进程实现的,同时,守护进程还能完成许多系统任务,例如,作业规划进程crond、打印进程lqd等(这里的结尾字母d就是Daemon的意思)。由于在Linux中,每一个系统与用户进行交流的界面称为终端,每一个从此终端开始运行的进程都会依附于这个终端,这个终端就称为这些进程的控制终端,当控制终端被关闭时,相应的进程都会自动关闭。但是守护进程却能够突破这种限制,它从被执行开始运转,直到整个系统关闭时才退出。如果想让某个进程不因为用户或终端或其他地变化而受到影响,那么就必须把这个进程变成一个守护进程。2.1.4 作用使用apache karaf项目做客户端容器,使用其自带的service wraper功能,把karaf包装成系统服务,并设置为守护进程,这样只要系统运行正常karaf项目就可以一直运转。开发OSGI架构的插件项目,打成JAR包,推送到karaf项目目录下的deploy部署文件夹下,就能进行客户端采集,可以通过JAR的添加删除来达到采集端的自动化管理的目的。2.2 环境2.2.1 下载地址1:/doc/english/download.jsp2:/2.3 参考资料2.3.1 网络参考1:/zcy_soft/p/3738947.html2:/article/72894043:/article/72894054:/article/72894032.3.2 书籍参考1:自动化运维软件设计实战三 服务化配置233.1 WINDOWS系统服务化配置3.1.1 手动配置 启动KARAF1、 启动KARAF项目,找到KARAF下的karaf.bat文件并执行。2、 安装wrapper命令,在控制台中输入:features:install wrapper,这样就可以使用wrapper命令了。 KARAF命令介绍1、wrapper:install -help 查看具体的帮助信息2、wrapper:install 可以把KARAF安装为服务3、wrapper:install s AUTO_START n KARAF d Karaf D ”Karaf Service” 让KARAF服务在开机时启动 KARAF服务安装1、 执行命令wrapper:install2、 执行命令wrapper:install s AUTO_START n KARAF d Karaf D ”Karaf Service” 安装KARAF SERVICE准备,执行上述命令会生成KARAF WRAPPER的配置文件,后续需对该文件进行配置,同时还给出启停以及安装和卸载KARAF服务的示例,这时APACHE KARAF的服务并没有安装,WRAPPER只是帮我们生成了用于服务安装的EXE文件。执行结果:3、退出KARAF程序,进入控制台,执行如下语句:C: D:serversitmsapache-karaf-2.3.11binKARAF-service.bat install执行服务安装命令。出现wrapper | karaf installed表示安装成功,可以在windows服务里看到karaf服务,如下图:至此KARAF应用系统服务化已完成。3.1.2 自动配置 处理方式KARAF WRAPPER安装一次后,可以直接复制到相同类型的系统上进行运行,不需要按上述步骤再次生成,但在此之前需要对前面生成的配置文件进行修改,因为时面涉及JDK、KARAF安装目录等信息,如果其JDK和KARAF_HOME目录是一样的,则无需修改配置文件。WRAPPER.LOGFILE这个项目项,会让由WRAPPER启动的KARAF输出日志的位置和使用控制台启动的KARAF输出日志的位置不一样,可以根据需要对该参数进行配置。到apache-karaf-2.3.11datalog目录下,我们可以看到两个日志文件,一个是karaf.log,一个是wrapper.log这两个文件就是前面说的存放日志文件。 配置文件路径该配置文件在上述安装时产生的,其存放的路径为apache-karaf-2.3.11etcKARAF-wrapper.conf文件。 配置文件介绍1、WRAPPER的基础配置,主要描述JDK以及KARAF的根路径#*# Wrapper Properties#*set.default.JAVA_HOME=D:Program FilesJavajdk1.6.0_25set.default.KARAF_HOME=D:serversitmsapache-karaf-2.3.11set.default.KARAF_BASE=D:serversitmsapache-karaf-2.3.11set.default.KARAF_DATA=D:serversitmsapache-karaf-2.3.11data2、JAVA应用#*# Java Application#*wrapper.working.dir=%KARAF_BASE%mand=%JAVA_HOME%/bin/javawrapper.java.mainclass=org.apache.karaf.shell.wrapper.Mainwrapper.java.classpath.1=%KARAF_BASE%/lib/karaf-wrapper.jarwrapper.java.classpath.2=%KARAF_HOME%/lib/karaf.jarwrapper.java.classpath.3=%KARAF_HOME%/lib/karaf-jaas-boot.jarwrapper.java.classpath.4=%KARAF_BASE%/lib/karaf-wrapper-main.jarwrapper.java.library.path.1=%KARAF_BASE%/lib/3、应用程序参数,从1开始# Application Parameters. Add parameters as needed starting from 1#wrapper.app.parameter.1=4、 JVM参数,从1开始# JVM Parameters# note that n is the parameter number starting from 1.wrapper.java.additional.1=-Dkaraf.home=%KARAF_HOME%wrapper.java.additional.2=-Dkaraf.base=%KARAF_BASE%wrapper.java.additional.3=-Dkaraf.data=%KARAF_DATA%wrapper.java.additional.4=-Dcom.sun.management.jmxremotewrapper.java.additional.5=-Dkaraf.startLocalConsole=falsewrapper.java.additional.6=-Dkaraf.startRemoteShell=truewrapper.java.additional.7=-Djava.endorsed.dirs=%JAVA_HOME%/jre/lib/endorsed;%JAVA_HOME%/lib/endorsed;%KARAF_HOME%/lib/endorsedwrapper.java.additional.8=-Djava.ext.dirs=%JAVA_HOME%/jre/lib/ext;%JAVA_HOME%/lib/ext;%KARAF_HOME%/lib/ext5、取消注释后启用JMX# Uncomment to enable jmx#wrapper.java.additional.n=-Dcom.sun.management.jmxremote.port=1616#wrapper.java.additional.n=-Dcom.sun.management.jmxremote.authenticate=false#wrapper.java.additional.n=-Dcom.sun.management.jmxremote.ssl=false6、取消注释以加载自己的插件# Uncomment to enable YourKit profiling#wrapper.java.additional.n=-Xrunyjpagent7、取消注释启动远程调试# Uncomment to enable remote debugging#wrapper.java.additional.n=-Xdebug -Xnoagent -Dpiler=NONE#wrapper.java.additional.n=-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=50058、JAVA HEAP 启动大小(MB)# Initial Java Heap Size (in MB)#wrapper.java.initmemory=39、JAVA HEAP最大值(MB)# Maximum Java Heap Size (in MB)wrapper.java.maxmemory=51210、WRAPPER的日志属性 #*# Wrapper Logging Properties11、控制台上日志的输入格式化#*# Format of output for the console. (See docs for formats)wrapper.console.format=PM12、输出的日志级别# Log Level for console output. (See docs for log levels)wrapper.console.loglevel=INFO13、日志文件输出路径# Log file to use for wrapper output logging.wrapper.logfile=%KARAF_DATA%/log/wrapper.log14、日志文件输出格式# Format of output for the log file. (See docs for formats)wrapper.logfile.format=LPTM15、输出的日志文件级别# Log Level for log file output. (See docs for log levels)wrapper.logfile.loglevel=INFO16、单个日志文件最大容量# Maximum size that the log file will be allowed to grow to before# the log is rolled. Size is specified in bytes. The default value# of 0, disables log rolling. May abbreviate with the k (kb) or# m (mb) suffix. For example: 10m = 10 megabytes.wrapper.logfile.maxsize=10m17、日志文件最大数# Maximum number of rolled log files which will be allowed before old# files are deleted. The default value of 0 implies no limit.wrapper.logfile.maxfiles=518、是否记录日志输出时间# Log Level for sys/event log output. (See docs for log levels)wrapper.syslog.loglevel=NONE19、windows wrapper属性#*# Wrapper Windows Properties#*# Title to use when running as a consolewrapper.console.title=KARAF20、windows nt/2000/xp wrapper属性#*# Wrapper Windows NT/2000/XP Service Properties#*# WARNING - Do not modify any of these properties when an application# using this configuration file has been installed as a service.# Please uninstall the service before modifying this section. The# service can then be reinstalled.21、服务名称# Name of the =KARAF22、服务展示名称# Display name of the servicewrapper.ntservice.displayname=Karaf23、服务描述# Description of the servicewrapper.ntservice.description=Karaf Service24、服务依赖,从1开始# Service dependencies. Add dependencies as needed starting from 1wrapper.ntservice.dependency.1=25、服务的启动模式# Mode in which the service is installed. AUTO_START or DEMAND_STARTwrapper.ntservice.starttype=AUTO_START26、允许服务在桌面呈现# Allow the service to interact with the eractive=false 服务安装3.2 LINUX系统服务化配置3.2.1 手动配置3.2.2 自动配置四 KARAF控制台使用44.1 介绍Apache Karaf的控制台是非常有用的功能模块,具备很多实用的功能,对于JAVA采集客户端来说,其代码量比较少,而且ECLIPSE对OSGI的调试支持不是很好,不利于排错,可以在控制台里面排错,并且集成了非常有用的SHELL模块,可以用来执行KARAF内部命令、并提供了SSHD(即:SSH服务)功能。对于封装成系统服务后的KARAF怎么使用其控制台进行命令操作,可以打开apache-karaf-2.3.11bin,执行karaf.bat文件,前提是要先把服务进程KARAF-wrapper.exe关闭,对于有些SHELL命令可以在shell.bat控制台中进行操作。4.2 SHELL模块4.2.1 介绍SHELL模块可以看作在KARAF内部自己实现的一个迷你的SHELL环境,它提供了一些很基础的功能。4.2.2 指令介绍 shell:exec cmd /c dir该指令是查询KARAF安装根目录下所有的文件信息。查询结果如下: shell:info该指令可以获取KARAF基础信息。(从karaf.bat进控制台)1、 KARAF的基础信息,包括版本、安装路径等。2、 JVM的基础信息,包括版本、线程数等。3、 操作系统信息,包括系统名称、CPU核心数以及CPU架构等。查询结果如下: osgi:list当OSGI包部署到KARAF的deploy目录下面之后,可以通过该指令来确认OSGI是否正常启动。执行结果如下: log:display查看KARAF系统启动后到当前输入指令这段时间产生的所有的日志内容。执行结果如下:五 SSHD模块55.1 介绍SSHD即SSH服务,Apache Karaf内嵌的这个功能,使得我们可以通过SSH服务进行跳转,从一个KARAF跳到另一个KARAF服务,或从一个KARAF跳到一台开启了SSH服务的主机上。这样方便于我们进行插件包的加载与移除。5.2 SSH容器跳转5.2.1 KARAF间跳转1、 在控制台输入命令:ssh p 8101 karaf会要求输入密码,输入karaf,就可以跳转到主机上安装的KARAF服务进行操作。2、 通过shell:info获取KARA
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 供热知识培训课件
- 长期假期后管理办法
- 企业用电安全培训下载课件
- 疫情防治宣传管理办法
- 生物材料共享管理办法
- 软实力竞争策略构建-洞察及研究
- 加密保护技术-洞察及研究
- 认证系统抗攻击设计-洞察及研究
- 路运网络脆弱性分析-洞察及研究
- 出国前安全教育培训课件
- 项目一实验动物初步认识与安全接触任务一认识理解并善待实验动
- 2025年智能楼宇管理师(中级)考试试卷:绿色建筑与能源管理
- 2026版《三维设计》高三一轮复习物理第八章 机械振动和机械波
- 2025届湖南中考化学真题试卷【含答案】
- 安全教育培训记录表
- 并购绩效论文
- 文物保护工程进度及工期保证措施
- 设备泄露分级管理制度
- 2025年湖北省中考生物、地理合卷试卷真题(含答案)
- 电厂检修项目风险评估报告
- 2025至2030年中国智能炒菜机(炒菜机器人)行业市场现状调查及前景战略研判报告
评论
0/150
提交评论