书签 分享 收藏 举报 版权申诉 / 17

基于KARAF与ACTIVEMQ的自动化运维系统及其实现方法.pdf

  • 上传人:a3
  • 文档编号:1747099
  • 上传时间:2018-07-09
  • 格式:PDF
  • 页数:17
  • 大小:1.23MB
  • 摘要
    申请专利号:

    CN201510014388.5

    申请日:

    2015.01.12

    公开号:

    CN104731580A

    公开日:

    2015.06.24

    当前法律状态:

    实审

    有效性:

    审中

    法律详情:

    授权|||著录事项变更IPC(主分类):G06F 9/44变更事项:申请人变更前:上海新炬网络信息技术有限公司变更后:上海新炬网络信息技术股份有限公司变更事项:地址变更前:200063 上海市普陀区中山北路2000号中期大厦3楼B变更后:201701 上海市青浦区外青松公路7548弄588号1幢1层R区113室|||实质审查的生效IPC(主分类):G06F 9/44申请日:20150112|||公开

    IPC分类号:

    G06F9/44

    主分类号:

    G06F9/44

    申请人:

    上海新炬网络信息技术有限公司

    发明人:

    程永新; 谢涛; 宁耀林

    地址:

    200063上海市普陀区中山北路2000号中期大厦3楼B

    优先权:

    专利代理机构:

    上海申新律师事务所31272

    代理人:

    夏海天

    PDF完整版下载: PDF下载
    内容摘要

    本发明公开了一种基于Karaf与ActiveMQ的自动化运维系统及其实现方法,包括应用服务器,通过Karaf构建并提供服务端模块;被监控主机,通过Karaf构建客户端插件并获取监控数据;数据库服务器,存储监控配置信息和监控数据;Web服务器:提供用户配置界面和监控界面;所述应用服务器和被监控主机之间通过代理服务器相连,所述应用服务器通过ActiveMQ调用代理服务器插件以及被监控主机上的客户端插件获取监控数据。本发明提供的基于Karaf与ActiveMQ的自动化运维系统及其实现方法,具备自更新、热部署、分布式快速功能扩展能力,实现维护人员日常的运维场景的自动化,且只需少量甚至无需脚本编写。

    权利要求书

    权利要求书
    1.  一种基于Karaf与ActiveMQ的自动化运维系统,其特征在于,包括:
    应用服务器,通过Karaf构建并提供服务端模块;
    被监控主机,通过Karaf构建客户端插件并获取监控数据;
    数据库服务器,存储监控配置信息和监控数据;
    Web服务器:提供用户配置界面和监控界面;
    所述应用服务器和被监控主机之间通过代理服务器相连,所述代理服务器通过 Karaf构建代理服务器插件,所述应用服务器上的服务端模块通过ActiveMQ调用代 理服务器上的代理服务器插件,所述代理服务器插件通过ActiveMQ调用被监控主机 上的客户端插件获取监控数据。

    2.  如权利要求1所述的基于Karaf与ActiveMQ的自动化运维系统,其特征在 于,所述被监控主机上的客户端插件包括监控告警插件、自动化运维功能插件以及 基础服务功能插件。

    3.  一种基于Karaf与ActiveMQ的自动化运维系统实现方法,采用如权利要求 1所述的自动化运维系统,其特征在于,包括如下步骤:
    a)在应用服务器上通过Karaf构建监控告警模块、运维管理模块和接入配置 模块;
    b)在被监控主机上通过Karaf构建监控告警插件、自动化运维功能插件以及 基础服务功能插件;
    c)在Web服务器上提供监控告警处理界面、自动化运维管理功能界面以及接 入配置的用户操作界面;
    d)所述代理服务器通过ActiveMQ调用客户端插件获取监控数据,并定时将 所获取监控数据传送给应用服务器实现自动化运维及监控。

    4.  如权利要求3所述的基于Karaf与ActiveMQ的自动化运维系统实现方法, 其特征在于,所述被监控主机上的监控告警插件采用Agent、SNMP、IPMI、JDBC、JMX 和/或SSH方式提供存储、网络、主机、数据库、中间件、Web拨测的监控与告警, 所述被监控主机上的自动化运维功能插件包括远程命令插件、文件下发插件、文件 抓取插件、目录抓取插件和配置变更插件,所述基础服务功能插件包括消息状态插 件、容器管理插件和热部署插件。

    5.  如权利要求4所述的基于Karaf与ActiveMQ的自动化运维系统实现方法, 其特征在于,所述应用服务器上运维管理模块包括自动化巡检、故障诊断、远程命 令、文件下发/抓取、自动化重启和自动化部署模块。

    6.  如权利要求5所述的基于Karaf与ActiveMQ的自动化运维系统实现方法, 其特征在于,所述文件下发过程如下:
    S11:在Web服务器上的用户操作界面将需要下发的文件发送到应用服务器端 的ActiveMQ中;
    S12:所述应用服务器端的文件下发插件监听到有文件需要下发,将文件下发 到代理服务器的ActiveMQ中;
    S13:所述被监控主机上的客户端文件下发插件探测到代理服务器的ActiveMQ 的对应队列有自身的消息,则接收该消息;
    S14:在接收的各个阶段都会将相应的消息通过基础插件消息状态插件发送回 应用服务器端的ActiveMQ,并写入到数据库服务器;
    S15:Web服务器上的用户操作界面读取消息状态,反馈下发结果给用户。

    7.  如权利要求5所述的基于Karaf与ActiveMQ的自动化运维系统实现方法, 其特征在于,所述文件抓取过程包括文件抓取服务端流程、代理段流程以及客户端 流程三个部分;
    所述文件抓取服务端流程如下:
    S21:所述应用服务器端文件抓取插件监听服务器端MQ消息;
    S22:监听到消息后反馈“准备下载文件”状态到数据库服务器,并在Web用 户操作界面显示下载状态;
    S23:开始下载文件,接收文件流,将“正在接收文件”状态反馈到数据库服 务器;
    S24:接收完成,将“接收完成”状态反馈到数据库服务器;
    S25:所述应用服务器端将接收的临时文件删除;
    所述文件抓取代理端流程如下:
    S31:所述代理服务器端文件抓取插件监听服务器端MQ消息;
    S32:监听到消息后反馈“准备下载文件”状态到数据库服务器,并在Web用 户操作界面显示下载状态;
    S33:开始下载文件,接收文件流,将“正在接收文件”状态反馈到数据库服 务器;
    S34:接收完成,将“接收完成”状态反馈到数据库服务器;
    S35:所述代理服务器端将接收的临时文件删除;
    所述文件抓取客户端流程如下:
    S41:所述Web用户操作界面将文件抓取的参数通过MQ转发到代理服务器的MQ 中;
    S42:所述被监控主机上的客户端插件侦听到代理服务器的队列上有文件抓取 的任务,接收消息;
    S43:判断文件是否存储,不存在则停止采集;
    S44:如果文件存在,则新建、删除或者修改任务调度;
    S45:如果是抓取配置文件,判断配置文件是否有变化,没有变化则不抓取, 变化则抓取配置文件;如果是抓取日志文件则将日志文件回传。

    8.  如权利要求4所述的基于Karaf与ActiveMQ的自动化运维系统实现方法, 其特征在于,所述自动化巡检对存储、网络、主机、数据库、中间件和应用软件提 供日巡检、周巡检、月巡检和/或季度巡检报告。

    9.  如权利要求4所述的基于Karaf与ActiveMQ的自动化运维系统实现方法, 其特征在于,所述自动化重启提供周期性、定时、手动方式对数据库、中间件、主 机进行重启,并在重启前后对数据进行比对校验以及状态验证。

    10.  如权利要求3所述的基于Karaf与ActiveMQ的自动化运维系统实现方法, 其特征在于,所述接入配置功能采用向导方式提供Agent的监控接入,同时提供批 量或单个监控接入方式。

    说明书

    说明书基于Karaf与ActiveMQ的自动化运维系统及其实现方法
    技术领域
    本发明涉及一种自动化运维系统及其实现方法,尤其涉及一种基于Karaf与 ActiveMQ的自动化运维系统及其实现方法。
    背景技术
    面对越来越复杂的业务,面对越来越多样化的用户需求,不断扩展的IT应用不 论是规模还是数量都和以前不在一个数量级,单靠人工运维已经无法满足在技术、 业务、管理等方面的要求.目前的IT运维管理模式经常让IT部门疲惫不堪,主要表 现在以下两个方面:
    (1)运维人员被动、效率低
    在IT运维过程中,只有当事件已经发生并已造成业务影响时才能发现和着手处 理,这种被动“救火”不但使IT运维人员终日忙碌,也使IT运维本身质量很难提 高,导致IT运维的服务满意度不高。IT运维人员日常大部分时间和精力是处理一些 简单重复的问题,而且由于故障预警机制不完善,往往是故障发生后或报警后才会 进行处理,使到IT运维人员的工作经常是处于被动“救火”的状态,不但事倍功半 而且常常会出现恶性连锁反应。
    (2)缺乏高效的自动运维技术工具
    随着信息化建设的深入,IT系统日趋复杂,林林总总的网络设备、服务器、中 间件、数据库、业务系统等让运维人员难以从容应对,即使加班加点地维护、部署、 管理也经常会因设备出现故障而导致业务的中断,严重影响业务的正常运转。出现 这些问题部分原因是缺乏事件监控和诊断工具等自动化运维技术工具,因为在没有 高效的技术工具的支持下,使到问题出现后很难快速、准确地找到根本原因,也很 难得到主动、快速处理。
    为提高系统运维的自动化水平,目前市场上主流的运维软件提供较为全面的设 备监控以及较为完善的配置管理等功能,以目前互联网行业非常流行的开源软件 Zabbix、Puppet为例介绍现有自动化运维软件的一些功能特点。
    zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级 的开源解决方案,zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方 法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux, Solaris,HP-UX,,AIX,Free BSD,Open BSD,OS X等平台上。zabbix安装与配置 简单,学习成本低;支持多语言(包括中文);免费开源;自动发现服务器与网络设 备;分布式监视以及WEB集中管理功能;可以无agent监视;用户安全认证和柔软 的授权方式;通过WEB界面设置或查看监视结果;email等通知功能等等。zabbix 能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系 统管理员快速定位/解决存在的各种问题。
    puppet是一种Linux、Unix、windows平台的集中配置管理系统,使用自有的 puppet描述语言,可管理配置文件、用户、cron任务、软件包、系统服务等。puppet 把这些系统实体称之为资源,puppet的设计目标是简化对这些资源的管理以及妥善 处理资源间的依赖关系。
    由上可见,现有技术方案存在如下问题:1、系统客户端自身不具备自更新的能 力,部署后程序的更新耗费大量人力。2、系统客户端不具备热部署能力,需要停止 客户端进行程序更新。3、系统功能固定,扩展能力弱,或者功能扩展步骤繁琐,例 如需要登录客户端等。4、功能支撑的运维场景的较少,主要集中在监控告警、系统 配置信息的变更,且无法快速的进行扩充。5、运维场景的自动化程序不够,需要进 行大量的脚本配置,效率不高。
    发明内容
    本发明所要解决的技术问题是提供一种基于Karaf与ActiveMQ的自动化运维系 统及其实现方法,具备自更新、热部署、分布式快速功能扩展能力,实现维护人员 日常的运维场景的自动化,且只需少量甚至无需脚本编写。
    本发明为解决上述技术问题而采用的技术方案是提供一种基于Karaf与 ActiveMQ的自动化运维系统,包括:
    应用服务器,通过Karaf构建并提供服务端模块;
    被监控主机,通过Karaf构建客户端插件并获取监控数据;
    数据库服务器,存储监控配置信息和监控数据;
    Web服务器:提供用户配置界面和监控界面;
    所述应用服务器和被监控主机之间通过代理服务器相连,所述代理服务器通过 Karaf构建代理服务器插件,所述应用服务器上的服务端模块通过ActiveMQ调用代 理服务器上的代理服务器插件,所述代理服务器插件通过ActiveMQ调用被监控主机 上的客户端插件获取监控数据。
    上述的基于Karaf与ActiveMQ的自动化运维系统,其中,所述被监控主机上的 客户端插件包括监控告警插件、自动化运维功能插件以及基础服务功能插件。
    本发明为解决上述技术问题还提供一种上述基于Karaf与ActiveMQ的自动化运 维系统实现方法,包括如下步骤:a)在应用服务器上通过Karaf构建监控告警模块、 运维管理模块和接入配置模块;b)在被监控主机上通过Karaf构建监控告警插件、 自动化运维功能插件以及基础服务功能插件;c)在Web服务器上提供监控告警处理 界面、自动化运维管理功能界面以及接入配置的用户操作界面;d)所述代理服务器 通过ActiveMQ调用客户端插件获取监控数据,并定时将所获取监控数据传送给应用 服务器实现自动化运维及监控。
    上述的基于Karaf与ActiveMQ的自动化运维系统实现方法,其中,所述被监控 主机上的监控告警插件采用Agent、SNMP、IPMI、JDBC、JMX和/或SSH方式提供存 储、网络、主机、数据库、中间件、Web拨测的监控与告警,所述被监控主机上的自 动化运维功能插件包括远程命令插件、文件下发插件、文件抓取插件、目录抓取插 件和配置变更插件,所述基础服务功能插件包括消息状态插件、容器管理插件和热 部署插件。
    上述的基于Karaf与ActiveMQ的自动化运维系统实现方法,其中,所述应用服 务器上运维管理模块包括自动化巡检、故障诊断、远程命令、文件下发/抓取、自动 化重启和自动化部署模块。
    上述的基于Karaf与ActiveMQ的自动化运维系统实现方法,其中,所述文件下 发过程如下:S11:在Web服务器上的用户操作界面将需要下发的文件发送到应用服 务器端的ActiveMQ中;S12:所述应用服务器端的文件下发插件监听到有文件需要 下发,将文件下发到代理服务器的ActiveMQ中;S13:所述被监控主机上的客户端 文件下发插件探测到代理服务器的ActiveMQ的对应队列有自身的消息,则接收该消 息;S14:在接收的各个阶段都会将相应的消息通过基础插件消息状态插件发送回应 用服务器端的ActiveMQ,并写入到数据库服务器;S15:Web服务器上的用户操作界 面读取消息状态,反馈下发结果给用户。
    上述的基于Karaf与ActiveMQ的自动化运维系统实现方法,其中,所述文件抓 取过程包括文件抓取服务端流程、代理段流程以及客户端流程三个部分;
    所述文件抓取服务端流程如下:S21:所述应用服务器端文件抓取插件监听服务 器端MQ消息;S22:监听到消息后反馈“准备下载文件”状态到数据库服务器,并 在Web用户操作界面显示下载状态;S23:开始下载文件,接收文件流,将“正在接 收文件”状态反馈到数据库服务器;S24:接收完成,将“接收完成”状态反馈到数 据库服务器;S25:所述应用服务器端将接收的临时文件删除;
    所述文件抓取代理端流程如下:S31:所述代理服务器端文件抓取插件监听服务 器端MQ消息;S32:监听到消息后反馈“准备下载文件”状态到数据库服务器,并 在Web用户操作界面显示下载状态;S33:开始下载文件,接收文件流,将“正在接 收文件”状态反馈到数据库服务器;S34:接收完成,将“接收完成”状态反馈到数 据库服务器;S35:所述代理服务器端将接收的临时文件删除;
    所述文件抓取客户端流程如下:S41:所述Web用户操作界面将文件抓取的参数 通过MQ转发到代理服务器的MQ中;S42:所述被监控主机上的客户端插件侦听到代 理服务器的队列上有文件抓取的任务,接收消息;S43:判断文件是否存储,不存在 则停止采集;S44:如果文件存在,则新建、删除或者修改任务调度;S45:如果是 抓取配置文件,判断配置文件是否有变化,没有变化则不抓取,变化则抓取配置文 件;如果是抓取日志文件则将日志文件回传。
    上述的基于Karaf与ActiveMQ的自动化运维系统实现方法,其中,所述自动化 巡检对存储、网络、主机、数据库、中间件和应用软件提供日巡检、周巡检、月巡 检和/或季度巡检报告。
    上述的基于Karaf与ActiveMQ的自动化运维系统实现方法,其中,所述自动化 重启提供周期性、定时、手动方式对数据库、中间件、主机进行重启,并在重启前 后对数据进行比对校验以及状态验证。
    上述的基于Karaf与ActiveMQ的自动化运维系统实现方法,其中,所述接入配 置功能采用向导方式提供Agent的监控接入,同时提供批量或单个监控接入方式。
    本发明对比现有技术有如下的有益效果:本发明提供的基于Karaf与ActiveMQ 的自动化运维系统及其实现方法,用Karaf构建一个具备热部署、自更新、强扩展 能力的分布式的自动化运维软件,利用ActiveMQ使自动化运维软件具备分布式部署 的能力,梳理日常运维场景,提供支撑实现日常运维自动化的功能插件。
    附图说明
    图1为本发明基于Karaf与ActiveMQ的自动化运维系统网络连接示意图;
    图2为本发明基于Karaf与ActiveMQ的自动化运维系统架构示意图;
    图3为本发明基于Karaf与ActiveMQ的自动化运维系统实现流程示意图;
    图4为本发明自动化运维系统的被监控主机上的客户端插件动态配置示意图;
    图5为本发明自动化运维系统的文件下发流程示意图;
    图6为本发明自动化运维系统的文件抓取服务端流程示意图;
    图7为本发明自动化运维系统的文件抓取代理端流程示意图;
    图8为本发明自动化运维系统的文件抓取客户端流程示意图。
    具体实施方式
    下面结合附图和实施例对本发明作进一步的描述。
    图1为本发明基于Karaf与ActiveMQ的自动化运维系统网络连接示意图。
    请参见图1,本发明提供的基于Karaf与ActiveMQ的自动化运维系统,包括:
    应用服务器,通过Karaf构建并提供服务端模块;
    被监控主机,通过Karaf构建客户端插件并获取监控数据;
    数据库服务器,存储监控配置信息和监控数据;
    Web服务器:提供用户配置界面和监控界面;
    所述应用服务器和被监控主机之间通过代理服务器相连,所述代理服务器通过 Karaf构建代理服务器插件,所述应用服务器上的服务端模块通过ActiveMQ调用代 理服务器上的代理服务器插件,所述代理服务器插件通过ActiveMQ调用被监控主机 上的客户端插件获取监控数据。
    本发明使用的Karaf是一个基于OSGi的运行环境,OSGi(Open Service Gateway  Initiative)技术是面向Java的动态模型系统。OSGi服务平台向Java提供服务,这 些服务使Java成为软件集成和软件开发的首选环境。Java提供在多个平台支持产品 的可移植性。OSGi技术提供允许应用程序使用精炼、可重用和可协作的组件构建的 标准化原语。
    OSGi是一个标准,它致力于提供给Java项目一个模块化的底层环境,以及一系 列通用的服务(Service)。和普通的JVM程序相比,OSGi的程序天生拥有动态模块的 特点,不同的模块(OSGi里称之为Bundle)有着独立的生命周期,可以独立进行安装、 启动、停止、卸载的操作,模块间的依赖性管理也由OSGi提供。可以看出,OSGi 非常适合需要进行Plugin管理的项目,一个典型的成功案例就是Eclipse和它众多 的Plugin。OSGi标准还规范了一系列我们常间的操作,日志、配置文件、事件队列、 Web开发、JPA&JDBC等等,大部分部署OSGi标准的框架都提供了这些服务,这样一 方面规范了我们代码的结构,一方面节约了我们开发的时间。
    Karaf是Apache旗下的一个开源项目;Karaf同时也是一个基于OSGi的运行环 境,Karaf提供了一个轻量级的OSGi容器,可以用于部署各种组件,应用程序。Karaf 提供了很多特性用于帮助开发者和用户更加灵活的部署应用,例如:热部署,动态配 置,几种日志处理系统,本地系统集成,可编程扩展控制台,ssh远程访问,内置安 装认证机制等等。同时Karaf作为一款成熟而且优秀的OSGi运行环境以及容器已经 被诸多Apache项目作为基础容器,例如:Apache Geronimo,ApacheServiceMix,Fuse  ESB,由此可见Karaf在性能,功能和稳定性上都是个不错的选择。
    Apache Felix是Apache旗下的一个OSGi框架,项目本身非常成熟,已经被用 到了很多其他的项目中,例如Apache Servicemix。它本身提供的服务也是最全的, 几乎涵盖了全部的OSGi 4.2的标准。除此之外还提供了一些非标准的功能,例如 iPOJO。框架本身非常紧凑,只需要3个包加一个shell就可以运行了,无论是开发 还是Debug都非常简便。
    Apache Felix Karaf本身是Felix的一个子项目,但他其实是封装了Felix提 供更高一层的Runtime,默认情况下内置的大量实用工具。
    Karaf旨在结合Equinox或Felix两个框架出色的OSGi功能,并且保证其开箱 即用。比如说,它包含了一个可配置的日志系统(基于Log4J,但针对众多通用的日 志系统进行了包装)、通过SSH实现的远程访问、通过ConfigAdmin(源代码位于etc 目录中)的配置以及内建的JAAS支持。不仅如此,Karaf还安装了Pax URL的MVN 协议,这样就可以从Maven中央仓库(在必要的情况下会自动将其包装为bundle) 安装bundle了。
    此外,Karaf还提出了特性的概念,所谓特性就是bundle的集合,能以组的形 式安装到运行着的OSGi运行时当中。特性包含了对obr、jetty以及spring的支持, 做到了开箱即用。这样,如果需要安装多个bundle,但这些bundle之间并没有严格 的运行期依赖,那么这种支持就可以大大简化这种情况。
    ActiveMQ是Apache出品,最流行的,能力强劲的开源消息总线。ActiveMQ是 一个完全支持JMS1.1和J2EE 1.4规范的JMS Provider实现,尽管JMS规范出台已 经是很久的事情了,但是JMS在当今的J2EE应用中间仍然扮演着特殊的地位。主要 特点如下:(1)多种语言和协议编写客户端。语言:Java,C,C++,C#,Ruby,Perl, Python,PHP。应用协议:OpenWire,Stomp REST,WS Notification,XMPP,AMQP;(2) 完全支持JMS1.1和J2EE 1.4规范(持久化,XA消息,事务);(3)对Spring的支 持,ActiveMQ可以很容易内嵌到使用Spring的系统里面去,而且也支持Spring2.0 的特性;(4)通过了常见J2EE服务器(如Geronimo,JBoss 4,GlassFish,WebLogic) 的测试,其中通过JCA 1.5 resource adaptors的配置,可以让ActiveMQ可以自动的 部署到任何兼容J2EE 1.4商业服务器上;(5)支持多种传送协 议:in-VM,TCP,SSL,NIO,UDP,JGroups,JXTA;(6)支持通过JDBC和journal提供高 速的消息持久化;(7)从设计上保证了高性能的集群,客户端-服务器,点对点;(8) 支持Ajax;(9)支持与Axis的整合;(10)可以很容易得调用内嵌JMS provider, 进行测试。
    由上可见,本发明提供的自动化运维系统架构采用服务器+代理服务器+客户端 方式进行部署,具有支持分布式监控能力,支持代理的监控方式,不因局部问题影 响整个系统,具备强大的横向扩展能力,可快速进行部署推广。所述系统包括用户 界面、监控告警模块、运维管理模块、资产管理模块以及接入配置模块。而运维管 理模块包括自动化巡检、故障诊断、远程命令、文件下发/抓取、自动化重启、自动 化部署等自动化功能,可极大的提高运维人员的工作效率以及运维标准化水平。
    本发明提供的自动化运维平台包含用户界面、监控告警模块、运维管理模块、 资产管理模块以及接入配置模块,如图2所示。
    所述用户界面包含首页、监控告警处理界面、自动化运维管理功能界面、资产 管理界面、以及接入配置的的用户操作界面。
    所述监控告警模块提供存储、网络、主机、数据库、中间件、web拨测的监控与 告警。支持Agent、SNMP、IPMI、JDBC、JMX、SSH等监控方式,支持丰富的告警策 略以及短信、声音、邮件等方式告警通知方式。
    所述运维管理模块包括自动化巡检、故障诊断、远程命令、文件下发/抓取、自 动化重启、自动化部署等自动化功能。
    所述自动化巡检可提供对存储、网络、主机、数据库、中间件、应用软件的日 巡检、周巡检、月巡检、季度巡检报告。故障诊断功能可提供针对应用软件集群架 构级别的故障诊断。可通过远程命令功能对数据库、中间件、主机执行命令行、SHELL 以及SQL命令。
    所述文件下发/抓取模块功能提供对文件的操作能力,具备对文件进行下发、覆 盖、替换、部分替换、增量抓取、全量抓取等能力。
    所述自动化重启功能支持周期性、定时、手动方式对数据库、中间件、主机进 行重启,支持在重启前后的数据比对校验以及状态验证。
    所述自动化部署支持部署模板、部署方案的管理以及部署统计功能。采用向导 方式实现自动部署或者手动部署的功能。
    所述资产管理模块包含存储、网络、主机、数据库、中间件、应用的资产信息 管理,支持基线比对以及变更告警功能。
    所述接入配置功能采用向导方式提供Agent的监控接入,同时提供批量、单个 监控接入方式。
    图3为本发明基于Karaf与ActiveMQ的自动化运维系统实现流程示意图。
    请继续参见图3,本发明还提供一种基于Karaf与ActiveMQ的自动化运维系统 实现方法,其中,包括如下步骤:
    步骤S1:在应用服务器上通过Karaf构建监控告警模块、运维管理模块和接入 配置模块;
    步骤S2:在被监控主机上通过Karaf构建监控告警插件、自动化运维功能插件 以及基础服务功能插件;
    步骤S3:在Web服务器上提供监控告警处理界面、自动化运维管理功能界面以 及接入配置的用户操作界面;
    步骤S4:所述代理服务器通过ActiveMQ调用客户端插件获取监控数据,并定 时将所获取监控数据传送给应用服务器实现自动化运维及监控。
    本发明提供的基于Karaf与ActiveMQ的自动化运维系统,所述被监控主机上的 客户端插件包括监控告警插件、自动化运维功能插件以及基础服务功能插件。客户 端插件基于Karaf实现,同时开放了热更新的插件使客户端具备热部署的能力,使 客户端插件可以动态添加,如图4所示。监控告警插件包含Linux、Solaris、AIX、 HP-UX、Windows、Oracle、DB2、Informix、SQL Server、Mysql、Weblogic、Websphere、 IIS、Tomcat、Apache、VMWare、Hyper V、HDS存储、SUN存储、IBM存储20大监控 插件,涉及操作系统、中间件、数据库、存储、云资源等。
    自动化运维功能插件包含:远程命令插件、文件下发插件、文件抓取插件、目 录抓取插件、配置变更插件等。
    基础服务功能插件包含:消息状态插件、容器管理插件、热部署插件等。
    通过上述插件的组合可以实现IT基础架构全方位监控告警、可以实现日常运维 工作的自动化,如自动化巡检、文件下发、文件抓取、执行远程命令、自动化重启、 自动化部署、自动化防御、故障诊断功能、数据库优化辅助功能等。
    下面以文件下发以及抓取为例说明系统实现自动化运维共的工作方法、原理以 及流程。文件下发流程相对简单,而文件抓取分为文件抓取服务端流程、代理段流 程以及客户端流程三个部分。
    图5为本发明自动化运维系统的文件下发流程示意图。
    请继续参见图5,本发明的自动化运维系统的文件下发过程如下:
    S11:在Web服务器上的用户操作界面将需要下发的文件发送到应用服务器端 的ActiveMQ中;
    S12:所述应用服务器端的文件下发插件监听到有文件需要下发,将文件下发 到代理服务器的ActiveMQ中;
    S13:所述被监控主机上的客户端文件下发插件探测到代理服务器的ActiveMQ 的对应队列有自身的消息,则接收该消息;
    S14:在接收的各个阶段都会将相应的消息通过基础插件消息状态插件发送回 应用服务器端的ActiveMQ,并写入到数据库服务器;
    S15:Web服务器上的用户操作界面读取消息状态,反馈下发结果给用户。
    本发明的自动化运维系统实现方法,所述文件抓取过程包括文件抓取服务端流 程、代理段流程以及客户端流程三个部分;
    所述文件抓取服务端流程如图6所示,包括如下过程:
    S21:所述应用服务器端文件抓取插件监听服务器端MQ消息;
    S22:监听到消息后反馈“准备下载文件”状态到数据库服务器,并在Web用 户操作界面显示下载状态;
    S23:开始下载文件,接收文件流,将“正在接收文件”状态反馈到数据库服 务器;
    S24:接收完成,将“接收完成”状态反馈到数据库服务器;
    S25:所述应用服务器端将接收的临时文件删除。
    所述文件抓取代理端流程如图7所示,包括如下过程:
    S31:所述代理服务器端文件抓取插件监听服务器端MQ消息;
    S32:监听到消息后反馈“准备下载文件”状态到数据库服务器,并在Web用 户操作界面显示下载状态;
    S33:开始下载文件,接收文件流,将“正在接收文件”状态反馈到数据库服 务器;
    S34:接收完成,为防止网络流量过大,将文件保存到二级代理,将“接收完 成”状态反馈到数据库服务器;
    S35:所述代理服务器端将接收的临时文件删除;
    S36:如果代理端是省公司(可设置)的,则将文件上传到服务器端。
    所述文件抓取客户端流程如图8所示,包括如下过程:
    S41:所述Web用户操作界面将文件抓取的参数通过MQ转发到代理服务器的MQ 中;
    S42:所述被监控主机上的客户端插件侦听到代理服务器的队列上有文件抓取 的任务,接收消息;
    S43:判断文件是否存储,不存在则停止采集;
    S44:如果文件存在,则新建、删除或者修改任务调度;
    S45:如果是抓取配置文件,判断配置文件是否有变化,没有变化则不抓取, 变化则抓取配置文件;如果是抓取日志文件则将日志文件回传。
    虽然本发明已以较佳实施例揭示如上,然其并非用以限定本发明,任何本领域 技术人员,在不脱离本发明的精神和范围内,当可作些许的修改和完善,因此本发 明的保护范围当以权利要求书所界定的为准。

    关 键  词:
    基于 KARAF ACTIVEMQ 自动化 维系 及其 实现 方法
      专利查询网所有文档均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    0条评论

    还可以输入200字符

    暂无评论,赶快抢占沙发吧。

    关于本文
    本文标题:基于KARAF与ACTIVEMQ的自动化运维系统及其实现方法.pdf
    链接地址:https://www.zhuanlichaxun.net/p-1747099.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
    经营许可证编号:粤ICP备2021068784号-1