CN108881476A - 区块链部署方法与系统 - Google Patents
区块链部署方法与系统 Download PDFInfo
- Publication number
- CN108881476A CN108881476A CN201810777427.0A CN201810777427A CN108881476A CN 108881476 A CN108881476 A CN 108881476A CN 201810777427 A CN201810777427 A CN 201810777427A CN 108881476 A CN108881476 A CN 108881476A
- Authority
- CN
- China
- Prior art keywords
- service
- node
- disposed
- specified
- 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.)
- Pending
Links
Classifications
-
- 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/2866—Architectures; Arrangements
- H04L67/30—Profiles
-
- 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/0803—Configuration setting
-
- 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/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
Abstract
本发明公开了区块链部署方法与系统。该服务部署方法包括:针对至少一个待部署节点,确定相应的配置文件模板,进而确定服务文件,其中,配置文件模板包括与至少一个待部署节点相关联的通信项目;根据指定的通信协议,向至少一个待部署节点传送服务文件,以使得至少一个待部署节点在接收到服务启动指令时,执行与服务操作指令相对应的操作。相较于传统方法,通过本发明的技术方案,提高了节点部署服务效率和便利性,避免了人工操作导致结果不一致的情况,并且能够减少了运维人员的学习成本。
Description
技术领域
本发明属于区块链领域,尤其涉及一种区块链部署方法与系统。
背景技术
区块链是利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全,生成不可篡改和不可伪造的分布式账本,建立互相信任的数据网络。
联盟链是一种区块链,其只针对特定某个群体的成员和有限的第三方。在联盟链内部,可以指定多个预选的节点为记账人,每个块的生成由所有的预选节点共同决定,其他接入节点可以参与交易,但不过问记账过程,其他第三方可以通过该区块链开放的API进行限定查询。为了获得更好的性能,联盟链对于共识或验证节点的配置和网络环境有一定要求。添加了准入机制,可以使得交易性能提高,避免由参次不齐的参与者产生的一些问题。
服务部署是软件开发、产品交付的重要环节,一般来说,会将服务程序部署到多台物理机器或者容器上。
因此,亟需一种能够对联盟链进行自动化部署的方法与系统。
发明内容
发明人将通过大量的实践发现,由于联盟链的特性,即节点的准入机制、节点独立完成数据持久化、共识状态的记录,难以使用统一的服务配置文件进行部署。对此,本发明提出了一种部署方法与系统,能够对指定的节点进行部署,同时大幅度提高服务部署效率和便利性,降低手工操作干预,避免人为因素导致不同节点上的误差。
本发明一方面提出了一种服务部署方法,包括:针对至少一个待部署节点,确定相应的配置文件模板,进而确定服务文件,其中,所述配置文件模板包括与所述至少一个待部署节点相关联的通信项目;根据指定的通信协议,向所述至少一个待部署节点传送所述服务文件,以使得所述至少一个待部署节点在接收到服务启动指令时,执行与所述服务操作指令相对应的操作。
本发明另一方面还提出了一种部署系统,其包括:位于指定网络中的至少一个待部署节点;以及部署装置,其被配置为通过指定的通信协议与所述至少一个待部署节点通信,其中,所述部署装置还被配置为针对所述至少一个待部署节点来确定服务文件,并将该服务文件传送到所述至少一个待部署节点处,以使得所述至少一个待部署节点在接收到来自所述部署装置的服务指令时,执行与所述服务指定相对应的操作。
本发明另一方面还提出了一种部署装置,包括:处理器;以及用于存储指令的存储器,当所述指令在执行时,使得所述处理器执行前述的服务部署方法。
本发明还提出了一种计算机可读存储介质,具有存储在其上的计算机可读程序指令,当所述指令被执行时,执行前述的服务部署方法。
相较于传统方法,通过本发明的技术方案,提高了节点部署服务效率和便利性,避免了人工操作导致结果不一致的情况。
附图说明
参考附图示出并阐明实施例。这些附图用于阐明基本原理,从而仅仅示出了对于理解基本原理必要的方面。这些附图不是按比例的。在附图中,相同的附图标记表示相似的特征。
图1a为依据本发明实施例的部署系统架构图;
图1b为依据本发明实施例的部署方法流程图;
图2为依据本发明实施例的节点服务升级的流程图;
图3a为依据本发明实施例的部署系统的网络架构图;
图3b为依据本发明另一实施例的部署系统的网络架构图。
具体实施方式
在以下优选的实施例的具体描述中,将参考构成本发明一部分的所附的附图。所附的附图通过示例的方式示出了能够实现本发明的特定的实施例。示例的实施例并不旨在穷尽根据本发明的所有实施例。可以理解,在不偏离本发明的范围的前提下,可以利用其他实施例,也可以进行结构性或者逻辑性的修改。因此,以下的具体描述并非限制性的,且本发明的范围由所附的权利要求所限定。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在本发明中,基于联盟链的架构,将节点分为三类:认证节点(CA)、验证节点(Validator)以及普通节点(peer)。具体而言,认证节点被配置为对联盟链网络中的节点的加入进行管理,并在产生交易时进行投票;验证节点则被配置为在产生交易时进行投票,但无法对联盟链上的节点加入进行管理;普通节点则被配置为参与交易,但不过问记账过程,即仅仅记录交易。
由于peer节点仅仅是记录交易,因此,本发明提出的方法针对于有权限进行投票的节点,即下文中的待部署节点均具有投票的权限。图1a为依据本发明实施例的部署系统架构图,图1b为依据本发明实施例的部署方法流程图。
如图所示,在部署系统架构中,部署装置M与多个联盟链网络中的待部署节点A1-An通信连接。部署装置M能够以指定的通信协议(譬如,SSH协议)与节点A1-An进行通信。可以理解的是,部署装置M可以是联盟链网络中的一个节点,也可以是独立于联盟链但可以与联盟链网络中的节点进行通信的装置。
结合图1a、图1b来对本发明的部署方法进行阐述。
步骤S101:添加待部署节点的指定通信权限
在该步骤中,部署装置M添加每个待部署节点的SSH权限,如此,部署装置M可以基于SSH协议来与每个待部署节点进行通信。可以理解的,如果需要与其它节点进行部署,则部署装置M同样需要添加对应节点的SSH权限。
步骤S102:针对待部署节点来确定配置文件模板
在该步骤中,部署装置M将针对待部署节点来确定相应的配置文件模板。譬如,部署装置M可以自行生成该配置文件模板,也可以基于待部署节点的特征参数从数据库中选出相应的配置文件模板。可以理解的,此处的配置文件模板也可以是适用于大部分联盟链节点的默认类型的模板。待部署节点的特征参数是指能够表示待部署节点的特性、类型、位置中的至少一种信息的参数。
在一种实施方式中,配置文件模板可以包括但不限于以下几类通信项目中的至少一个:待部署节点的公私钥、待部署节点加入通信集群的签名、待部署节点中validator节点信息。
步骤S103:基于配置文件模板生成服务文件。
在该步骤中,部署装置M将针对待部署节点来生成服务文件,譬如,基于待部署节点的特征参数,将适用于该待部署节点的参数填充进已确定的配置文件模板,进而生成可以发送到待部署节点的服务文件。换而言之,在此步骤,部署装置M基于待部署节点的特征参数,将填充该配置文件模板。这里的“填充”是指定部署装置将针对待部署节点来确定配置文件中的通信项目的具体值,并将相应的具体值与配置文件相结合,进而生成服务文件。这里的通信信息可以是前述的待部署节点的公私钥、待部署节点加入通信集群的签名、待部署节点中validator节点信息中的至少一个。
在一种实施方式中,服务文件还可以包括用于对服务进行指定操作的可执行程序,进而根据指定的参数,使得待部署节点能够实现服务安装、服务升级、服务回滚、服务移除、服务启动、服务停止等功能。
步骤S104:向待部署节点传送服务文件。
在该步骤中,部署装置M将已生成的服务文件经由SSH协议传送到各个待部署节点,从而使得待部署节点根据服务文件进行配置和/或执行相应的功能。
步骤S105:向待部署节点传送服务指令。
在该步骤中,部署装置M向待部署节点传送服务指令,使得待部署节点能够基于该服务指令启动相应的服务。譬如,待部署节点上的进程管理工具可以按照预先设置的启动命令执行。
图2为依据本发明实施例的节点服务升级的流程图。
步骤S201:停止执行第一服务
在该步骤中,节点在接收到来自部署装置M的指令(譬如,第一服务停止执行指令)后,将基于预设的停止命令来停止执行第一服务(例如,当前服务)。在一种实施方式中,节点上的进程管理工具按照预先设置的停止命令执行
步骤S202:安装用于升级第一服务的服务文件。
在该步骤中,节点响应于部署装置M的指令(譬如,升级第一服务执行指令),安装用于升级第一服务的服务文件。可以理解的,该服务文件中同样可以包括可执行程序和相应的配置文件。
步骤S203:选择指定的服务
在该步骤中,节点响应于部署装置M的指令(譬如,服务选择指令),选择将要运行的服务版本。可以理解的是,该指定的服务可以是升级后的第一服务,也可以是其它服务,譬如,该指定的服务可以是不同于第一服务的第二服务。
步骤S204:启动指定的服务。
在步骤中,节点响应于来自部署装置M的指令,启动指定的服务。在一个实施方式中,节点上的进程管理工具按照预先设置的启动命令执行。
可以理解的,当需要移除节点上已经部署的服务时,若服务正在运行,则响应于部署装置M的指令来执行服务停止,即,节点上的进程管理工具按照预先设置的停止命令执行;若服务并未运行,则可以执行服务移除。在执行服务移除过程中,可以选择性地移除节点上相关的服务文件和/或服务所产生的数据。
虽然上述操作均是节点响应于部署装置M的指令来执行的,但是在其它实施例中,上述步骤(譬如,步骤S201-S204中的至少一个步骤)也可以是节点自行执行,而无需响应于部署装置M的指令。另外,虽然上述实施例是基于联盟链来实现的,本领域技术人员能够理解的是,上述的部署方法同样适用于其他类型的通信结构,而不是局限于联盟链。
通过上述部署方法,提高了节点部署服务效率和便利性,避免了人工操作导致结果不一致的情况。
基于前述,本发明提出一种部署系统,该系统包括:部署装置M以及位于指定网络中的待部署节点A1-An,其中,部署装置M用于通过指定的协议(譬如,SSH协议)来与待部署节点A1-An通信。部署装置M针对待部署节点A1-An来确定服务文件,并将该服务文件传送到待部署节点A1-An处,其中,该服务文件包括配置文件模板。在一种实施方式中,该服务文件还包括可执行程序。部署装置M在传送完服务文件后,还向待部署节点A1-An发送服务操作指令,以使得待部署节点A1-An执行与服务操作指令相对应的操作,譬如,服务安装、服务升级、服务回滚、服务移除、服务启动、服务停止等。
在该部署系统中,部署装置M可以是与待部署节点A1-An位于同一个指定的网络中(如图3a所示),也可以独立于该指定网络但能够以指定的协议来与待部署节点A1-An进行通信(如图3b所示)。应当注意的是,虽然部署装置M可以是与待部署节点位于同一个指定的网络中(譬如,位于同一联盟链中),但部署装置M仍然能够通过指定的通信协议(譬如,SSH协议)来与待部署节点A1-An进行通信。
由于上述部署系统采用了SSH协议来进行部署,使得该部署系统能够兼容Ansible工具,极大地减少了运维人员的学习成本。
本发明还提出了一种部署装置,包括:处理器;以及存储器,其用于存储指令,当指令在执行时使得处理器执行前述的部署方法,在此不再赘述。
上述的部署方法的流程还代表机器可读指令,该机器可读指令包括由处理器执行的程序。该编程指令存储于有形计算机可读介质上,如硬盘、闪存、只读存储器(ROM)、光盘(CD)、数字通用光盘(DVD)、高速缓存器、随机访问存储器(RAM)和/或任何其他存储介质,在该存储介质上信息可以存储任意时间(例如,长时间,永久地,短暂的情况,临时缓冲,和/或信息的缓存)。如在此所用的,该术语有形计算机可读介质被明确定义为包括任意类型的计算机可读存储的信息。附加地或替代地,可利用编码指令(如计算机可读指令)实现附图中的示例过程,该编码指令存储于非暂时性计算机可读介质,在该存储介质信息可以存储任意时间。可以理解的,该计算机可读指令还可以存储在网络服务器中、云端平台上,以便于用户使用。
另外,尽管操作以特定顺序被描绘,但这并不应该理解为要求此类操作以示出的特定顺序或以相继顺序完成,或者执行所有图示的操作以获取期望结果。在某些情况下,多任务或并行处理会是有益的。同样地,尽管上述讨论包含了某些特定的实施细节,但这并不应解释为限制任何发明或权利要求的范围,而应解释为对可以针对特定发明的特定实施例的描述。本说明书中在分开的实施例的上下文中描述的某些特征也可以整合实施在单个实施例中。反之,在单个实施例的上下文中描述的各种特征也可以分离地在多个实施例或在任意合适的子组合中实施。
Claims (12)
1.一种服务部署方法,其特征在于,包括:
针对至少一个待部署节点,确定相应的配置文件模板,进而确定服务文件,其中,所述配置文件模板包括与所述至少一个待部署节点相关联的通信项目;
根据指定的通信协议,向所述至少一个待部署节点传送所述服务文件,以使得所述至少一个待部署节点在接收到服务操作指令时,执行与所述服务操作指令相对应的操作。
2.如权利要求1所述的方法,其特征在于,确定所述服务文件的过程包括:
基于所述待部署节点的特征参数,确定所述通信项目所对应的值,进而确定所述服务文件。
3.如权利要求1所述的方法,其特征在于,所述指定的通信协议是SSH协议。
4.如权利要求1所述的方法,其特征在于,所述服务文件还包括用于对指定的服务进行操作的可执行程序。
5.如权利要求1所述的方法,其特征在于,所述至少一个待部署节点均处于指定的网络中。
6.一种部署系统,其特征在于,包括:
位于指定网络中的至少一个待部署节点;以及
部署装置,其被配置为通过指定的通信协议与所述至少一个待部署节点通信,其中,所述部署装置还被配置为针对所述至少一个待部署节点来确定服务文件,并将该服务文件传送到所述至少一个待部署节点处,以使得所述至少一个待部署节点在接收到来自所述部署装置的服务指令时,执行与所述服务指令相对应的操作。
7.如权利要求6所述的部署系统,其特征在于,所述部署装置针对所述至少一个待部署节点而确定相应的配置文件模板,并通过填充所述配置文件模板来确定所述服务文件,其中,所述配置文件模板包括与所述至少一个待部署节点相关联的通信项目。
8.如权利要求6所述的部署系统,其特征在于,所述服务文件还包括用于对指定的服务进行操作的可执行程序。
9.如权利要求6所述的部署系统,其特征在于,所述指定的通信协议是SSH协议。
10.如权利要求6所述的部署系统,其特征在于,所述待部署节点还被配置为:
当接收到来自所述部署装置的第一服务停止指令时,停止执行所述第一服务;
当接收到来自所述部署装置的升级第一服务指令时,安装用于升级所述第一服务的服务文件。
11.一种部署装置,其特征在于,包括:
处理器;以及
存储器,其用于存储指令,当所述指令在执行时使得所述处理器执行如权利要求1至5的任一项所述的方法。
12.一种计算机可读存储介质,具有存储在其上的计算机可读程序指令,其特征在于,当所述指令被执行时,执行如权利要求1-5中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810777427.0A CN108881476A (zh) | 2018-07-16 | 2018-07-16 | 区块链部署方法与系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810777427.0A CN108881476A (zh) | 2018-07-16 | 2018-07-16 | 区块链部署方法与系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108881476A true CN108881476A (zh) | 2018-11-23 |
Family
ID=64302296
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810777427.0A Pending CN108881476A (zh) | 2018-07-16 | 2018-07-16 | 区块链部署方法与系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108881476A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109889386A (zh) * | 2019-03-05 | 2019-06-14 | 众安信息技术服务有限公司 | 区块链部署方法与系统 |
CN110224854A (zh) * | 2019-05-06 | 2019-09-10 | 深圳壹账通智能科技有限公司 | 区块链节点的部署方法、装置及存储介质 |
CN111046055A (zh) * | 2019-12-11 | 2020-04-21 | 杭州趣链科技有限公司 | 一种区块链全局配置的变更方法、设备和存储介质 |
CN112148306A (zh) * | 2019-06-26 | 2020-12-29 | 普天信息技术有限公司 | 微服务运维管理系统和方法 |
CN112333010A (zh) * | 2020-10-23 | 2021-02-05 | 苏州浪潮智能科技有限公司 | 一种支持高可用环境自动配置的方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104780058A (zh) * | 2014-01-13 | 2015-07-15 | 联想(北京)有限公司 | 一种电子设备配置的方法及系统 |
CN104965726A (zh) * | 2015-03-10 | 2015-10-07 | 腾讯科技(深圳)有限公司 | 配置更新方法、装置及系统 |
CN107341025A (zh) * | 2016-05-03 | 2017-11-10 | 北京京东尚科信息技术有限公司 | 应用更新方法和装置 |
US20180063698A1 (en) * | 2016-08-24 | 2018-03-01 | Deutsche Telekom Ag | Profile server for providing a communication profile for communication via a communication network |
-
2018
- 2018-07-16 CN CN201810777427.0A patent/CN108881476A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104780058A (zh) * | 2014-01-13 | 2015-07-15 | 联想(北京)有限公司 | 一种电子设备配置的方法及系统 |
CN104965726A (zh) * | 2015-03-10 | 2015-10-07 | 腾讯科技(深圳)有限公司 | 配置更新方法、装置及系统 |
CN107341025A (zh) * | 2016-05-03 | 2017-11-10 | 北京京东尚科信息技术有限公司 | 应用更新方法和装置 |
US20180063698A1 (en) * | 2016-08-24 | 2018-03-01 | Deutsche Telekom Ag | Profile server for providing a communication profile for communication via a communication network |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109889386A (zh) * | 2019-03-05 | 2019-06-14 | 众安信息技术服务有限公司 | 区块链部署方法与系统 |
CN110224854A (zh) * | 2019-05-06 | 2019-09-10 | 深圳壹账通智能科技有限公司 | 区块链节点的部署方法、装置及存储介质 |
CN110224854B (zh) * | 2019-05-06 | 2022-04-12 | 深圳壹账通智能科技有限公司 | 区块链节点的部署方法、装置及存储介质 |
CN112148306A (zh) * | 2019-06-26 | 2020-12-29 | 普天信息技术有限公司 | 微服务运维管理系统和方法 |
CN111046055A (zh) * | 2019-12-11 | 2020-04-21 | 杭州趣链科技有限公司 | 一种区块链全局配置的变更方法、设备和存储介质 |
CN112333010A (zh) * | 2020-10-23 | 2021-02-05 | 苏州浪潮智能科技有限公司 | 一种支持高可用环境自动配置的方法及装置 |
CN112333010B (zh) * | 2020-10-23 | 2022-06-21 | 苏州浪潮智能科技有限公司 | 一种支持高可用环境自动配置的方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108881476A (zh) | 区块链部署方法与系统 | |
JP6882527B2 (ja) | ビュー変更プロトコルを終了するためのシステムおよび方法 | |
CN107301536B (zh) | 资源转移方法及装置 | |
CN108881232B (zh) | 业务系统的登录访问方法、装置、存储介质和处理器 | |
CN106330576B (zh) | 容器化微服务自动伸缩及迁移调度的方法、系统和设备 | |
WO2019184164A1 (zh) | 自动部署Kubernetes从节点的方法、装置、终端设备及可读存储介质 | |
JP6923674B2 (ja) | ビュー変更プロトコルを終了するためのシステムおよび方法 | |
CN107579848A (zh) | 实用拜占庭容错共识机制中动态更改共识节点的方法 | |
CN106708597A (zh) | 一种基于Openstack创建集群环境的方法、装置及系统 | |
CN110784495B (zh) | 基于区块链的大数据集群系统的发现与配置信息管理方法 | |
CN104683303B (zh) | App管理方法 | |
CN112527912B (zh) | 基于区块链网络的数据处理方法、装置及计算机设备 | |
US9852220B1 (en) | Distributed workflow management system | |
CN110601896B (zh) | 一种基于区块链节点的数据处理方法以及设备 | |
EP2954648A1 (fr) | Procédé pour router des données, programme d'ordinateur, contrôleur de réseau et réseaux associés | |
US9264339B2 (en) | Hosted network management | |
CN112069550B (zh) | 一种基于智能合约方式的电子合同存证系统 | |
CN109493051B (zh) | 可动态进行账户分配及迁移的主链加并行多子链系统架构 | |
CN110187831B (zh) | 区块链联盟链的区块数据存储系统及方法 | |
US20220326940A1 (en) | Service Upgrade Method, Apparatus, and System | |
CN109889386A (zh) | 区块链部署方法与系统 | |
CN111131318B (zh) | 一种去中心化的密钥管理分发方法、系统及存储介质 | |
CN108459863A (zh) | 充电设施软件升级方法、装置、设备、系统及存储介质 | |
CN109150981B (zh) | 区块链网络组网方法、装置、设备及计算机可读存储介质 | |
CN109213572A (zh) | 一种基于虚拟机的可信度确定方法及服务器 |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20181123 |
|
WD01 | Invention patent application deemed withdrawn after publication |