CN115473799A - 一种自动部署虚拟机微服务应用的系统和方法 - Google Patents
一种自动部署虚拟机微服务应用的系统和方法 Download PDFInfo
- Publication number
- CN115473799A CN115473799A CN202210737462.6A CN202210737462A CN115473799A CN 115473799 A CN115473799 A CN 115473799A CN 202210737462 A CN202210737462 A CN 202210737462A CN 115473799 A CN115473799 A CN 115473799A
- Authority
- CN
- China
- Prior art keywords
- control module
- ecs
- module
- deployment control
- application
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0876—Aspects of the degree of configuration automation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Automation & Control Theory (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供一种自动部署虚拟机微服务应用的系统,包括:Deployment部署控制模块,用于通过前端页面获取应用jar包文件,将获取的应用jar包文件上传至OSS对象存储模块,同时向ecs‑agent代理模块发送用户部署应用的请求,并将应用jar包文件的OSS地址传送至ecs‑agent代理模块;OSS对象存储模块,用于接收和存储从Deployment部署控制模块上传的jar包文件,将jar包文件的OSS地址发送至Deployment部署控制模块;ecs‑agent代理模块,用于接收从Deployment部署控制模块传送的OSS地址,根据接收的OSS地址从OSS对象存储模块中获取jar包文件,将获取的jar包文件部署在虚拟机,运行微服务应用ecs‑app。本发明自动部署虚拟机微服务应用的系统和方法,具有安全、快捷、易于管理的特点,适用于企业级用户在虚拟机上部署微服务的场景需求。
Description
技术领域
本发明涉及虚拟机应用部署管理技术领域,尤其涉及一种自动部署虚拟机微服务应用的系统和方法。
背景技术
虚拟机比较早就出现在软件行业中,有了虚拟机ECS后,用户可以简单方便地在虚拟机上部署各种云服务。而ECS虚拟机也可以快速从云厂商处购买得到,从而用户可以在ECS 虚拟机上部署各种应用,从平台型的到数据库类型的,再到用户微服务等。
在实际的生产实践中,在应用比较少时,用户可以轻松应对,直接进行对应用进行部署即可,当出现问题时,再上ECS去查看应用状态,进行应用的生命周期管理,以及进行启停、扩缩容、查日志等操作。但当用户的应用变多之后,这种操作就变得庞大且容易出错。首先,这些生产的虚拟机ECS机器,全部暴露给操作人员,即便是专业的运维技术人员也会出现误操作或漏操作;其次,对于比较敏感的生产环境而言,这种变更操作,需要操作人员具有一定的权限,对于运维人员来说,要进行操作权限的审计和限制,又会形成巨大的工作量;再者,运维技术人员素质良莠不齐,市面上经常爆出某公司技术人员“删库跑路”的操作,这种ECS权限的下发,生产化的应用和数据等敏感内容,全部透明的暴露在技术人员面前,同样也会引来安全问题。
对于以上的问题,开发出一款自动部署虚拟机微服务应用的系统,使企业级用户在虚拟机上部署微服务,仅需要开发产出的jar包,即可被部署系统在目的虚拟机上进行微服务的自动化部署,提高安全性、便利性和正确率,成为亟待解决的技术问题。
发明内容
针对现有技术存在的缺陷和不足,本发明旨在提供一种自动部署虚拟机微服务应用的系统和方法,提高部署效率和正确率,并且兼顾安全性。
一方面,本发明提供一种自动部署虚拟机微服务应用的系统,包括:
Deployment部署控制模块,用于通过前端页面获取应用jar包文件,将获取的应用jar包文件上传至OSS对象存储模块,同时向ecs-agent代理模块发送用户部署应用的请求,并将应用jar包文件的OSS地址传送至ecs-agent代理模块;
OSS对象存储模块,用于接收和存储从Deployment部署控制模块上传的jar包文件,将jar包文件的OSS地址发送至Deployment部署控制模块;
ecs-agent代理模块,用于接收从Deployment部署控制模块传送的OSS地址,根据接收的OSS地址从OSS对象存储模块中获取jar包文件,将获取的jar包文件部署在虚拟机,运行微服务应用ecs-app。
进一步地,本发明的自动部署虚拟机微服务应用的系统,Deployment部署控制模块与 ecs-agent代理模块之间采用tcp连接。
进一步地,本发明的自动部署虚拟机微服务应用的系统,ecs-agent代理模块与Deployment 部署控制模块之间的连接由ecs-agent代理模块发起。
进一步地,本发明的自动部署虚拟机微服务应用的系统,ecs-agent代理模块与Deployment 部署控制模块之间的连接建立后,ecs-agent代理模块收到Deployment部署控制模块发来的用户部署应用的请求,向Deployment部署控制模块发送应答。
进一步地,本发明的自动部署虚拟机微服务应用的系统中,OSS对象存储模块还可以包含在Deployment部署控制模块内。
另一方面,本发明提供一种自动部署虚拟机微服务应用的方法,包括:
步骤S1:用户通过前端页面将应用jar包文件上传至Deployment部署控制模块;
步骤S2:通过Deployment部署控制模块将获取的应用jar包文件上传至OSS对象存储模块进行存储;
步骤S3:通过OSS对象存储模块接收和存储从Deployment部署控制模块上传的jar包文件,将jar包文件的OSS地址发送至Deployment部署控制模块;
步骤S4:通过Deployment部署控制模块向ecs-agent代理模块发送用户部署应用的请求,并将应用的OSS地址传送至ecs-agent代理模块;
步骤S5:通过ecs-agent代理模块接收从Deployment部署控制模块传送的OSS地址,根据接收的OSS地址从OSS对象存储模块中获取jar包文件,将获取的jar包文件部署在虚拟机,运行微服务应用ecs-app。
本发明还涉及自动部署虚拟机微服务应用的方法在虚拟机应用部署管理中的应用。
最后,本发明还提供一种终端设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现所述方法的步骤。
本发明自动部署虚拟机微服务应用的方法和系统,通过Deployment部署控制模块和 ecs-agent代理模块,自动化地将用户的jar包成功运行,其间用户仅执行了上传jar包的操作,在无需进入虚拟机ECS操作任何资源的情况下,即可完成微服务应用ecs-app的正确部署,具有安全、快捷、易于管理的特点,适用于企业级用户在虚拟机上部署微服务的场景需求。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本发明示例性第一实施例一种自动部署虚拟机微服务应用的系统的架构图。
图2为本发明示例性第二实施例一种自动部署虚拟机微服务应用的方法的流程图。
具体实施方式
下面结合附图对本发明实施例进行详细描述。
需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合;并且,基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
需要说明的是,下文描述在所附权利要求书的范围内的实施例的各种方面。应显而易见,本文中所描述的方面可体现于广泛多种形式中,且本文中所描述的任何特定结构及/或功能仅为说明性的。基于本公开,所属领域的技术人员应了解,本文中所描述的一个方面可与任何其它方面独立地实施,且可以各种方式组合这些方面中的两者或两者以上。举例来说,可使用本文中所阐述的任何数目个方面来实施设备及/或实践方法。另外,可使用除了本文中所阐述的方面中的一或多者之外的其它结构及/或功能性实施此设备及/或实践此方法。
本发明的核心在于,在租户侧VPC网络中,每台虚拟机ECS都内置一个ecs-agent代理模块,通过ecs-agent代理模块,Deployment部署控制模块可以方便地对微服务应用ecs-app 的生命周期管理进行控制。图1为根据本发明示例性第一实施例的一种自动部署虚拟机微服务应用的系统的架构图,如图1所示,本实施例所述系统,包括:
Deployment部署控制模块,用于通过前端页面获取应用jar包文件,将获取的应用jar包文件上传至OSS对象存储模块,同时向ecs-agent代理模块发送用户部署应用的请求,并将应用jar包文件的OSS地址传送至ecs-agent代理模块;
OSS对象存储模块,用于接收和存储从Deployment部署控制模块上传的jar包文件,将 jar包文件的OSS地址发送至Deployment部署控制模块;
ecs-agent代理模块,用于接收从Deployment部署控制模块传送的OSS地址,根据接收的OSS地址从OSS对象存储模块中获取jar包文件,将获取的jar包文件部署在虚拟机,运行微服务应用ecs-app。
本实施例自动部署虚拟机微服务应用的系统中,Deployment部署控制模块与ecs-agent 代理模块之间采用tcp连接。ecs-agent代理模块与Deployment部署控制模块之间的连接由 ecs-agent代理模块发起。ecs-agent代理模块与Deployment部署控制模块之间的连接建立后, ecs-agent代理模块收到Deployment部署控制模块发来的用户部署应用的请求,向Deployment 部署控制模块发送应答。
具体的,在实际应用时,本实施例中Deployment部署控制模块向ecs-agent代理模块发送请求时,采用的指令类型为action;采用instanceId表示ecs实例id,用以标识客户端id;采用params表示指令相关的参数。本实施例系统中,eployment部署控制模块与ecs-agent代理模块之间采用tcp连接方式,支持运行需要的各种控制命令。
本实施例自动部署虚拟机微服务应用的系统中,OSS对象存储模块还可以包含在Deployment部署控制模块内。
图2为根据本发明示例性第二实施例的一种自动部署虚拟机微服务应用的方法的流程图,如图2所示,本实施例的方法,包括:
步骤S1:用户通过前端页面将应用jar包文件上传至Deployment部署控制模块;
步骤S2:通过Deployment部署控制模块将获取的应用jar包文件上传至OSS对象存储模块进行存储;
步骤S3:通过OSS对象存储模块接收和存储从Deployment部署控制模块上传的jar包文件,将jar包文件的OSS地址发送至Deployment部署控制模块;
步骤S4:通过Deployment部署控制模块向ecs-agent代理模块发送用户部署应用的请求,并将应用的OSS地址传送至ecs-agent代理模块;
步骤S5:通过ecs-agent代理模块接收从Deployment部署控制模块传送的OSS地址,根据接收的OSS地址从OSS对象存储模块中获取jar包文件,将获取的jar包文件部署在虚拟机,运行微服务应用ecs-app。
本发明涉及上述示例性第一实施例和示例性第二实施例在虚拟机应用部署管理中的应用。
本实施例的自动部署虚拟机微服务应用的方法,步骤S4中,通过Deployment部署控制模块向ecs-agent代理模块发送用户部署应用的请求之前,由ecs-agent代理模块发起ecs-agent 代理模块与Deployment部署控制模块之间的连接。ecs-agent代理模块与Deployment部署控制模块之间的连接建立后,ecs-agent代理模块收到Deployment部署控制模块发来的用户部署应用的请求,ecs-agent代理模块向Deployment部署控制模块发送应答。
本发明还提供一种终端设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现所述方法的步骤。
该终端设备具有上述动部署虚拟机微服务应用的系统和方法相应的技术效果。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种自动部署虚拟机微服务应用的系统,其特征在于,所述系统,包括:
Deployment部署控制模块,用于通过前端页面获取应用jar包文件,将获取的应用jar包文件上传至OSS对象存储模块,同时向ecs-agent代理模块发送用户部署应用的请求,并将应用jar包文件的OSS地址传送至ecs-agent代理模块;
OSS对象存储模块,用于接收和存储从Deployment部署控制模块上传的jar包文件,将jar包文件的OSS地址发送至Deployment部署控制模块;
ecs-agent代理模块,用于接收从Deployment部署控制模块传送的OSS地址,根据接收的OSS地址从OSS对象存储模块中获取jar包文件,将获取的jar包文件部署在虚拟机,运行微服务应用ecs-app。
2.根据权利要求1所述的自动部署虚拟机微服务应用的系统,其特征在于,Deployment部署控制模块与ecs-agent代理模块之间采用tcp连接。
3.根据权利要求1所述的自动部署虚拟机微服务应用的系统,其特征在于,ecs-agent代理模块与Deployment部署控制模块之间的连接由ecs-agent代理模块发起。
4.根据权利要求1所述的自动部署虚拟机微服务应用的系统,其特征在于,ecs-agent代理模块与Deployment部署控制模块之间的连接建立后,ecs-agent代理模块收到Deployment部署控制模块发来的用户部署应用的请求,向Deployment部署控制模块发送应答。
5.根据权利要求1所述的自动部署虚拟机微服务应用的系统,其特征在于,OSS对象存储模块还可以包含在Deployment部署控制模块内。
6.一种基于权利要求1所述系统的自动部署虚拟机微服务应用的方法,其特征在于,所述方法,包括:
步骤S1:用户通过前端页面将应用jar包文件上传至Deployment部署控制模块;
步骤S2:通过Deployment部署控制模块将获取的应用jar包文件上传至OSS对象存储模块进行存储;
步骤S3:通过OSS对象存储模块接收和存储从Deployment部署控制模块上传的jar包文件,将jar包文件的OSS地址发送至Deployment部署控制模块;
步骤S4:通过Deployment部署控制模块向ecs-agent代理模块发送用户部署应用的请求,并将应用的OSS地址传送至ecs-agent代理模块;
步骤S5:通过ecs-agent代理模块接收从Deployment部署控制模块传送的OSS地址,根据接收的OSS地址从OSS对象存储模块中获取jar包文件,将获取的jar包文件部署在虚拟机,运行微服务应用ecs-app。
7.根据权利要求6所述的自动部署虚拟机微服务应用的方法在虚拟机应用部署管理中的应用。
8.根据权利要求6所述的自动部署虚拟机微服务应用的方法,其特征在于,步骤S4中,通过Deployment部署控制模块向ecs-agent代理模块发送用户部署应用的请求之前,由ecs-agent代理模块发起ecs-agent代理模块与Deployment部署控制模块之间的连接。
9.根据权利要求6所述的自动部署虚拟机微服务应用的方法,其特征在于,步骤S4中,通过Deployment部署控制模块向ecs-agent代理模块发送用户部署应用的请求之后,ecs-agent代理模块向Deployment部署控制模块发送应答。
10.一种终端设备,其特征在于,所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现权利要求6所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210737462.6A CN115473799B (zh) | 2022-06-27 | 2022-06-27 | 一种自动部署虚拟机微服务应用的系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210737462.6A CN115473799B (zh) | 2022-06-27 | 2022-06-27 | 一种自动部署虚拟机微服务应用的系统和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115473799A true CN115473799A (zh) | 2022-12-13 |
CN115473799B CN115473799B (zh) | 2023-08-15 |
Family
ID=84364651
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210737462.6A Active CN115473799B (zh) | 2022-06-27 | 2022-06-27 | 一种自动部署虚拟机微服务应用的系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115473799B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107707625A (zh) * | 2017-09-05 | 2018-02-16 | 江苏电力信息技术有限公司 | 基于Maven的前台资源打包并进行版本管理与使用的方法 |
US20200174838A1 (en) * | 2018-11-29 | 2020-06-04 | International Business Machines Corporation | Utilizing accelerators to accelerate data analytic workloads in disaggregated systems |
CN111324359A (zh) * | 2020-02-27 | 2020-06-23 | 支付宝(杭州)信息技术有限公司 | 插件部署方法及装置 |
WO2022016848A1 (zh) * | 2020-07-20 | 2022-01-27 | 国云科技股份有限公司 | 一种根据服务角色的进行应用部署的方法及装置 |
CN114401098A (zh) * | 2021-12-28 | 2022-04-26 | 智昌科技集团股份有限公司 | 一种快速构建微服务的应用系统及方法 |
-
2022
- 2022-06-27 CN CN202210737462.6A patent/CN115473799B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107707625A (zh) * | 2017-09-05 | 2018-02-16 | 江苏电力信息技术有限公司 | 基于Maven的前台资源打包并进行版本管理与使用的方法 |
US20200174838A1 (en) * | 2018-11-29 | 2020-06-04 | International Business Machines Corporation | Utilizing accelerators to accelerate data analytic workloads in disaggregated systems |
CN111324359A (zh) * | 2020-02-27 | 2020-06-23 | 支付宝(杭州)信息技术有限公司 | 插件部署方法及装置 |
WO2022016848A1 (zh) * | 2020-07-20 | 2022-01-27 | 国云科技股份有限公司 | 一种根据服务角色的进行应用部署的方法及装置 |
CN114401098A (zh) * | 2021-12-28 | 2022-04-26 | 智昌科技集团股份有限公司 | 一种快速构建微服务的应用系统及方法 |
Non-Patent Citations (3)
Title |
---|
JESSE MENNING: "How to Automate Your Microservices Deployment Strategy", Retrieved from the Internet <URL:https://solace.com/blog/automating-microservices-deployment-strategy-eda-rest> * |
佚名: "微服务:从设计到部署(二)", Retrieved from the Internet <URL:www.uml.org.cn/wfw/201710102.asp> * |
马雄: "基于微服务架构的系统设计与开发", 硕士电子期刊 * |
Also Published As
Publication number | Publication date |
---|---|
CN115473799B (zh) | 2023-08-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10802906B2 (en) | Monitoring method and apparatus of server, and storage medium | |
US10970057B2 (en) | Methods and apparatus to generate a customized application blueprint | |
US20210406079A1 (en) | Persistent Non-Homogeneous Worker Pools | |
CN110413288B (zh) | 应用部署方法、装置、服务器及存储介质 | |
CN111124850A (zh) | Mqtt服务器性能测试方法、系统、计算机设备及存储介质 | |
US11200157B1 (en) | Automated execution reporting for container builds | |
US20150242200A1 (en) | Re-configuration in cloud computing environments | |
CN110365762B (zh) | 服务处理方法、装置、设备及存储介质 | |
US20210297504A1 (en) | Software-specific auto scaling | |
WO2016197346A1 (zh) | 一种虚拟网络功能的生命周期管理方法,及装置 | |
US10404568B2 (en) | Agent manager for distributed transaction monitoring system | |
CN111708550A (zh) | 应用部署方法、装置、计算机设备及存储介质 | |
CN111831567B (zh) | 应用的测试环境配置方法、装置、系统和介质 | |
CN110928554A (zh) | 一种部署方法、装置、设备及存储介质 | |
CN114527996A (zh) | 一种多服务的部署方法、装置、电子设备及存储介质 | |
CN114168179A (zh) | 微服务管理方法、装置、计算机设备和存储介质 | |
CN112698930B (zh) | 一种获取服务器标识的方法、装置、设备及介质 | |
US20220206836A1 (en) | Method and Apparatus for Processing Virtual Machine Migration, Method and Apparatus for Generating Virtual Machine Migration Strategy, Device and Storage Medium | |
KR102623631B1 (ko) | Nfv 환경에서의 vnf 자동 설정 방법 및 이를 위한 nfv mano | |
CN111464394B (zh) | 一种节点监控方法、装置以及存储介质 | |
CN115357258B (zh) | 应用的部署方法、装置、存储介质及电子装置 | |
US20170031667A1 (en) | Managing application lifecycles within a federation of distributed software applications | |
CN115357198B (zh) | 存储卷的挂载方法及装置、存储介质及电子设备 | |
CN115473799A (zh) | 一种自动部署虚拟机微服务应用的系统和方法 | |
EP3321808A1 (en) | Verification system and verification method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |