CN103942063B - 一种针对Java Web应用的集中配置和远程部署方法 - Google Patents

一种针对Java Web应用的集中配置和远程部署方法 Download PDF

Info

Publication number
CN103942063B
CN103942063B CN201310548142.7A CN201310548142A CN103942063B CN 103942063 B CN103942063 B CN 103942063B CN 201310548142 A CN201310548142 A CN 201310548142A CN 103942063 B CN103942063 B CN 103942063B
Authority
CN
China
Prior art keywords
middleware
application
server
agent
deployment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201310548142.7A
Other languages
English (en)
Other versions
CN103942063A (zh
Inventor
孟庆强
罗玉盘
吴海超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
State Grid Corp of China SGCC
NARI Group Corp
Nari Information and Communication Technology Co
Original Assignee
State Grid Corp of China SGCC
Nari Information and Communication Technology Co
Nanjing NARI Group Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by State Grid Corp of China SGCC, Nari Information and Communication Technology Co, Nanjing NARI Group Corp filed Critical State Grid Corp of China SGCC
Priority to CN201310548142.7A priority Critical patent/CN103942063B/zh
Publication of CN103942063A publication Critical patent/CN103942063A/zh
Application granted granted Critical
Publication of CN103942063B publication Critical patent/CN103942063B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明公开了一种针对Java Web应用的集中配置和远程部署方法:以独立运行的管理服务对服务器、Java应用中间件、应用系统进行注册、配置、部署、控制,接收、存储服务器、中间件、应用系统运行数据,并对数据进行分析;通过分布式的Agent程序对本机Java应用中间件进行配置、控制,同时采集服务器、Java应用中间件的运行数据;采用插件技术收集Java应用中间件运行数据,包括内存、线程及堆栈、类加载等,由Agent以异步方式采集和汇总至管理服务。本发明通过Agent提供集群环境中的运行数据采集和应用部署、控制能力,以中间件扩展插件方式提供与应用系统无关的监视能力,有效地解决了大规模集群环境中服务器、应用中间件、应用系统的运行数据的无侵入采集问题。

Description

一种针对Java Web应用的集中配置和远程部署方法
技术领域
本发明涉及一种针对Java Web应用的集中配置和远程部署方法,面向信息系统运维管理,属于信息技术领域。
背景技术
由于Java语言具有“平台无关性”、“Write Once,Run Anywhere”等突出优势,在企业级应用系统中,基于Java的Web应用系统是主要的系统建设模式。基于Java的Web应用系统需要部署在Java应用容器(也称Java应用中间件)中,由应用容器管理Web应用系统运行时的资源分配、访问控制。大型的企业应用系统,通常由多个应用容器组成集群,以提供错误恢复、会话保持、负载均衡、集群管理、运行监视等高级功能,确保应用系统的高可用性和性能。
在集群环境中,应用系统的部署可以依赖于应用容器提供的集群部署功能。目前只有Weblogic、Websphere等商用应用容器提供集群部署管理功能,Tomcat、Jetty等开源应用容器则不提供相应的集群管理功能。在实际的应用系统部署时通常采用应用容器对等部署的集群模式,在集群中没有专门的集群管理服务节点。此时应用系统的部署和升级一般由程序集拷贝、解压、远程登陆修改配置文件或自动化脚本方式完成,系统部署、升级的效率和质量都比较低,人工操作出错的可能性大。
发明内容
有鉴于此,本发明的目的在于实现一种针对Java Web应用的集中配置和远程部署方法,有效解决大规模集群中的应用系统配置、部署、控制和运行监视等问题,减少远程人工操作环节,提高配置和部署效率,降低操作错误率。
为实现上述目的,本发明提供了一种针对Java Web应用的集中配置和远程部署方法,其特征在于,其包括以下步骤:
(1)采用独立运行的管理服务对服务器、中间件、应用进行注册,对应用的系统配置文件、配置项进行集中管理,所述应用为Java Web应用;
(2)由管理服务下发对中间件的控制指令,控制中间件的启动和停止;
(3)由管理服务接收、存储、分析服务器和应用的系统运行数据;
(4)在目标服务器中安装部署Agent程序,监听指定端口接收管理服务器下发的管理指令;
(5)Agent程序接收中间件控制指令,完成中间件启动、停止操作,完成应用的部署和配置工作,并对当前已部署的程序集进行本地备份,支持从本地备份中恢复;
(6)Agent程序在中间件中部署扩展插件,在中间件启动后定时采集运行数据并以文件形式保存;
(7)Agent程序采集当前服务器操作系统运行数据,定时扫描指定的中间件目录进行读取中间件运行数据文件,将采集到的运行数据异步发送到管理服务。
优选的,所述服务器指物理服务器,所述管理服务记录所述服务器的IP地址或机器名、Agent监听端口。
优选的,所述中间件为Java应用容器,是Java Web应用的宿主环境。
优选的,所述服务器中定义多个中间件,多个所述应用部署在同一个中间件中,一个所述应用包括应用程序集和多个配置文件。
优选的,上述步骤(1)中,在配置中间件时,首先声明中间件类型、安装位置和服务端口;配置所述应用时,需要以ZIP压缩包形式上传程序集,由管理服务统一存储。
优选的,上述步骤(1)中,所述管理服务支持xml、属性文件、定制文件多种配置方式;所述应用关联Xml或Properties格式的配置文件,所述应用包括对配置文件的编辑和校验的功能,所述配置文件中包括其在所述应用中的存储位置。
优选的,所述步骤(4)中,所述Agent程序是在服务器中预先安装好的,所述Agent程序在中间件中自动安装相应的监听插件,所述监听插件的监听端口可配置,所述监听插件定时扫描插件输出的数据文件,读取数据后发送至管理服务,所述Agent程序的采用HTTP/HTTPS通信协议。
优选的,所述步骤(5)中,所述中间件是在服务器中预先安装好的, 所述Agent程序依据中间件类型修改相关的配置文件,注册应用系统;所述Agent程序依据中间件类型在中间件中注册扩展插件。
优选的,其还包括以下步骤:所述Agent程序从所述管理服务下载应用程序集压缩包并解压至中间件的部署目录,修改中间件配置文件注册应用,在部署前自动备份、压缩已部署的应用程序。
优选的,所述中间件启动后插件自动运行,将虚拟机信息定期写入中间件安装目录中的数据文件。
本发明通过独立运行、分布式部署的Agent提供集群环境中的应用部署、控制和运行数据采集能力,以中间件扩展插件方式提供与应用系统无关的监视能力,有效地解决了大规模集群环境中服务器、应用中间件、应用系统的运行数据的无侵入采集问题,有效地降低了中间件管理和应用系统配置、部署的难度,提高信息系统运维管理的效率。
附图说明
下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1是本发明的流程图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,并使本发明的上述目的、特征和优点能够更加明显易懂,下面结合实施例及实施例附图对本发明作进一步详细的说明。
如图1所示,本发明的一种针对Java Web应用的集中配置和远程部署方法,其步骤如下:
1、配置、启动Agent程序。Agent的监听端口定义在配置文件中,如无定义使用默认端口。Agent启动过程中首先以嵌入方式初始化Jetty引擎监听指定端口,注册指令接收处理Handler。
2、在管理服务中配置服务器、中间件、应用系统。
2.1注册服务器,包括服务器名称、IP、管理端口(Agent的监听端口中)。服务器注册完成后,将初始化数据发送给对应的Agent,完成Agent程序的参数初始化。
2.2注册中间件。在指定的服务器中注册受管的中间件对象,包括中间件类型、名称、安装目录、端口等信息。中间件注册完成后,向Agent发送中间件校验和配置指令,检查中间件路径和类型是否正确,检查通过后Agent从管理服务器下载扩展插件并安装部署到中间件中。
2.3注册应用系统。应用系统主要属性包括名称、部署上下文、程序集文件路径。应用系统注册后,上传对应的程序集文件(ZIP),记录应用系统与程序集文件的关联(1对1)。
2.4应用系统配置。应用系统配置由所属应用、文件位置、文件类型、文件内容组成,保存在数据库中。对于指定的应用系统,可以创建、并联多个不同类型的配置文件。Xml、Properties格式的配置文件,有格式校验功能,检查文件内容格式的合法性。其他格式的配置文件不提供校验功能。
2.5应用配置。多个应用可组成一个部署单元以便于批量部署管理,在部署单元中的应用应具有不同的名称和访问路径。管理服务向Agent发送部署指令,指令中包括中间件信息、程序集下载路径、配置文件列表等。Agent接收指令后,首先停止正在运行的中间件实例,备份已部署的应用程序,将备份文件保存在备份目录中。其次删除当前已部署的应用程序(目录),然后从管理服务下载最新的程序集文件并解压到部署目录,下载配置文件并按配置文件定义存放到程序集目录中相应位置。
3、中间件启动过程中,扩展插件加载并运行。插件运行时,向中间件安装目录中的预定目录输出JVM运行时信息。运行时信息分成两类:静态信息,只在插件初始化时输出一次,包括JVM版本、厂家、当前进程号、类路径、工作目录等;动态信息,周期性获取最新动态数据并写入文件,包括进程列表、进程堆栈、类加载数量、堆大小等。
4、Agent监视插件输出目录,周期性检查文件变更,将最新的运行数据发送到管理服务。管理服务接收并存储运行数据。
本发明通过独立运行、分布式部署的Agent提供集群环境中的应用部署、控制和运行数据采集能力,以中间件扩展插件方式提供与应用系统无关的监视能力,有效地解决了大规模集群环境中服务器、应用中间件、应用系统的运行数据的无侵入采集问题,有效地降低了中间件管理和应用系统配置、部署的难度,提高信息系统运维管理的效率。
以上所述,仅为本发明的具体实施方式。本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求所界定的保护范围为准。

Claims (10)

1.一种针对Java Web应用的集中配置和远程部署方法,其特征在于,其包括以下步骤:
(1)采用独立运行的管理服务对服务器、中间件、应用进行注册,对应用的系统配置文件、配置项进行集中管理,所述应用为Java Web应用;
(2)由管理服务下发对中间件的控制指令,控制中间件的启动和停止;
(3)由管理服务接收、存储、分析服务器和应用的系统运行数据;
(4)在目标服务器中安装部署Agent程序,监听指定端口接收和管理服务器下发的管理指令;
(5)Agent程序接收中间件控制指令,完成中间件启动、停止操作,完成应用的部署和配置工作,并对当前已部署的程序集进行本地备份,支持从本地备份中恢复;
(6)Agent程序在中间件中部署扩展插件,在中间件启动后定时采集运行数据并以文件形式保存;
(7)Agent程序采集当前服务器操作系统运行数据,定时扫描指定的中间件目录进行读取中间件运行数据文件,将采集到的运行数据异步发送到管理服务。
2.根据权利要求1所述的方法,其特征在于,所述服务器指物理服务器,所述管理服务记录所述服务器的IP地址或机器名、Agent监听端口。
3.根据权利要求2所述的方法,其特征在于,所述中间件为Java应用容器,是Java Web应用的宿主环境。
4.根据权利要求3所述的方法,其特征在于,所述服务器中定义多个中间件,多个所述应用部署在同一个中间件中,一个所述应用包括应用程序集和多个系统配置文件。
5.根据权利要求4所述的方法,其特征在于,上述步骤(1)中,在配置中间件时,首先声明中间件类型、安装位置和服务端口;配置所述应用时,需要以ZIP压缩包形式上传程序集,由管理服务统一存储。
6.根据权利要求5所述的方法,其特征在于,上述步骤(1)中,所述管理服务支持xml、属性文件、定制文件多种配置方式;所述应用关联Xml或Properties格式的所述系统配置文件,所述应用包括对所述系统配置文件的编辑和校验的功能,所述系统配置文件中包括其在所述应用中的存储位置。
7.根据权利要求6所述的方法,其特征在于,所述步骤(4)中,所述Agent程序是在服务器中预先安装好的,所述Agent程序在中间件中自动安装相应的监听插件,所述监听插件的监听端口可配置,所述监听插件定时扫描插件输出的数据文件,读取数据后发送至管理服务,所述Agent程序的采用HTTP/HTTPS通信协议。
8.根据权利要求7所述的方法,其特征在于,所述步骤(5)中,所述中间件是在服务器中预先安装好的, 所述Agent程序依据中间件类型修改相关的所述系统配置文件,注册应用系统;所述Agent程序依据中间件类型在中间件中注册扩展插件。
9.根据权利要求8所述的方法,其特征在于,其还包括以下步骤:所述Agent程序从所述管理服务下载应用程序集压缩包并解压至中间件的部署目录,修改中间件的所述系统配置文件注册应用,在部署前自动备份、压缩已部署的应用程序。
10.根据权利要求9所述的方法,其特征在于,所述中间件启动后插件自动运行,将虚拟机信息定期写入中间件安装目录中的数据文件。
CN201310548142.7A 2013-11-08 2013-11-08 一种针对Java Web应用的集中配置和远程部署方法 Active CN103942063B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310548142.7A CN103942063B (zh) 2013-11-08 2013-11-08 一种针对Java Web应用的集中配置和远程部署方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310548142.7A CN103942063B (zh) 2013-11-08 2013-11-08 一种针对Java Web应用的集中配置和远程部署方法

Publications (2)

Publication Number Publication Date
CN103942063A CN103942063A (zh) 2014-07-23
CN103942063B true CN103942063B (zh) 2017-04-26

Family

ID=51189740

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310548142.7A Active CN103942063B (zh) 2013-11-08 2013-11-08 一种针对Java Web应用的集中配置和远程部署方法

Country Status (1)

Country Link
CN (1) CN103942063B (zh)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105487843B (zh) * 2014-09-15 2019-07-02 上海天脉聚源文化传媒有限公司 一种WebApp开发部署方法及系统
CN105227379A (zh) * 2015-10-29 2016-01-06 国家电网公司 一种针对java web 应用的集中监控和预警方法
CN105487891A (zh) * 2015-11-26 2016-04-13 航天恒星科技有限公司 一种分布式集群的部署方法及系统
CN105487874A (zh) * 2015-12-11 2016-04-13 电子科技大学 移动终端中HTML5 web应用与原生应用统一管理方法
CN105653329A (zh) * 2015-12-30 2016-06-08 国网信息通信产业集团有限公司 一种应用管理的方法、装置及系统
CN106028150B (zh) * 2016-07-07 2019-02-15 四川长虹电器股份有限公司 用于Linux系统的电视的多应用切换管理方法
CN106385456A (zh) * 2016-09-26 2017-02-08 郑州云海信息技术有限公司 一种K‑UX操作系统部署tuxedo中间件的方法及装置
CN106843964A (zh) * 2017-01-20 2017-06-13 郑州云海信息技术有限公司 K‑ux3.0操作系统上自动搭建并检测c++编程环境的装置及方法
CN106843963A (zh) * 2017-01-20 2017-06-13 郑州云海信息技术有限公司 K‑ux操作系统上自动部署java应用程序的装置及方法
CN107133164A (zh) * 2017-03-14 2017-09-05 深圳航天科技创新研究院 实现异步虚拟通信设备组件的方法及系统
CN107133166A (zh) * 2017-03-24 2017-09-05 国家电网公司 一种Android测试系统的远程配置和管理方法
CN107463418B (zh) * 2017-09-12 2020-11-13 北京宝兰德软件股份有限公司 一种服务器中间件的配置文件生成方法及装置
CN107741852B (zh) * 2017-10-16 2020-09-29 中国电子科技集团公司第二十八研究所 一种基于集群软件的服务部署方法
CN107797901A (zh) * 2017-10-25 2018-03-13 四川长虹电器股份有限公司 一种堆栈分析以及邮件实时报警的实现方法
CN107844579B (zh) * 2017-11-10 2021-10-26 顺丰科技有限公司 优化用于分布式数据库中间件取数的方法、系统及设备
CN108540545B (zh) * 2018-03-27 2020-05-08 武汉理工大学 基于多Agent的云计算环境中空间数据双向双重异步传输方法
CN110377478B (zh) * 2018-04-20 2021-05-18 北京升鑫网络科技有限公司 一种基于Agent的主机资产管理系统
CN108845808B (zh) * 2018-06-22 2020-09-29 平安科技(深圳)有限公司 中间件安装方法、装置、计算机设备及存储介质
CN111082958B (zh) * 2018-10-22 2022-08-02 千寻位置网络有限公司 大量基准站动环的监控方法及装置、服务器、监控系统
US11126468B2 (en) 2019-07-19 2021-09-21 Red Hat, Inc. Agent driven cluster gating for service management
CN110753119A (zh) * 2019-10-25 2020-02-04 北京浪潮数据技术有限公司 一种基于K8s集群的应用包部署系统
CN112948013B (zh) * 2019-12-24 2023-10-10 深圳市明源云科技有限公司 一种应用探针配置方法、装置、终端设备及存储介质
CN113032099B (zh) * 2021-03-26 2023-10-03 阿里巴巴新加坡控股有限公司 云计算节点、文件管理方法及装置
CN114124695A (zh) * 2021-11-23 2022-03-01 上海帆一尚行科技有限公司 一种数据采集方法、装置和电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101493826A (zh) * 2008-12-23 2009-07-29 中兴通讯股份有限公司 基于web应用的数据库系统及其数据管理方法
CN101567816A (zh) * 2009-05-27 2009-10-28 北京中企开源信息技术有限公司 一种监控服务器及监控方法
CN103077034A (zh) * 2013-01-09 2013-05-01 上海交通大学 混合虚拟化平台java应用迁移方法与系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9063765B2 (en) * 2008-04-28 2015-06-23 Kaazing Corporation System and methods for distributed execution of computer executable programs utilizing asymmetric translation

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101493826A (zh) * 2008-12-23 2009-07-29 中兴通讯股份有限公司 基于web应用的数据库系统及其数据管理方法
CN101567816A (zh) * 2009-05-27 2009-10-28 北京中企开源信息技术有限公司 一种监控服务器及监控方法
CN103077034A (zh) * 2013-01-09 2013-05-01 上海交通大学 混合虚拟化平台java应用迁移方法与系统

Also Published As

Publication number Publication date
CN103942063A (zh) 2014-07-23

Similar Documents

Publication Publication Date Title
CN103942063B (zh) 一种针对Java Web应用的集中配置和远程部署方法
CN108958927B (zh) 容器应用的部署方法、装置、计算机设备和存储介质
CN106610836B (zh) 一种微服务运行管理工具
CN109783117B (zh) 一种无盘系统的镜像文件制作及启动方法
CN105653329A (zh) 一种应用管理的方法、装置及系统
CN101571809B (zh) 一种插件注册的实现方法及其装置
US20070240134A1 (en) Software packaging model supporting multiple entity types
US7496739B1 (en) System and related methods for automatically configuring a computing system
US20030055809A1 (en) Methods, systems, and articles of manufacture for efficient log record access
CN104820701A (zh) 数据记录和同步方法及系统
CN101393524A (zh) 固件更新方法及系统
CN109298871B (zh) 一种电网智能调度系统软件版本监测部署方法
CN103259936A (zh) 移动终端操作系统升级方法及其装置
CN103455346A (zh) 应用程序部署方法、部署主控机、部署客户端和集群
CN105227379A (zh) 一种针对java web 应用的集中监控和预警方法
CN112486938A (zh) 一种应用于kubernetes集群的日志收集方法以及系统
WO2017198156A1 (zh) 业务部署方法、装置和系统
CN101616430B (zh) 一种管理家庭网关软件版本的方法及家庭网关
CN117056115B (zh) 应用程序的修复方法和装置、存储介质及电子设备
CN101222351A (zh) 性能数据文件的采集方法及装置
US8924789B2 (en) System and method for providing virtual machine diagnostic information using a flight recorder functionality
CN108388440A (zh) 一种web应用系统自动更新的方法
CN102739423B (zh) 一种采集性能数据的方法、设备和网管系统
EP2107460A1 (en) Method for improving native library and native application compatibily
CN115048187A (zh) 一种基于Operator的pvc文件导入方法、设备及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder

Address after: 100761 West Chang'an Avenue, Beijing, No. 86, No.

Co-patentee after: NARI Group Corp.

Patentee after: State Grid Corporation of China

Co-patentee after: NARI INFORMATION AND COMMUNICATION TECHNOLOGY Co.

Address before: 100761 West Chang'an Avenue, Beijing, No. 86, No.

Co-patentee before: NARI Group CORPORATION STATE GRID ELECTRIC POWER INSTITUTE

Patentee before: State Grid Corporation of China

Co-patentee before: NARI INFORMATION AND COMMUNICATION TECHNOLOGY Co.

CP01 Change in the name or title of a patent holder