CN108829409A - 一种分布式系统快速部署方法及系统 - Google Patents

一种分布式系统快速部署方法及系统 Download PDF

Info

Publication number
CN108829409A
CN108829409A CN201810636618.5A CN201810636618A CN108829409A CN 108829409 A CN108829409 A CN 108829409A CN 201810636618 A CN201810636618 A CN 201810636618A CN 108829409 A CN108829409 A CN 108829409A
Authority
CN
China
Prior art keywords
deployment
subsystem
docker
subsystems
script
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
Application number
CN201810636618.5A
Other languages
English (en)
Other versions
CN108829409B (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.)
Taihua Wisdom Industry Group Co Ltd
Original Assignee
Taihua Wisdom Industry Group 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 Taihua Wisdom Industry Group Co Ltd filed Critical Taihua Wisdom Industry Group Co Ltd
Priority to CN201810636618.5A priority Critical patent/CN108829409B/zh
Publication of CN108829409A publication Critical patent/CN108829409A/zh
Application granted granted Critical
Publication of CN108829409B publication Critical patent/CN108829409B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/63Image based installation; Cloning; Build to order

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种分布式系统快速部署方法及系统,该方法包括:各个子系统的开发人员,梳理其负责的子系统配置参数并编写该子系统的镜像文件,制作Docker镜像;对于各个子系统需要的数据库初始化数据;各个子系统的开发人员编写镜像使用文档,定义如何使用该镜像创建容器;将各个子系统的依赖关系、参数配置基于代码实现自动化管理;交付人员编写Docker的自动化部署脚本;整个系统的架构师、负责人,基于分布式部署脚本,整理出相关的使用文档,指导交付人员使用。该系统包括:初始化模块、公共组件模块、业务子系统模块。本发明将分布式部署脚本Ansible与Docker容器技术结合,能够快速的完成分布式部署系统的部署,加速软件交付,降低交付与运维复杂度。

Description

一种分布式系统快速部署方法及系统
技术领域
本发明涉及云计算技术领域,更具体地,涉及一种分布式系统快速部署方法及系统。
背景技术
随着软件技术架构的演进,以及业务功能的逐渐增多,一个产品或者系统开始由单体巨石应用,演变为SOA架构、微服务架构、Serverless架构,架构的演进解决了业务的需求,但是提高了软件部署、运维的复杂度。目前对于复杂分布式系统的部署存在以下问题:
1、业务开发人员,根据研发过程,整理复杂的部署文档,文档中描述详细的部署步骤、参数配置,但由于业务功能更新,部署文档通常无法及时更新,交付人员在安装部署文档进行项目交付时,可能由于部署文档未更新,或者对文档理解问题,导致部署失败、配置失败等问题。
2、业务开发人员针对部署,编写自动化部署脚本完成部署,但通常由于生产环境的不可预知的问题,导致无法自动部署。
3、通常情况下,选择虚拟机进行部署,但是对于多数应用来说,虚拟机资源无法被充分使用,存在资源利用率低的问题。
因此,基于以上特点,设计一种分布式系统快速部署方法及系统,能够完成复杂分布式系统的快速部署与配置,加速软件交付,降低交付与运维复杂度,就成为了本领域技术人员亟待解决的技术问题。
发明内容
有鉴于此,本发明提供了一种分布式系统快速部署方法及系统,以解决现有技术中的问题。
本发明公开了一种分布式系统快速部署方法,包括:
各个子系统的开发人员,梳理其负责的子系统配置参数并编写该子系统的镜像文件,制作Docker镜像,测试该镜像是否正常运行,并将制作好的镜像进行归档,且基于子系统版本进行镜像管理;
对于各个子系统需要的数据库初始化数据,采用将数据存储到镜像的方式,即制作好的Docker镜像,包含该子系统需要的初始化数据;
各个子系统的开发人员编写镜像使用文档,描述基于该Docker镜像启动容器需要的参数配置,定义如何使用该镜像创建容器;
整个系统的架构师或者负责人,梳理全部子系统的部署架构、各个子系统的依赖关系、参数配置,将各个子系统的依赖关系、参数配置以Ansible脚本的方式进行管理,即将各个子系统的依赖关系、参数配置基于代码实现自动化管理;
交付人员梳理Docker运行需要的依赖包,并编写Docker的自动化部署脚本;
整个系统的架构师或者负责人,基于分布式部署脚本,整理出相关的使用文档,指导交付人员使用。
优选的,子系统版本更新时,通过DevOps流程,实现Docker镜像的制作与更新。
优选的,Docker镜像启动容器需要的参数包括配置项名称、启动容器时需要配置的环境变量名称、环境变量参考值、是否必选、参数注意事项。
优选的,将各个子系统的依赖关系、参数配置基于代码实现自动化管理具体为:编写该业务系统的Ansible脚本,将各个子系统的相互依赖关系基于Ansible脚本进行管理。
进一步优选的,Ansible脚本的具体开发流程如下:编写分布式部署Docker脚本、编写部署各个子系统的脚本。
进一步优选的,编写分布式部署Docker脚本之前,还包括完成yum源仓库搭建;完成pip源仓库搭建;关闭各个服务器的防火墙;在各个节点安装Docker;配置Docker的参数。
进一步优选的,编写部署各个子系统的脚本,包括:获取部署子系统的节点;获取子系统使用的Docker镜像版本与配置文件;将子系统镜像复制到指定节点;生成子系统容器启动需要的配置参数;在各节点启动容器。
另一方面,本发明还公开了一种分布式系统快速部署系统,包括初始化模块、公共组件模块、业务子系统模块;
初始化模块,用于完成分布式部署的初始化操作,初始化操作具体包括采集各个子系统部署在哪些节点,在各个节点部署Docker、关闭防火墙,选择某个节点部署镜像仓库;
公共组件模块,用于完成公共组件的容器化部署,容器化部署具体包括完成公共组件的部署,并将公共组件的访问地址进行缓存,以保留业务子系统启动时需要的参数配置信息;
业务子系统模块,用于完成业务相关的子系统的部署与配置,将各个子系统以容器的方式启动。
优选的,公共组件包括数据库、缓存、消息队列。
优选的,参数配置信息包括配置项名称、启动容器时需要配置的环境变量名称、环境变量参考值、是否必选、参数注意事项。
与现有技术相比,本发明提供的分布式系统快速部署方法及系统,至少实现了如下的有益效果:
1、本发明在各个子系统完成业务功能开发后,编写该子系统的镜像文件,用于制作Docker镜像,交付人员编写分布式部署脚本,包含多个子系统的参数配置、容器启动等功能,将分布式部署脚本Ansible与Docker容器技术结合,能够快速的完成分布式部署系统的部署,降低复杂业务系统的交付难度;
2、本发明基于当前通用的容器技术将多个业务系统进行打包,以镜像的方式标准化交付产物,可以隔离生产环境与研发环境不一致的问题;
3、本发明通过云计算Docker技术完成复杂分布式系统的快速部署与配置,能够加速软件交付,降低交付与运维复杂度;
4、本发明同时基于分布式部署脚本Ansible,实现分布式系统的灵活、自动化部署,加速项目交付;
5、本发明的分布式部署脚本采用Ansible,该脚本语言支持跨平台,可以支持在多个Linux发行版中实现分布式部署,能够适应多种不同的项目交付环境;
6、本发明应用的交付采用业界标准的容器镜像进行交付,能够很好的隔离应用运行环境与项目交付环境,减少对项目交付环境的依赖;
7、本发明的参数配置数量降低,各个子系统的依赖参与由分布式部署脚本内部自动配置,通常情况下,只需要配置主机服务IP就可以完成复杂系统的分布部署;
8、本发明是通用的分布式系统快速部署方法,为研发人员如何制作镜像、编写Ansible脚本提供参考方法,同时指导交付人员如何使用Ansible部署脚本,降低交付复杂度,即描述了一个传统的应用如何制作镜像、Ansible脚本编写思路、交付人员如何使用等;
9、使用本发明的分布式系统快速部署方法及系统,交付人员只需要简单配置部署节点的IP地址,执行一条脚本命令就可以实现整个分布式系统的快速部署,不再需要进行复杂的参数配置,简单快捷。
当然,实施本发明的任一产品必不特定需要同时达到以上所述的所有技术效果。
通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。
附图说明
被结合在说明书中并构成说明书的一部分的附图示出了本发明的实施例,并且连同其说明一起用于解释本发明的原理。
图1是本发明实施例提供的一种分布式系统快速部署方法流程图;
图2是本发明实施例提供的另一种分布式系统快速部署方法流程图;
图3是本发明实施例提供的一种分布式系统快速部署系统的构成示意图;
图4是本发明实施例提供的又一种分布式系统快速部署方法流程图;
图5是通过图4所示的方法实现分布式系统快速部署的原理框图;
图6是图4所示的方法中步骤404、步骤405、步骤406的具体流程图。
具体实施方式
现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
实施例一
请参考图1,图1是本发明实施例提供的一种分布式系统快速部署方法流程图,本实施例的部署方法包括:
步骤101:各个子系统的开发人员,梳理其负责的子系统配置参数并编写该子系统的镜像文件,制作Docker镜像,测试该镜像是否正常运行,并将制作好的镜像进行归档,且基于子系统版本进行镜像管理;
步骤102:对于各个子系统需要的数据库初始化数据,采用将数据存储到镜像的方式,即制作好的Docker镜像,包含该子系统需要的初始化数据;
步骤103:各个子系统的开发人员编写镜像使用文档,描述基于该Docker镜像启动容器需要的参数配置,定义如何使用该镜像创建容器;
步骤104:整个系统的架构师或者负责人,梳理全部子系统的部署架构、各个子系统的依赖关系、参数配置,将各个子系统的依赖关系、参数配置以Ansible脚本的方式进行管理,即将各个子系统的依赖关系、参数配置基于代码实现自动化管理;
步骤105:交付人员梳理Docker运行需要的依赖包,并编写Docker的自动化部署脚本;
步骤106:整个系统的架构师或者负责人,基于分布式部署脚本,整理出相关的使用文档,指导交付人员使用。
基于上述部署方法,交付人员只需要简单配置部署节点的IP地址,执行一条脚本命令就可以实现整个分布式系统的快速部署,不再需要进行复杂的参数配置。
本实施例中,步骤101在子系统版本更新时,通过DevOps流程,实现镜像的制作与更新。步骤102中制作好的Docker镜像,已经包含该子系统需要的初始化数据,这样在子系统运行时,可以不再进行数据导入操作,减少了交付人员操作。步骤103中Docker镜像启动容器需要的参数包括配置项名称、启动容器时需要配置的环境变量名称、环境变量参考值、是否必选、参数注意事项。步骤104中将依赖关系、参数配置基于代码实现自动化管理具体为:编写该业务系统的Ansible脚本,将各个子系统的相互依赖关系基于Ansible脚本进行管理。步骤105中交付人员梳理Docker运行需要的依赖包,可以为子系统的容器运行提供基础环境。
为了更进一步理解本实施例,需要说明的是,Ansible脚本的具体开发流程如下:编写分布式部署Docker脚本,包括完成yum源仓库搭建、pip源仓库搭建,关闭各个服务器的防火墙,在各个节点安装Docker,并配置Docker相关参数;编写部署子系统的脚本,包括获取部署子系统的节点、子系统使用的Docker镜像版本、容器启动需要的配置参数,在各节点启动容器;基于上述对其他子系统进行配置。
实施例二
请参考图2,图2是本发明实施例提供的另一种分布式系统快速部署方法流程图,本实施例的部署方法包括:
步骤201:各个子系统的开发人员,梳理其负责的子系统配置参数并编写该子系统的镜像文件,制作Docker镜像;
步骤202:测试镜像是否正常运行,可以根据镜像提供的服务选择不同的测试方法;例如,测试Nginx镜像是否能够正常运行,可以采用如下方法:在10.10.70.65服务器基于Nginx镜像启动容器:docker run-itd--name some-nginx–p 8080:80some-content-nginx;
浏览器访问网址http://10.10.70.65:8080,如果访问正常,说明该镜像可以正常运行;
步骤203:将制作好的镜像进行归档,并基于子系统版本进行镜像管理,在子系统版本更新时,通过DevOps流程,实现镜像的制作与更新;
步骤204:对于各个子系统需要的数据库初始化数据,采用将数据存储到镜像的方式,即制作好的Docker镜像,包含该子系统需要的初始化数据;
步骤205:各个子系统的开发人员编写镜像使用文档,描述基于该Docker镜像启动容器需要的参数配置,定义如何使用该镜像创建容器;
步骤206:参考下表1进行参数配置梳理,子系统镜像配置参数包括描述配置项名称、启动容器时需要配置的环境变量名称、环境变量参考值、是否必选,该参数注意事项等;
表1
步骤207:完成yum源仓库搭建;完成pip源仓库搭建;关闭各个服务器的防火墙;在各个节点安装Docker;配置Docker的参数,编写分布式部署Docker脚本;
步骤208:编写部署子系统的脚本,包括获取部署子系统的节点;获取子系统使用的Docker镜像版本与配置文件;将子系统镜像复制到指定节点;生成子系统容器启动需要的配置参数;在各节点启动容器;
步骤209:基于上述对其他子系统进行配置,即重复步骤208来编写部署其他子系统;
步骤210:整个系统的架构师或者负责人,梳理全部子系统的部署架构、各个子系统的依赖关系、参数配置,将各个子系统的依赖关系、参数配置以Ansible脚本的方式进行管理,即将各个子系统的依赖关系、参数配置基于代码实现自动化管理;
步骤211:交付人员梳理Docker运行需要的依赖包,并编写Docker的自动化部署脚本;
步骤212:整个系统的架构师或者负责人,基于分布式部署脚本,整理出相关的使用文档,指导交付人员使用。
实施例三
请参考图3,图3是本发明实施例提供的一种分布式系统快速部署系统的构成示意图,该系统包括初始化模块11、公共组件模块12、业务子系统模块13;
初始化模块11,用于完成分布式部署的初始化操作,初始化操作具体包括采集各个子系统部署在哪些节点,在各个节点部署Docker、关闭防火墙,选择某个节点部署镜像仓库;
公共组件模块12,用于完成公共组件的容器化部署,容器化部署具体包括完成公共组件的部署,并将公共组件的访问地址进行缓存,以保留业务子系统启动时需要的参数配置信息;
业务子系统模块13,用于完成业务相关的子系统的部署与配置,将各个子系统以容器的方式启动。
为了更进一步理解本发明实施例,需要说明的是,本实施例中,公共组件包括数据库、缓存、消息队列。参数配置信息包括配置项名称、启动容器时需要配置的环境变量名称、环境变量参考值、是否必选、参数注意事项。
实施例四
请参考图4-图6,图4是本发明实施例提供的又一种分布式系统快速部署方法流程图,本实施例描述的是5个子系统的分布式部署架构,图5是通过图4所示的方法实现分布式系统快速部署的原理框图,图6是图4所示的方法中步骤404、步骤405、步骤406的具体流程图;本实施例的部署方法包括:
步骤401:系统研发人员提供部署包,通常为一个tar.gz文件,该文件内包含了各个业务子系统的Docker镜像、Docker安装包及其依赖的软件包、编写的Ansible分布式部署脚本、各个子系统的配置文件;
步骤402:交付人员将tar.gz文件解压,修改其中的hosts.ini文件,将服务器IP地址配置到该文件;
步骤403:交付人员执行ansible-playbook命令,完成系统的分布式自动化部署;ansible-playbook命令参考如下所示:
[root@localhost sldeploy]#ansible-playbook-i inventory/smartlight/hosts.ini cluster.yml
步骤404:执行该命令后,系统会自动实现公共组件在各个节点的自动化安装配置,具体包括Docker、Ntp、Docker镜像仓库,关闭防火墙,服务器时区配置,yum安装源配置等;
步骤405:将各个子系统的镜像上传到镜像仓库;
步骤406:安装Ansible脚本的配置,根据各个子系统的启动顺序进行子系统的编写部署,例如首先启动数据库、缓存、消息队列等公共组件的部署,并将这些公共组件的访问地址进行缓存;
步骤407:启动其他业务相关的子系统;
步骤408:全部子系统启动完毕,分布式系统完成分布式快速部署。
为了更进一步理解本发明实施例,需要说明的是,本实施例中,子系统1、子系统2、子系统3以容器的方式运行在10.10.70.66服务器,子系统4、子系统5以容器的方式运行在10.10.70.67服务器,可以通过访问服务器地址,实现对分布式系统的访问。
步骤404、步骤405、步骤406为实现快速部署脚本编写流程:
编写分布式部署Docker脚本,该功能模块需要先完成yum源仓库搭建;完成pip源仓库搭建;关闭各个服务器的防火墙;在各个节点执行yum install安装Docker;配置Docker的参数。
编写部署子系统1的脚本,获取部署子系统1的节点,获取指定版本的子系统1镜像与配置文件,将子系统1镜像复制到指定节点;生成子系统1容器启动需要的配置参数,在各节点启动子系统1容器;
编写部署子系统2的脚本,获取部署子系统2的节点,获取指定版本的子系统2镜像与配置文件,将子系统2镜像复制到指定节点,生成子系统2容器启动需要的配置参数,在各节点启动子系统2容器;
编写部署子系统3的脚本,获取部署子系统3的节点,获取指定版本的子系统3镜像与配置文件,将子系统3镜像复制到指定节点,生成子系统3容器启动需要的配置参数,在各节点启动子系统3容器;
编写部署子系统4的脚本,获取部署子系统4的节点,获取指定版本的子系统4镜像与配置文件,将子系统4镜像复制到指定节点,生成子系统4容器启动需要的配置参数,在各节点启动子系统4容器;
编写部署子系统5的脚本,获取部署子系统5的节点,获取指定版本的子系统5镜像与配置文件,将子系统5镜像复制到指定节点,生成子系统5容器启动需要的配置参数,在各节点启动子系统5容器;
完成。
通过上述实施例可知,本发明提供的分布式系统快速部署方法及系统,至少实现了如下的有益效果:
1、本发明在各个子系统完成业务功能开发后,编写该子系统的镜像文件,用于制作Docker镜像,交付人员编写分布式部署脚本,包含多个子系统的参数配置、容器启动等功能,将分布式部署脚本Ansible与Docker容器技术结合,能够快速的完成分布式部署系统的部署,降低复杂业务系统的交付难度;
2、本发明基于当前通用的容器技术将多个业务系统进行打包,以镜像的方式标准化交付产物,可以隔离生产环境与研发环境不一致的问题;
3、本发明通过云计算Docker技术完成复杂分布式系统的快速部署与配置,能够加速软件交付,降低交付与运维复杂度;
4、本发明同时基于分布式部署脚本Ansible,实现分布式系统的灵活、自动化部署,加速项目交付;
5、本发明的分布式部署脚本采用Ansible,该脚本语言支持跨平台,可以支持在多个Linux发行版中实现分布式部署,能够适应多种不同的项目交付环境;
6、本发明的应用的交付采用业界标准的容器镜像进行交付,能够很好的隔离应用运行环境与项目交付环境,减少对项目交付环境的依赖;
7、本发明的参数配置数量降低,各个子系统的依赖参与由分布式部署脚本内部自动配置,通常情况下,只需要配置主机服务IP就可以完成复杂系统的分布部署;
8、本发明是通用的分布式系统快速部署方法,为研发人员如何制作镜像、编写Ansible脚本提供参考方法,同时指导交付人员如何使用Ansible部署脚本,降低交付复杂度,即描述了一个传统的应用如何制作镜像、Ansible脚本编写思路、交付人员如何使用等;
9、使用本发明的分布式系统快速部署方法及系统,交付人员只需要简单配置部署节点的IP地址,执行一条脚本命令就可以实现整个分布式系统的快速部署,不再需要进行复杂的参数配置,简单快捷。
虽然已经通过例子对本发明的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上例子仅是为了进行说明,而不是为了限制本发明的范围。本领域的技术人员应该理解,可在不脱离本发明的范围和精神的情况下,对以上实施例进行修改。本发明的范围由所附权利要求来限定。

Claims (10)

1.一种分布式系统快速部署方法,其特征在于,包括:
各个子系统的开发人员,梳理其负责的子系统配置参数并编写子系统的镜像文件,制作Docker镜像,测试该镜像是否正常运行,并将制作好的镜像进行归档,且基于子系统版本进行镜像管理;
对于各个子系统需要的数据库初始化数据,采用将数据存储到镜像的方式,即制作好的Docker镜像,包含该子系统需要的初始化数据;
各个子系统的开发人员编写镜像使用文档,描述基于该Docker镜像启动容器需要的参数配置,定义如何使用该镜像创建容器;
整个系统的架构师或者负责人,梳理全部子系统的部署架构、各个子系统的依赖关系、参数配置,将各个子系统的依赖关系、参数配置以Ansible脚本的方式进行管理,即将各个子系统的依赖关系、参数配置基于代码实现自动化管理;
交付人员梳理Docker运行需要的依赖包,并编写Docker的自动化部署脚本;
整个系统的架构师或者负责人,基于分布式部署脚本,整理出相关的使用文档,指导交付人员使用。
2.根据权利要求1所述的一种分布式系统快速部署方法,其特征在于,
所述子系统版本更新时,通过DevOps流程,实现Docker镜像的制作与更新。
3.根据权利要求1所述的一种分布式系统快速部署方法,其特征在于,
所述Docker镜像启动容器需要的参数包括配置项名称、启动容器时需要配置的环境变量名称、环境变量参考值、是否必选、参数注意事项。
4.根据权利要求1所述的一种分布式系统快速部署方法,其特征在于,
所述将各个子系统的依赖关系、参数配置基于代码实现自动化管理具体为:编写该业务系统的Ansible脚本,将各个子系统的相互依赖关系基于Ansible脚本进行管理。
5.根据权利要求4所述的一种分布式系统快速部署方法,其特征在于,所述Ansible脚本的具体开发流程如下:编写分布式部署Docker脚本、编写部署各个子系统的脚本。
6.根据权利要求5所述的一种分布式系统快速部署方法,其特征在于,所述编写分布式部署Docker脚本之前,还包括完成yum源仓库搭建;完成pip源仓库搭建;关闭各个服务器的防火墙;在各个节点安装Docker;配置Docker的参数。
7.根据权利要求5所述的一种分布式系统快速部署方法,其特征在于,所述编写部署各个子系统的脚本,包括:获取部署子系统的节点;获取子系统使用的Docker镜像版本与配置文件;将子系统镜像复制到指定节点;生成子系统容器启动需要的配置参数;在各节点启动容器。
8.一种分布式系统快速部署系统,其特征在于,包括初始化模块、公共组件模块、业务子系统模块;
初始化模块,用于完成分布式部署的初始化操作,所述初始化操作具体包括采集各个子系统部署在哪些节点,在各个节点部署Docker、关闭防火墙,选择某个节点部署镜像仓库;
公共组件模块,用于完成公共组件的容器化部署,所述容器化部署具体包括完成公共组件的部署,并将所述公共组件的访问地址进行缓存,以保留业务子系统启动时需要的参数配置信息;
业务子系统模块,用于完成业务相关的子系统的部署与配置,将各个子系统以容器的方式启动。
9.根据权利要求8所述的一种分布式系统快速部署系统,其特征在于,所述公共组件包括数据库、缓存、消息队列。
10.根据权利要求8所述的一种分布式系统快速部署系统,其特征在于,所述参数配置信息包括配置项名称、启动容器时需要配置的环境变量名称、环境变量参考值、是否必选、参数注意事项。
CN201810636618.5A 2018-06-20 2018-06-20 一种分布式系统快速部署方法及系统 Active CN108829409B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810636618.5A CN108829409B (zh) 2018-06-20 2018-06-20 一种分布式系统快速部署方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810636618.5A CN108829409B (zh) 2018-06-20 2018-06-20 一种分布式系统快速部署方法及系统

Publications (2)

Publication Number Publication Date
CN108829409A true CN108829409A (zh) 2018-11-16
CN108829409B CN108829409B (zh) 2022-03-04

Family

ID=64142794

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810636618.5A Active CN108829409B (zh) 2018-06-20 2018-06-20 一种分布式系统快速部署方法及系统

Country Status (1)

Country Link
CN (1) CN108829409B (zh)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107491329A (zh) * 2017-08-04 2017-12-19 上海携程商务有限公司 Docker镜像构建方法、设备、存储介质以及电子装置
CN109542470A (zh) * 2018-11-26 2019-03-29 成都四方伟业软件股份有限公司 配置、安装方法及配置装置
CN109710281A (zh) * 2018-12-28 2019-05-03 中科曙光国际信息产业有限公司 大数据平台的安装方法及装置
CN110209407A (zh) * 2019-06-12 2019-09-06 浪潮软件股份有限公司 一种大数据集群自动化部署系统及方法
CN110569044A (zh) * 2019-09-09 2019-12-13 山东浪潮通软信息科技有限公司 一种将应用部署到运行环境的方法、装置及系统
CN110795356A (zh) * 2019-11-01 2020-02-14 普元信息技术股份有限公司 基于Ansible实现软件一键式部署与自动化测试的系统及其方法
CN111078302A (zh) * 2019-11-19 2020-04-28 许昌许继软件技术有限公司 一种配网监控平台系统的自动化部署方法及终端
CN111176834A (zh) * 2019-12-09 2020-05-19 中国平安财产保险股份有限公司 自动伸缩策略运维方法、系统和可读存储介质
CN111400107A (zh) * 2020-04-21 2020-07-10 贵州新致普惠信息技术有限公司 一种数据库多主集群的自启恢复系统及方法
CN112015438A (zh) * 2020-07-29 2020-12-01 烽火通信科技股份有限公司 一种基于Ansible的轻量级容器化分布式系统与部署方法
CN112346752A (zh) * 2020-12-03 2021-02-09 江苏云坤信息科技有限公司 基于jenkins和K3S的软件环境快速部署方法
CN112363731A (zh) * 2020-11-11 2021-02-12 杭州飞致云信息科技有限公司 一种应用自动化部署方法、装置和计算机可读存储介质
CN113127150A (zh) * 2021-03-18 2021-07-16 同盾控股有限公司 云原生系统的快速部署方法、装置、电子设备和存储介质
CN116737174A (zh) * 2023-08-15 2023-09-12 中国兵器装备集团兵器装备研究所 一种基于开源鸿蒙系统的子系统自动生成工具及方法
CN117931248A (zh) * 2024-03-25 2024-04-26 杭州菲助科技有限公司 一种提高巨石应用部署效率的方法及装置
CN117931248B (zh) * 2024-03-25 2024-06-07 杭州菲助科技有限公司 一种提高巨石应用部署效率的方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3151121A1 (en) * 2015-10-02 2017-04-05 Nokia Solutions and Networks Oy Methods and apparatus to manage cloud resources
CN106648741A (zh) * 2016-10-18 2017-05-10 广州视睿电子科技有限公司 一种应用系统部署方法及装置
CN106843837A (zh) * 2016-12-21 2017-06-13 中电科华云信息技术有限公司 openstack组件容器化的构建方法
CN106873975A (zh) * 2016-12-30 2017-06-20 武汉默联股份有限公司 基于Docker的devops持续交付与自动化系统及方法
CN106936636A (zh) * 2017-03-15 2017-07-07 无锡华云数据技术服务有限公司 一种快速部署容器化的云计算测试平台的实现方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3151121A1 (en) * 2015-10-02 2017-04-05 Nokia Solutions and Networks Oy Methods and apparatus to manage cloud resources
CN106648741A (zh) * 2016-10-18 2017-05-10 广州视睿电子科技有限公司 一种应用系统部署方法及装置
CN106843837A (zh) * 2016-12-21 2017-06-13 中电科华云信息技术有限公司 openstack组件容器化的构建方法
CN106873975A (zh) * 2016-12-30 2017-06-20 武汉默联股份有限公司 基于Docker的devops持续交付与自动化系统及方法
CN106936636A (zh) * 2017-03-15 2017-07-07 无锡华云数据技术服务有限公司 一种快速部署容器化的云计算测试平台的实现方法

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107491329B (zh) * 2017-08-04 2021-03-16 上海携程商务有限公司 Docker镜像构建方法、设备、存储介质以及电子装置
CN107491329A (zh) * 2017-08-04 2017-12-19 上海携程商务有限公司 Docker镜像构建方法、设备、存储介质以及电子装置
CN109542470A (zh) * 2018-11-26 2019-03-29 成都四方伟业软件股份有限公司 配置、安装方法及配置装置
CN109710281A (zh) * 2018-12-28 2019-05-03 中科曙光国际信息产业有限公司 大数据平台的安装方法及装置
CN110209407A (zh) * 2019-06-12 2019-09-06 浪潮软件股份有限公司 一种大数据集群自动化部署系统及方法
CN110569044A (zh) * 2019-09-09 2019-12-13 山东浪潮通软信息科技有限公司 一种将应用部署到运行环境的方法、装置及系统
CN110569044B (zh) * 2019-09-09 2022-07-12 浪潮通用软件有限公司 一种将应用部署到运行环境的方法、装置及系统
CN110795356A (zh) * 2019-11-01 2020-02-14 普元信息技术股份有限公司 基于Ansible实现软件一键式部署与自动化测试的系统及其方法
CN110795356B (zh) * 2019-11-01 2023-05-12 普元信息技术股份有限公司 基于Ansible实现软件一键式部署与自动化测试的系统及其方法
CN111078302A (zh) * 2019-11-19 2020-04-28 许昌许继软件技术有限公司 一种配网监控平台系统的自动化部署方法及终端
CN111078302B (zh) * 2019-11-19 2023-08-11 许昌许继软件技术有限公司 一种配网监控平台系统的自动化部署方法及终端
CN111176834A (zh) * 2019-12-09 2020-05-19 中国平安财产保险股份有限公司 自动伸缩策略运维方法、系统和可读存储介质
CN111400107B (zh) * 2020-04-21 2023-03-03 贵州新致普惠信息技术有限公司 一种数据库多主集群的自启恢复系统及方法
CN111400107A (zh) * 2020-04-21 2020-07-10 贵州新致普惠信息技术有限公司 一种数据库多主集群的自启恢复系统及方法
CN112015438A (zh) * 2020-07-29 2020-12-01 烽火通信科技股份有限公司 一种基于Ansible的轻量级容器化分布式系统与部署方法
CN112363731A (zh) * 2020-11-11 2021-02-12 杭州飞致云信息科技有限公司 一种应用自动化部署方法、装置和计算机可读存储介质
CN112346752A (zh) * 2020-12-03 2021-02-09 江苏云坤信息科技有限公司 基于jenkins和K3S的软件环境快速部署方法
CN113127150A (zh) * 2021-03-18 2021-07-16 同盾控股有限公司 云原生系统的快速部署方法、装置、电子设备和存储介质
CN113127150B (zh) * 2021-03-18 2023-10-17 同盾控股有限公司 云原生系统的快速部署方法、装置、电子设备和存储介质
CN116737174A (zh) * 2023-08-15 2023-09-12 中国兵器装备集团兵器装备研究所 一种基于开源鸿蒙系统的子系统自动生成工具及方法
CN116737174B (zh) * 2023-08-15 2023-11-14 中国兵器装备集团兵器装备研究所 一种基于开源鸿蒙系统的子系统自动生成工具及方法
CN117931248A (zh) * 2024-03-25 2024-04-26 杭州菲助科技有限公司 一种提高巨石应用部署效率的方法及装置
CN117931248B (zh) * 2024-03-25 2024-06-07 杭州菲助科技有限公司 一种提高巨石应用部署效率的方法及装置

Also Published As

Publication number Publication date
CN108829409B (zh) 2022-03-04

Similar Documents

Publication Publication Date Title
CN108829409A (zh) 一种分布式系统快速部署方法及系统
US9411570B2 (en) Integrating software provisioning and configuration management
US8458658B2 (en) Methods and systems for dynamically building a software appliance
US9250672B2 (en) Cloning target machines in a software provisioning environment
US8326972B2 (en) Methods and systems for managing network connections in a software provisioning environment
US8417926B2 (en) Systems and methods for providing configuration management services from a provisioning server
US8572587B2 (en) Systems and methods for providing a library of virtual images in a software provisioning environment
US8402123B2 (en) Systems and methods for inventorying un-provisioned systems in a software provisioning environment
US9092243B2 (en) Managing a software appliance
US9124497B2 (en) Supporting multiple name servers in a software provisioning environment
US8612968B2 (en) Methods and systems for managing network connections associated with provisioning objects in a software provisioning environment
US8640122B2 (en) Systems and methods for abstracting software content management in a software provisioning environment
CN106850621A (zh) 一种基于容器云技术快速搭建Hadoop集群的方法
US8375387B2 (en) Product independent orchestration tool
US20100050169A1 (en) Methods and systems for providing remote software provisioning to machines
US20220229652A1 (en) Application Deployment Method, Apparatus, and System
CN106878334A (zh) 云的自动化部署系统和方法
CN110945480A (zh) 用于更新和加载应用程序的系统和方法
US11144292B2 (en) Packaging support system and packaging support method
WO2024077885A1 (zh) 容器集群的管理方法、装置、设备及非易失性可读存储介质
US8615758B2 (en) Combining system blueprints, functional layer, and software bits in parallel development of machines
US20220214928A1 (en) Workload Configuration Extractor
CN114968406A (zh) 一种插件管理方法、装置、电子设备及存储介质
US8561062B2 (en) Synchronizing changes made on self-replicated machines to the corresponding parent machines
Frampton et al. Apache mesos

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