CN116089097B - 一种基于多组件多环境的云平台部署方法、设备及介质 - Google Patents

一种基于多组件多环境的云平台部署方法、设备及介质 Download PDF

Info

Publication number
CN116089097B
CN116089097B CN202310379138.6A CN202310379138A CN116089097B CN 116089097 B CN116089097 B CN 116089097B CN 202310379138 A CN202310379138 A CN 202310379138A CN 116089097 B CN116089097 B CN 116089097B
Authority
CN
China
Prior art keywords
deployment
data
component
cloud
cloud platform
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
CN202310379138.6A
Other languages
English (en)
Other versions
CN116089097A (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.)
Ringslink Xiamen Network Communication Technologies Co ltd
Original Assignee
Ringslink Xiamen Network Communication Technologies Co ltd
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 Ringslink Xiamen Network Communication Technologies Co ltd filed Critical Ringslink Xiamen Network Communication Technologies Co ltd
Priority to CN202310379138.6A priority Critical patent/CN116089097B/zh
Publication of CN116089097A publication Critical patent/CN116089097A/zh
Application granted granted Critical
Publication of CN116089097B publication Critical patent/CN116089097B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种基于多组件多环境的云平台部署方法,包括:创建用户,并登录管理平台;对登录的用户进行权限设置;配置多个云平台,并在不同云平台下配置多个服务器和多个组件;获取云平台的配置数据和服务器与组件的配置信息,并进行部署;部署后进行测试,测试成功后将生成归档数据及组件压缩包,并将所述组件压缩包与对应的版本号进行唯一关联;获取上线版本数据、配置数据、配置信息、归档数据和组件压缩包进行展示;用户在展示的所有数据中进行筛选,对筛选后的数据进行一键部署;执行一键部署后的数据,在自动化部署引擎上自动部署对应的云平台、服务器和组件。本发明还公开了一种电子设备及一种计算机可读存储介质,能够提高部署的效率。

Description

一种基于多组件多环境的云平台部署方法、设备及介质
技术领域
本发明涉及云平台技术领域,尤其涉及一种基于多组件多环境的云平台部署方法、设备及介质。
背景技术
随着企业不断发展,业务量也会逐渐变的庞大与错综复杂,为了满足全球各地的用户需求,需要将业务拓展到不同国家与地区,且不同的国家与地区可能都需要部署各式各样的应用组件。在这种需求背景之下,既耗费人力也耗费大量时间的传统部署组件方式已满足不了复杂业务的需求了。此时便需要引入DevOps概念,对组件部署方式进行优化,加快部署效率。但是在运用Jenkins进行组件部署的时候,也会面临到部署效率与部署灵活上的问题。而在此方案中,通过自研的PaaS Web管理后台的功能,不仅解决了对多环境多组件部署效率和灵活度的问题,还增加了对多环境不同的线上版本控制及日志记录功能,从而解决了多组件多环境IOT云平台的持续高可靠部署。
现有的部署方式目前还存在以下几个问题:
① 传统的部署方式,权限控制较为简单,有的是直接面向运维人员,不对权限控制进行细分,有的是对JOB任务进行权限控制,安全性得不到保障;
②较为早期的部署方式中,很多是通过脚本控制上线,没有界面。在Jenkins流行后,很多企业也是只基于Jenkins平台的插件进行版本上线,灵活性有限;
③大多数自动化部署开源工具,由于是面向于全球企业用户,本身的UI和功能设计上主要也是满足大众需求,在提升效率和灵活性上比较有限。大部分同领域的部署都是单个Jenkins Job任务逐个进行组件部署,对于拥有几十个或上百个组件的庞大业务来说,上线就比较乏力,浪费人力与时间。即使运用Jenkins自带的集成多个Job任务功能,灵活度也受限于JenkinsFile;很多部署方式都是通过单个JOB任务进行单一部署,部署效率太低。大部分同领域的对JOB任务批量变更比较麻烦,很多都是逐个修改,不能做到批量控制。
④少部分同领域运用AWX进行部署上线,操作麻烦,不灵活。
发明内容
有鉴于此,本发明的目的在于提出一种基于多组件多环境的云平台部署方法。
为了实现上述的技术目的,本发明所采用的技术方案为:
本发明提供了一种基于多组件多环境的云平台部署方法,包括如下步骤:
步骤1、创建用户,并登录管理平台;
步骤2、对登录的用户进行权限设置;
步骤3、配置多个云平台,并在不同云平台下配置多个服务器和多个组件;
步骤4、获取云平台的配置数据和服务器与组件的配置信息,并进行部署;
步骤5、部署后进行测试,测试成功后将生成归档数据及组件压缩包,并将所述组件压缩包与对应的版本号进行唯一关联;
步骤6、获取上线版本数据、配置数据、配置信息、归档数据和组件压缩包进行展示;用户在展示的所有数据中进行筛选,对筛选后的数据进行一键部署;
步骤7、执行一键部署后的数据,在自动化部署引擎上自动部署对应的云平台、服务器和组件。
进一步的,所述步骤1具体为:创建用户,得到对应的用户账号和登录密码,并输入所述用户账号和登录密码登录PaaS web管理平台。
进一步的,所述步骤2中的权限范围至少包括对上线版本控制、一键部署控制、多云平台配置和多组件配置的操作权限。
进一步的,所述步骤3具体包括:
步骤31、配置线上多云环境所拥有的多个云平台;
步骤32、获取多个云平台的配置数据;
步骤33、根据所述配置数据在不同云平台下配置多个服务器,再获取多个服务器的配置信息,并根据所述配置信息在不同服务器下配置多个组件;或者是根据所述配置数据同时在不同云平台下配置多个服务器和多个组件。
进一步的,所述步骤4具体包括:
步骤41、获取云平台的配置数据和服务器与组件的配置信息;
步骤42、根据所述配置数据和配置信息在自动化部署引擎上进行部署;
步骤43、所述自动化部署引擎根据实现自动化部署编排逻辑,将组件部署到指定的服务器和云平台上。
进一步的,所述步骤5具体包括:
步骤51、部署后进行测试验收,并得到测试结果;
步骤52、测试成功后自动对组件进行压缩后得到多个组件压缩包;
步骤53、测试成功后生成多个与组件压缩包一一对应的归档数据,所述归档数据包括云平台的配置数据中的测试环境数据、组件压缩包存储路径和组件包名;
步骤54、测试成功后产生一条测试环境上线历史记录信息,所述测试环境上线历史记录信息包括组件信息、上线的云平台信息和上线时间;所述步骤52、步骤53和步骤54之间没有先后顺序;
步骤55、开发人员从多个组件压缩包中选定最新的一个组件压缩包,并将选定的所述组件压缩包的组件包名与对应的版本号进行唯一关联。
进一步的,所述步骤6具体包括:
步骤61、获取上线后的所有历史上线版本数据、配置数据、配置信息、归档数据和组件压缩包进行展示;
步骤62、用户根据当前制定的部署方案在展示的所有数据中进行筛选,从所述所有历史上线版本数据中选定一个目标版本号;根据所述目标版本号从多个归档数据中找出与该目标版本号关联的组件包名,根据所述组件包名找到对应的组件压缩包存储路径,根据所述组件压缩包存储路径从多个组件压缩包中确定出对应的组件压缩包作为目标组件压缩包;从多个配置数据中选定目标配置数据;从多个配置信息中选定目标配置信息;
步骤63、对筛选后的目标版本号、目标配置数据、目标配置信息、目标组件压缩包进行一键部署。
进一步的,所述步骤7具体包括:
步骤71、执行一键部署后的数据;
步骤72、在自动化部署引擎上集成gitlab api、Jenkins api、ansible、docker、harbor和nfs,根据开发的自动化部署编排逻辑,控制不同云环境的滚动部署和灰度部署,进行自动部署多云环境下对应的云平台、服务器和组件;
步骤73、自动部署完成后将产生一条多云环境上线历史记录信息。
本发明还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述的一种基于多组件多环境的云平台部署方法。
本发明还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述的一种基于多组件多环境的云平台部署方法。
采用上述的技术方案,本发明与现有技术相比,其具有的有益效果为:
①权限控制颗粒化:本发明不仅在功能模块对用户角色进行控制,还对不同的JOB、不同环境、不同的逻辑功能对用户权限进行控制细分,在PaaS Web管理后台开发权限控制中心,并与Jenkins Job任务关联,使角色权限控制可以细化到Job任务内部,大大提高了安全性;
②高灵活性:本发明对Jenkins进行功能扩展,开发自己的功能模块进行灵活运用。如:在PaaS Web管理后台中,环境、便签、组件、部署配置等动态数据,调用Jenkins API在Jenkins平台进行了灵活关联,只要在PaaS Web管理后台中对数据进行变更,就可以控制Jenkins平台中的各个JOB任务;在PaaS Web管理后台中的一键部署模块中,调用JenkinsAPI及管理后台本身的各模块数据,控制各个组件在不同环境的进行部署,极大的提高了部署灵活性。
③高效率:本发明在PaaS Web管理后台开发多环境配置管理、组件部署配置、归档功能,将产出的数据与Jenkins平台实现数据的关联,在Jenkins中可以动态加载这些关键数据,达到灵活且批量管理Jenkins Job任务的目的;自研的一键部署功能,可以集成N个JOB任务,N个环境进行批量部署,从而提高部署效率。在PaaS Web管理后台开发一键部署模块,可以动态的批量选择多环境数据、便签数据、组件数据,再通过调用Jenkins Api动态的将参数发送到Jenkins平台进行可持续构建与部署,并且记录每次上线审计记录,达到持续高可靠目的;在Jenkins平台中,运用Pipeline模式,编写兼容多语言、多项目、多环境的Pipeline Script脚本,接收来自PaaS Web管理后台一键部署发送的部署任务,实现了动态联动部署。
④高可靠性:大量的组件部署,人工操作容易出错,开发一键部署功能,操作简单化,避免了人工出错;版本控制,记录每次上线版本,跟踪可控。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一种基于多组件多环境的云平台部署方法的示意图。
图2是本发明一种基于多组件多环境的云平台部署系统的示意图。
图3是本发明实施例提供的一种电子设备的示意图。
图4是本发明实施例提供的一种计算机可读存储介质的示意图。
具体实施方式
下面结合附图和实施例,对本发明作进一步的详细描述。特别指出的是,以下实施例仅用于说明本发明,但不对本发明的范围进行限定。同样的,以下实施例仅为本发明的部分实施例而非全部实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明提供一种基于多组件多环境的云平台部署方法,能够提高部署过程的安全性、灵活性、可靠性和效率。
请参见图1,图1是本发明一种基于多组件多环境的云平台部署方法,包括如下步骤:
步骤1、创建用户,并登录管理平台;
在本实施例中,所述步骤1具体为:创建用户,得到对应的用户账号和登录密码,并输入所述用户账号和登录密码登录PaaS web管理平台。所述PaaS web管理平台采用Docker容器部署,除此之外,还依赖Gitlab、Jenkins、MySQL等开源组件。通过PaaS web管理平台控制用户的登录与注册,并且将角色与Jenkins进行关联;创建新用户角色的目的是为了方便后期可在PaaS web管理平台上进行操作。
步骤2、对登录的用户进行权限设置;
在本实施例中,所述步骤2中的权限范围至少包括对上线版本控制、一键部署控制、多云平台配置和多组件配置的操作权限;只有对用户进行授权后,用户才具有对上线版本控制、一键部署控制、多云平台配置和多组件配置的操作功能,不仅在功能模块对用户角色进行控制,还对不同的JOB、不同环境、不同的逻辑功能对用户权限进行控制细分,在PaaSWeb管理后台开发权限控制中心,并与Jenkins Job任务关联,使角色权限控制可以细化到Job任务内部,大大提高了安全性。因为PaaS Web管理平台的角色与Jenkins用户角色已经关联了,开发的权限控制中心对PaaS Web管理平台的各模块进行权限控制,也对JenkinsJob的权限进行控制。
步骤3、配置多个云平台,并在不同云平台下配置多个服务器和多个组件;
在本实施例中,所述步骤3具体包括:
步骤31、配置线上多云环境所拥有的多个云平台;
步骤32、获取多个云平台的配置数据;
步骤33、根据所述配置数据在不同云平台下配置多个服务器,再获取多个服务器的配置信息,并根据所述配置信息在不同服务器下配置多个组件;或者是根据所述配置数据同时在不同云平台下配置多个服务器和多个组件。通过对多个云平台进行单独配置,然后再单独控制各个组件在不同云环境下进行配置,根据需求自行单独配置不同的配置参数,对多个云平台、多个服务器和多个组件的配置方式有很多种,极大的提高了部署灵活性。
步骤4、获取云平台的配置数据和服务器与组件的配置信息,并进行部署;
在本实施例中,所述步骤4具体包括:
步骤41、获取云平台的配置数据和服务器与组件的配置信息;
步骤42、根据所述配置数据和配置信息在自动化部署引擎上进行部署;
步骤43、所述自动化部署引擎根据实现自动化部署编排逻辑,将组件部署到指定的服务器和云平台上。所述自动化部署引擎上集成gitlab api、Jenkins api、ansible、docker、harbor和nfs。本发明对Jenkins进行功能扩展,开发自己的功能模块进行灵活运用。如:在PaaS Web管理后台中,环境、便签、组件、部署配置等动态数据,调用Jenkins API在Jenkins平台进行了灵活关联,只要在PaaS Web管理后台中对数据进行变更,就可以控制Jenkins平台中的各个JOB任务;在PaaS Web管理后台中的一键部署模块中,调用JenkinsAPI及管理后台本身的各模块数据,控制各个组件在不同环境的进行部署,极大的提高了部署灵活性。
步骤5、部署后进行测试,测试成功后将生成归档数据及组件压缩包,并将所述组件压缩包与对应的版本号进行唯一关联;
在本实施例中,所述步骤5具体包括:
步骤51、部署后进行测试验收,并得到测试结果;
步骤52、测试成功后自动对组件进行压缩后得到多个组件压缩包;
步骤53、测试成功后生成多个与组件压缩包一一对应的归档数据,所述归档数据包括云平台的配置数据中的测试环境数据、组件压缩包存储路径和组件包名;
步骤54、测试成功后产生一条测试环境上线历史记录信息,所述测试环境上线历史记录信息包括组件信息、上线的云平台信息和上线时间,可以做到上线数据跟踪可控;所述步骤52、步骤53和步骤54之间没有先后顺序;
步骤55、开发人员从多个组件压缩包中选定最新的一个组件压缩包,并将选定的所述组件压缩包的组件包名与对应的版本号进行唯一关联。
步骤6、获取上线版本数据、配置数据、配置信息、归档数据和组件压缩包进行展示;用户在展示的所有数据中进行筛选,对筛选后的数据进行一键部署;
在本实施例中,所述步骤6具体包括:
步骤61、获取上线后的所有历史上线版本数据、配置数据、配置信息、归档数据和组件压缩包进行展示;
步骤62、用户根据当前制定的部署方案在展示的所有数据中进行筛选,从所述所有历史上线版本数据中选定一个目标版本号;根据所述目标版本号从多个归档数据中找出与该目标版本号关联的组件包名,根据所述组件包名找到对应的组件压缩包存储路径,根据所述组件压缩包存储路径从多个组件压缩包中确定出对应的组件压缩包作为目标组件压缩包;从多个配置数据中选定目标配置数据;从多个配置信息中选定目标配置信息;
步骤63、对筛选后的目标版本号、目标配置数据、目标配置信息、目标组件压缩包进行一键部署。本发明在PaaS Web管理后台开发多环境配置管理、组件部署配置、归档功能,将产出的数据与Jenkins平台实现数据的关联,在Jenkins中可以动态加载这些关键数据,达到灵活且批量管理Jenkins Job任务的目的;对于大量的组件部署,自研的一键部署功能,可以集成N个JOB任务,N个环境进行批量部署,操作简单化,避免了人工出错,从而提高部署效率。在PaaS Web管理后台开发一键部署模块,可以动态的批量选择多环境数据、便签数据、组件数据,再通过调用Jenkins Api动态的将参数发送到Jenkins平台进行可持续构建与部署,并且记录每次上线审计记录,达到持续高可靠目的;在Jenkins平台中,运用Pipeline模式,编写兼容多语言、多项目、多环境的Pipeline Script脚本,接收来自PaaSWeb管理后台一键部署发送的部署任务,实现了动态联动部署。
步骤7、执行一键部署后的数据,在自动化部署引擎上自动部署对应的云平台、服务器和组件。
在本实施例中,所述步骤7具体包括:
步骤71、执行一键部署后的数据;
步骤72、在自动化部署引擎上集成gitlab api、Jenkins api、ansible、docker、harbor和nfs,集成多个软件,可以兼容多种部署操作;根据开发的自动化部署编排逻辑,控制不同云环境的滚动部署和灰度部署,进行自动部署多云环境下对应的云平台、服务器和组件;通过网关和WAP通讯将部署数据发布到对应的云平台、服务器和组件进行部署操作,部署过程更加自动化,提高部署的效果。对于大量的组件部署,开发一键部署功能和自动化部署引擎,操作简单化,避免了人工出错,提高可靠性。
步骤73、自动部署完成后将产生一条多云环境上线历史记录信息,可以做到上线数据跟踪可控。
如图2所示,本发明还提供一种基于多组件多环境的云平台部署系统,包括PaaSWeb管理平台、自动化部署引擎和多云环境,在PaaS Web管理平台上开发用户中心、权限控制中心、上线版本控制中心、多组件配置中心、多云平台配置中心、归档中心、上线历史记录存储中心、一键部署控制中心等功能;
所述用户中心:用于实现用户创建、登录、安全认证功能;
所述权限控制中心:用于控制PaaS Web管理平台对各个用户角色的功能模块权限、逻辑功能权限,以及控制用户角色在Jenkins平台中对不同环境的部署权限;包括对上线版本控制、一键部署控制、多云平台配置和多组件配置的操作权限;
所述上线版本控制中心:用于记录多环境上线的版本;每次版本上线前创建标记名称,用于关联归档中心中的各个组件压缩包,标记好后,在一键部署中心中,可以筛选出指定版本的组件压缩包进行快速部署;
所述多组件配置中心:用于配置各个组件在多云环境中的基础信息,在持续部署过程中进行关联;
所述多云平台配置中心:用于配置本地云、开发环境、测试环境、线上多套环境的基础数据,在Jenkins平台、多组件配置中心、归档中心、上线历史记录存储中心、一键部署控制中心等各模块都进行关联;
所述归档中心:用于存储QA验收后的组件压缩包并标记不同环境需部署的组件便签;测试环境验收版本部署后,会生成与记录正式环境部署所需要的组件压缩包,后续跟便签版本数据进行关联,确定上线所需的组件文件;
所述上线历史记录存储中心:用于记录多环境多组件每次上线后的上线记录(记录各个组件在不同云环境部署的记录),便于后续审计与查询;
所述一键部署控制中心:用于控制多环境多组件的快速部署;关联归档数据(和组件压缩包)、便签数据(上线版本数据)、多环境数据(云平台的配置数据和组件与服务器的配置信息)、权限控制数据,调用Jenkins Api进行动态批量部署;
所述自动化部署引擎:依赖于Jenkins Pipeline部署模式,编写PipelineScript,集成Gitlab Api、Ansible、Docker、NAS、PaaS Web后台数据等功能,实现可持续集成与部署;
所述多云环境下的网关:通过不同的网关代理将组件部署到各个云环境;
所述多云环境下WAF:设置防火墙,提高访问安全性。
开发与设计PaaS Web管理平台,用户中心控制用户的登录与注册,并且将角色与Jenkins进行关联;因为PaaS Web管理平台的角色与Jenkins用户角色已经关联了,开发的权限控制中心对PaaS Web管理平台的各模块进行权限控制,也对Jenkins Job的权限进行控制;开发多组件配置中心、多云平台配置中心、归档中心,在版本上线之前,提前配置好云数据和组件部署数据。配置完成后,只要在测试环境部署组件,就会对组件进行自动归档;开发上线版本控制中心,在QA全部验收通过后,创建上线版本便签,并关联组件压缩包;开发一键部署控制中心,在正式上线时,选择部署环境、便签、组件,再调用Jenkins Api实现一键部署,达到多组件多环境的IOT云平台持续可靠部署;开发上线历史记录存储中心,部署成功后,记录每次上线后的部署记录,便于后续数据查询。
当一个版本需要上线的时候,首先,在多云平台配置中心和多组件配置中心中配置好不同环境的组件部署配置,然后,在上线版本控制中心创建指定版本,创建好便签版本后在归档中心找到归档的组件压缩包与之关联,接着,在Jenkins中创建JOB任务关联部署配置数据、归档数据及配置信息,最后,在一键部署控制中心选择环境、便签及多组件调用Jenkins API实现一键部署,在成功部署后,便会产生一条组件部署记录在上线历史记录存储中心便于审计与查询。通过以上各功能模块的协作,从而达到了多环境多组件的灵活部署和快速部署。
如图3所示,本发明实施例还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述的一种基于多组件多环境的云平台部署方法。
如图4所示,本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述的一种基于多组件多环境的云平台部署方法。
另外,在本发明各个实施方式中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施方式方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的部分实施例,并非因此限制本发明的保护范围,凡是利用本发明说明书及附图内容所作的等效装置或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (4)

1.一种基于多组件多环境的云平台部署方法,其特征在于,包括如下步骤:
步骤1、创建用户,并登录管理平台;
步骤2、对登录的用户进行权限设置;所述权限范围至少包括对上线版本控制、一键部署控制、多云平台配置和多组件配置的操作权限;
步骤3、配置多个云平台,并在不同云平台下配置多个服务器和多个组件;具体包括:
步骤31、配置线上多云环境所拥有的多个云平台;
步骤32、获取多个云平台的配置数据;
步骤33、根据所述配置数据在不同云平台下配置多个服务器,再获取多个服务器的配置信息,并根据所述配置信息在不同服务器下配置多个组件;或者是根据所述配置数据同时在不同云平台下配置多个服务器和多个组件;
步骤4、获取云平台的配置数据和服务器与组件的配置信息,并进行部署;具体包括:
步骤41、获取云平台的配置数据和服务器与组件的配置信息;
步骤42、根据所述配置数据和配置信息在自动化部署引擎上进行部署;
步骤43、所述自动化部署引擎根据实现自动化部署编排逻辑,将组件部署到指定的服务器和云平台上;
步骤5、部署后进行测试,测试成功后将生成归档数据及组件压缩包,并将所述组件压缩包与对应的版本号进行唯一关联;具体包括:
步骤51、部署后进行测试验收,并得到测试结果;
步骤52、测试成功后自动对组件进行压缩后得到多个组件压缩包;
步骤53、测试成功后生成多个与组件压缩包一一对应的归档数据,所述归档数据包括云平台的配置数据中的测试环境数据、组件压缩包存储路径和组件包名;
步骤54、测试成功后产生一条测试环境上线历史记录信息,所述测试环境上线历史记录信息包括组件信息、上线的云平台信息和上线时间;所述步骤52、步骤53和步骤54之间没有先后顺序;
步骤55、开发人员从多个组件压缩包中选定最新的一个组件压缩包,并将选定的所述组件压缩包的组件包名与对应的版本号进行唯一关联;
步骤6、获取上线版本数据、配置数据、配置信息、归档数据和组件压缩包进行展示;用户在展示的所有数据中进行筛选,对筛选后的数据进行一键部署;具体包括:
步骤61、获取上线后的所有历史上线版本数据、配置数据、配置信息、归档数据和组件压缩包进行展示;
步骤62、用户根据当前制定的部署方案在展示的所有数据中进行筛选,从所述所有历史上线版本数据中选定一个目标版本号;根据所述目标版本号从多个归档数据中找出与该目标版本号关联的组件包名,根据所述组件包名找到对应的组件压缩包存储路径,根据所述组件压缩包存储路径从多个组件压缩包中确定出对应的组件压缩包作为目标组件压缩包;从多个配置数据中选定目标配置数据;从多个配置信息中选定目标配置信息;
步骤63、对筛选后的目标版本号、目标配置数据、目标配置信息、目标组件压缩包进行一键部署;
步骤7、执行一键部署后的数据,在自动化部署引擎上自动部署对应的云平台、服务器和组件;具体包括:
步骤71、执行一键部署后的数据;
步骤72、在自动化部署引擎上集成gitlab api、Jenkins api、ansible、docker、harbor和nfs,根据开发的自动化部署编排逻辑,控制不同云环境的滚动部署和灰度部署,进行自动部署多云环境下对应的云平台、服务器和组件;
步骤73、自动部署完成后将产生一条多云环境上线历史记录信息。
2.如权利要求1所述的一种基于多组件多环境的云平台部署方法,其特征在于,所述步骤1具体为:创建用户,得到对应的用户账号和登录密码,并输入所述用户账号和登录密码登录PaaS web管理平台。
3.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至2任一项所述的一种基于多组件多环境的云平台部署方法。
4.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至2任一项所述的一种基于多组件多环境的云平台部署方法。
CN202310379138.6A 2023-04-11 2023-04-11 一种基于多组件多环境的云平台部署方法、设备及介质 Active CN116089097B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310379138.6A CN116089097B (zh) 2023-04-11 2023-04-11 一种基于多组件多环境的云平台部署方法、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310379138.6A CN116089097B (zh) 2023-04-11 2023-04-11 一种基于多组件多环境的云平台部署方法、设备及介质

Publications (2)

Publication Number Publication Date
CN116089097A CN116089097A (zh) 2023-05-09
CN116089097B true CN116089097B (zh) 2023-06-16

Family

ID=86212391

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310379138.6A Active CN116089097B (zh) 2023-04-11 2023-04-11 一种基于多组件多环境的云平台部署方法、设备及介质

Country Status (1)

Country Link
CN (1) CN116089097B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116541023A (zh) * 2023-07-06 2023-08-04 北京好心情互联网医院有限公司 应用程序发布方法、装置、设备及存储介质
CN117270888B (zh) * 2023-11-24 2024-04-16 之江实验室 一种云端应用部署方法、系统、装置及计算机设备

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9582261B2 (en) * 2014-06-26 2017-02-28 Vmware, Inc. Methods and apparatus to update application deployments in cloud computing environments
CN105262796A (zh) * 2015-09-17 2016-01-20 北京汉柏科技有限公司 一种云平台存储资源管理系统及其部署框架
US20170124464A1 (en) * 2015-10-28 2017-05-04 Fractal Industries, Inc. Rapid predictive analysis of very large data sets using the distributed computational graph
CN108737463A (zh) * 2017-04-17 2018-11-02 北京神州泰岳软件股份有限公司 一种软件部署方法、服务器和系统
US11394711B2 (en) * 2018-11-29 2022-07-19 Microsoft Technology Licensing, Llc Streamlined secure deployment of cloud services
CN111770174A (zh) * 2020-06-29 2020-10-13 苏州浪潮智能科技有限公司 一种云平台部署方法、装置、设备及可读存储介质
WO2022119588A1 (en) * 2020-12-02 2022-06-09 Salesforce.Com, Inc. Deployment of software releases on datacenters configured in cloud platforms
CN113760302B (zh) * 2021-09-09 2023-04-07 四川虹美智能科技有限公司 基于Jenkins的UI包部署方法及系统
CN114489939A (zh) * 2022-01-13 2022-05-13 华云数据有限公司 一种组件部署方法、系统以及计算机可读介质

Also Published As

Publication number Publication date
CN116089097A (zh) 2023-05-09

Similar Documents

Publication Publication Date Title
CN116089097B (zh) 一种基于多组件多环境的云平台部署方法、设备及介质
US10277622B2 (en) Enterprise level cybersecurity automatic remediation
US20210218711A1 (en) Dynamic discovery of executing applications
US20070006122A1 (en) Computer method and system for integrating software development and deployment
US9003389B2 (en) Generating an encoded package profile based on executing host processes
US20080276253A1 (en) Automated event correlation
US20160036858A1 (en) Server validation with dynamic assembly of scripts
CN112738138B (zh) 云安全托管方法、装置、设备及存储介质
US9772834B2 (en) Exportable encoded identifications of networked machines
US20240171603A1 (en) Risk-Based Vulnerability Remediation Timeframe Recommendations
CN112988607B (zh) 一种应用程序的组件检测方法、装置和存储介质
Siebra et al. From theory to practice: The challenges of a DevOps infrastructure as code implementation
CN117056240A (zh) 一种支持离线Jar包的数据元件开发调试方法和系统
US9092295B2 (en) Managing software package updates using communication pipes
EP4130982A1 (en) Network-based solution module deployment platform
Barakat et al. Malware analysis performance enhancement using cloud computing
AU2016203903A1 (en) System and method for generating service operation implementation
WO2019018316A1 (en) AUTOMATIC CYBERSECURITY REMEDY AT AN ENTERPRISE LEVEL
WO2022256832A1 (en) Event management updates for tenants based on deployment needs
EP4348467A1 (en) Standardizing and streamlining the deployment of security information
CN113093965A (zh) 账户注册方法、装置、计算机系统及存储介质
Seremet et al. BEST APPROACH TO SECURITY IN AZURE DEVOPS
Achar et al. A Review of Hosting Enterprise SaaS with IaC on Multi-cloud Platforms
CN115426198B (zh) 一种情报信息处理方法、装置、设备及存储介质
CN104298763A (zh) 一种基于web的结构化数据库系统对外访问方法

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