WO2022160904A1 - 自动化部署区块链网络的方法、装置及云计算平台 - Google Patents

自动化部署区块链网络的方法、装置及云计算平台 Download PDF

Info

Publication number
WO2022160904A1
WO2022160904A1 PCT/CN2021/133145 CN2021133145W WO2022160904A1 WO 2022160904 A1 WO2022160904 A1 WO 2022160904A1 CN 2021133145 W CN2021133145 W CN 2021133145W WO 2022160904 A1 WO2022160904 A1 WO 2022160904A1
Authority
WO
WIPO (PCT)
Prior art keywords
blockchain
current
configuration information
blockchain network
computing
Prior art date
Application number
PCT/CN2021/133145
Other languages
English (en)
French (fr)
Inventor
张翼翔
李廷鹏
刘勤
Original Assignee
蚂蚁区块链科技(上海)有限公司
支付宝(杭州)信息技术有限公司
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 蚂蚁区块链科技(上海)有限公司, 支付宝(杭州)信息技术有限公司 filed Critical 蚂蚁区块链科技(上海)有限公司
Publication of WO2022160904A1 publication Critical patent/WO2022160904A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • G06F16/1824Distributed file systems implemented using Network-attached Storage [NAS] architecture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures

Definitions

  • One or more embodiments of this specification relate to the field of blockchain, and in particular, to an automated deployment method, device, and cloud computing platform of a blockchain network.
  • Blockchain technology also known as distributed ledger technology, is a decentralized distributed database technology that is characterized by decentralization, openness, transparency, and immutability. Specifically, each piece of data in the blockchain network will be broadcast to all blockchain nodes, and each blockchain node can store the same data through corresponding storage resources.
  • One or more embodiments of this specification provide a method, apparatus, and cloud computing platform for automatically deploying a blockchain network.
  • a cloud computing platform includes a device for automatically deploying a blockchain network and several computing resources, and the blockchain network includes several blockchain nodes.
  • the device for automatically deploying the blockchain network can determine the computing resources used to deploy any current blockchain node among several blockchain nodes; provide the determined computing resources with an executable file corresponding to the current blockchain node, and trigger the computing resource to execute the executable file.
  • the computing resource that receives the executable file is realized by executing the executable file: obtaining the installation package of the blockchain service and the configuration information of the current blockchain node, and starting the blockchain service according to the installation package of the blockchain service, This completes the deployment of the current blockchain node containing the configuration information.
  • the configuration information includes a private key and a digital certificate for secure communication.
  • the configuration information includes at least one of the following items of information: the unique identifier of the current blockchain node, the IP address of the current blockchain node, and the current blockchain node other than the current blockchain node.
  • the computing resource includes a computing device.
  • the computing resources include virtual computing nodes deployed on computing devices.
  • the cloud computing platform further includes a key management service device and a digital certificate service device.
  • the device for automatically deploying the blockchain network is further configured to send a key service request to the key management service device, so that the key management service returns the private key and certificate signature of the current blockchain node to the device for automatically deploying the blockchain network request; and, configured to send the certificate signing request of the current blockchain node to the digital certificate service device, so that the digital certificate service device returns the digital certificate of the current blockchain node to the device for automatically deploying the blockchain network; wherein, the current region
  • the configuration information of the blockchain node includes the private key and digital certificate of the current blockchain node.
  • the cloud computing platform further includes an object storage service device.
  • the device for automatically deploying the blockchain network is also configured to generate the configuration information of the current blockchain node, and sends the configuration information to the object storage service device, so that the object storage service device returns the configuration information to the device for automatically deploying the blockchain network and is configured to generate an executable file corresponding to the current blockchain node, and the executable file includes the storage address.
  • the computing resource is specifically implemented by executing the executable file: sending a data query request including the storage address to the object storage service device, so that the object storage service device returns the configuration information to the computing resource.
  • the computing resource is further implemented by executing the executable file: mounting a file system based on several storage devices; wherein, the current blockchain node stores data through the file system.
  • the configuration information includes at least one of the following items of information: storage protocol indication information, which is used to indicate the storage protocol that the current blockchain node needs to use when storing data through the file system;
  • storage resource indication information is used to indicate the size of the storage resources that the current blockchain node needs to occupy when storing data through the file system.
  • the device for automatically deploying the blockchain network is specifically configured to establish a secure connection with the computing resource, and send a control signal to the computing resource through the established secure connection, so that the computing resource executes the executable file.
  • the apparatus for automatically deploying a blockchain network is further configured to receive a blockchain network deployment request from a terminal device; wherein the blockchain network deployment request at least includes the number of blockchain nodes.
  • a method for automatically deploying a blockchain network includes: firstly determining a computing resource for deploying any current blockchain node among several blockchain nodes; then providing the computing resource with an executable file corresponding to the current blockchain node, and triggering the computing resource to execute the executable file.
  • the computing resource is implemented by executing the executable file: obtaining the installation package of the blockchain service, and obtaining the configuration information of the current blockchain node; starting the blockchain service according to the installation package, and completing the deployment of the current blockchain node, the current blockchain node includes this configuration information.
  • the configuration information includes a private key and a digital certificate for secure communication.
  • the configuration information includes at least one of the following items of information: the unique identifier of the current blockchain node, the Internet Protocol (IP) address of the current blockchain node, and the unique identifiers and/or IP addresses of other blockchain nodes other than the current blockchain node among the several blockchain nodes.
  • IP Internet Protocol
  • the computing resource includes a computing device.
  • the computing resources include virtual computing nodes deployed on computing devices.
  • the method is executed by a device for automatically deploying a blockchain network deployed in a cloud computing platform, where the cloud computing platform further includes a key management service device and a digital certificate service device.
  • the method further includes: sending a key service request to the key management service device, causing the key management service device to generate a private key of the current blockchain node and a certificate sign request (CSR), and to automatically deploy the block
  • CSR certificate sign request
  • the device of the chain network returns the private key and the certificate signature request; sends the certificate signature request to the digital certificate service device, so that the digital certificate service device generates the digital certificate of the current blockchain node, and returns to the device that automatically deploys the blockchain network the digital certificate.
  • the configuration information of the current blockchain node includes the private key and the digital certificate.
  • the cloud computing platform further includes an object storage service device.
  • the method further includes: generating configuration information of the current blockchain node; sending the configuration information of the current blockchain node to the object storage service device, so that the object storage service device stores the configuration information of the current blockchain node, and sends the configuration information of the current blockchain node to the automated deployment area.
  • the device of the blockchain network returns the storage address of the configuration information; generates an executable file corresponding to the current blockchain node, and the executable file includes the storage address.
  • the computing resource is specifically implemented by executing the executable file: sending a data query request including the storage address to the object storage service device, so that the object storage service device returns the configuration information of the current blockchain node to the computing resource.
  • the computing resource is further implemented by executing the executable file: mounting a file system based on several storage devices; wherein, the current blockchain node stores data through the file system.
  • the configuration file further includes storage information, where the storage information includes at least one of the following items of information: storage protocol indication information, which is used to indicate the current block chain node when storing data through the file system.
  • storage protocol indication information which is used to indicate the current block chain node when storing data through the file system.
  • the storage protocol to be used; the storage resource indication information is used to indicate the size of the storage resources that the current blockchain node needs to occupy when storing data through the file system.
  • triggering the computing resource to execute the executable file specifically includes: establishing a secure connection with the computing resource; sending a control signal to the computing resource through the established secure connection, so that the computing resource executes the executable file. executable file.
  • the method further includes: receiving a blockchain network deployment request from a terminal device; wherein the blockchain network deployment request at least includes the information of the blockchain network nodes included in the blockchain network. quantity.
  • a third aspect provides an apparatus for automatically deploying a blockchain network, the apparatus being used to implement the method provided in any one of the second aspects.
  • a computing device including a processor, when the processor executes computer instructions/codes stored in a memory, the method of any one of the second aspects is implemented.
  • a fifth aspect provides a computer-readable storage medium on which computer instructions/codes are stored, and when the computer instructions/codes are executed in a computing device, the computing device implements any one of the second aspects. method described.
  • a blockchain network when a blockchain network needs to be deployed, for each current blockchain node among several blockchain nodes included in the blockchain network, first determine the method for deploying the blockchain network.
  • the computing resource of the current blockchain node and then provide the computing resource with an executable file corresponding to the current blockchain node, and trigger the computing resource to execute the executable file, so that the computing resource realizes:
  • Obtaining blockchain services The installation package and the configuration information of the current blockchain node, start the blockchain service according to the installation package of the blockchain service, and complete the deployment of the current blockchain node containing the configuration information. There is no need for manual intervention in the process of deploying the blockchain network, which is more efficient.
  • FIG. 1 is a schematic diagram of the system framework of the technical solution provided in the embodiment of this specification.
  • FIG. 2 is a schematic flowchart of a method for automatically deploying a blockchain network provided in an embodiment of this specification
  • FIG. 3 is a schematic flowchart of another method for automatically deploying a blockchain network provided in the embodiment of this specification;
  • FIG. 4 is a schematic structural diagram of an apparatus for automatically deploying a blockchain network provided in an embodiment of the specification.
  • FIG. 1 is a system frame diagram of the technical solution provided in the embodiment of this specification.
  • computing tasks and storage tasks are usually separated in a cloud computing platform, and computing tasks are performed through several dedicated computing devices, and storage tasks are performed through several dedicated storage devices.
  • several storage devices can be used to build a file system, such as a Network Attached Storage (NAS) file system; after a computing device or a virtual computing node deployed on the computing device successfully mounts the file system, the file system can be to store data.
  • NAS Network Attached Storage
  • various service devices for implementing specific services can also be deployed in the cloud computing platform.
  • a user may request the cloud computing platform to deploy a blockchain network including several blockchain nodes through a terminal device connected to the cloud computing platform.
  • a large amount of manual intervention is usually required by the staff, such as manually creating/applying for the configuration information of the blockchain nodes, manually triggering the computing resource startup area.
  • Blockchain services, etc. A large amount of manual intervention will lead to the inability to quickly and accurately complete the deployment of the blockchain network, resulting in low efficiency.
  • the embodiments of this specification provide at least one method, device and cloud computing for automatically deploying the blockchain network platform.
  • the cloud computing platform includes at least a device for automatically deploying a blockchain network and several computing resources, optionally including one or more of a key management service device, a digital certificate service device, and an object storage service device.
  • a device for automatically deploying the blockchain network can be used to first determine the current blockchain node for deploying the current blockchain node among several blockchain nodes included in the blockchain network.
  • the computing resource of the blockchain node and then provide the computing resource with the executable file corresponding to the current blockchain node, and trigger the computing resource to execute the executable file, so that the computing resource realizes: Obtain the installation of the blockchain service package, and obtain the configuration information of the current blockchain node, and start the blockchain service according to the installation package of the blockchain service, thereby completing the deployment of the current blockchain node.
  • the current blockchain node that has completed the configuration includes the configuration information.
  • each device included in the cloud computing platform may be in the form of hardware, software or firmware.
  • each device may be an entity computing device, or may be a virtual computing node in a cloud computing platform.
  • the computer program corresponding to the apparatus may be stored in a computer-readable medium, or the computer program corresponding to the apparatus may be used as one or more instructions/codes on the computer-readable medium The transmission is performed so that when the computer program corresponding to the device is executed by the computing resource, the computing resource realizes various functions of the device.
  • FIG. 2 is a schematic flowchart of a method for automatically deploying a blockchain network provided in an embodiment of this specification.
  • the execution body of the method may be a computing device, a virtual computing node deployed on the computing device, or a cloud computing platform including several computing devices.
  • the method may at least include: Step 201 , determining computing resources for deploying the current blockchain node.
  • the current blockchain node is any blockchain node included in the blockchain network to be deployed.
  • Step 202 Provide the computing resource with an executable file corresponding to the current blockchain node, and trigger the computing resource to execute the executable file.
  • the computing resource when the computing resource executes the executable file, it realizes: obtains the installation package of the blockchain service, and obtains the configuration information of the current blockchain node; starts the blockchain service according to the installation package of the blockchain service, and completes the Deploy the current blockchain node with configuration information.
  • the following exemplarily describes the process of automatically deploying a blockchain network in conjunction with the system framework shown in FIG. 1 .
  • FIG. 3 is a flowchart of another method for automatically deploying a blockchain network provided in the embodiment of this specification.
  • the method for automatically deploying a blockchain network may include part or all of steps 301 to 3145 shown in FIG. 3 .
  • Step 301 the apparatus for automatically deploying the blockchain network receives a blockchain network deployment request from a terminal device.
  • the blockchain network deployment request is used to request the deployment of the blockchain network in the cloud computing platform.
  • the blockchain network deployment request is further used to indicate the number of blockchain nodes included in the blockchain network, and the size of storage resources that each blockchain node needs to use.
  • Step 302 for each current blockchain node included in the blockchain network, the apparatus for automatically deploying the blockchain network determines computing resources for deploying the current blockchain node.
  • N blockchain nodes are in one-to-one correspondence, and each computing resource is used to deploy its corresponding blockchain node.
  • the apparatus for automatically deploying the blockchain network may create a virtual computing node on any computing device in the cloud computing platform, and the created virtual computing node may be determined as a computing resource for deploying the blockchain node.
  • the apparatus for automatically deploying the blockchain network may select a virtual computing node from among them as the computing resource for deploying the current blockchain node.
  • the apparatus for automatically deploying the blockchain network may determine any computing device included in the cloud computing platform as the computing resource for deploying the current blockchain node.
  • Step 303 the device for automatically deploying the blockchain network sends a key service request to the key management service device.
  • the key management service device generates the private key and CSR of the current blockchain node in response to the key service request from the device that automatically deploys the blockchain network, and executes step 304 to send the current block to the blockchain network service device The private key and CSR of the chain node.
  • Step 305 the blockchain network deployment service device sends a CSR to the digital certificate service device.
  • the digital certificate service device generates a digital certificate of the current blockchain node in response to the CSR from the device that automatically deploys the blockchain network, and executes step 306 to send the digital certificate of the current blockchain node to the device that automatically deploys the blockchain network. Certificate.
  • Step 307 the device for automatically deploying the blockchain network generates configuration information of the current blockchain node.
  • the configuration information of the current blockchain node includes the private key and digital certificate of the current blockchain node, and the private key and the digital certificate are used to support the current blockchain node to communicate securely.
  • the configuration information of the current blockchain node may also include connection configuration information, where the connection configuration information is used to support the current blockchain node to establish communication connections with other blockchain nodes in the blockchain network.
  • the connection configuration information may include any one or more of the following items of information: the IP address of the current blockchain node, the unique identifier of the current blockchain node, and any other information in the blockchain network other than the current blockchain node.
  • the unique identifier can be a string generated by the deployment of the blockchain network, and different blockchain nodes in the blockchain network can discover each other and establish a communication connection through their respective unique identifiers.
  • the configuration information of the current blockchain node may further include storage configuration information, where the storage configuration information is used to support the current blockchain node to store data through the file system.
  • the storage configuration information may include any one or more of the following items of information: storage protocol indication information, which is used to indicate the storage protocol that the current blockchain node needs to use when storing data through the file system; storage resource indication Information used to indicate the size of the storage resources that the current blockchain node needs to use when storing data through the file system.
  • the configuration information may also include: the encryption algorithm and decryption algorithm used when the current blockchain node exchanges data with other blockchain nodes in the blockchain network; or, used to indicate the encryption algorithm and the decryption algorithm. Instructions for the decryption algorithm.
  • Step 308 the device for automatically deploying the blockchain network sends the configuration information of the current blockchain node to the object storage service device.
  • the object storage service device may store the configuration information of the current blockchain node through the NAS file system or other file systems deployed in the cloud computing platform. It should be noted that the object storage service device can store the configuration information of the current blockchain node as a whole storage object in the NAS file system or other file systems deployed in the cloud computing platform, and obtain the corresponding storage object in the corresponding storage object.
  • the storage address in the file system that is, the storage address where the configuration information is obtained.
  • Step 309 the object storage service device sends the storage address of the configuration information to the device for automatically deploying the blockchain network.
  • the apparatus for automatically deploying the blockchain network generates an executable file containing the storage address.
  • the device that automatically deploys the blockchain network can maintain the template of the executable file in advance according to the tasks to be performed by the computing resources, and by inserting the storage address of the configuration information into the template of the executable file, the corresponding current block can be obtained.
  • the executable file of the chain node can maintain the template of the executable file in advance according to the tasks to be performed by the computing resources, and by inserting the storage address of the configuration information into the template of the executable file, the corresponding current block can be obtained.
  • the executable file of the chain node can maintain the template of the executable file in advance according to the tasks to be performed by the computing resources, and by inserting the storage address of the configuration information into the template of the executable file, the corresponding current block can be obtained.
  • step 311 the apparatus for automatically deploying the blockchain network sends the executable file to the computing resource.
  • the apparatus for automatically deploying a blockchain network may send an executable file corresponding to the current blockchain node to the computing resource based on the connection configuration information of the computing resource (eg, IP address or other identifiers that can be used to identify the computing resource).
  • the blockchain network deployment service may send an executable file corresponding to the current blockchain node to the computing resource through the established secure connection after completing the establishment of a secure connection with the computing resource in the subsequent process.
  • the device for automatically deploying the blockchain network establishes a secure connection with the computing resource.
  • the secure connection may include, but is not limited to, a Secure Shell (SSH) connection.
  • SSH Secure Shell
  • the device for automatically deploying the blockchain network may be a java-based service/device; the computing resource may use a LINUX operating system or an operating system based on the LINUX system kernel, so that the computing resource supports SSH connection.
  • the device for automatically deploying the blockchain network can establish an SSH connection with the computing resource through a Java Secure Channel (JSCH), and then remotely control the computing resource used to deploy the current blockchain node based on the SSH connection.
  • JSCH Java Secure Channel
  • step 313 the apparatus for automatically deploying the blockchain network sends a control signal to the computing resource through the secure connection.
  • steps 3141 to 3145 are specifically implemented by executing the executable file received by the computing resource used to deploy the current blockchain node.
  • the file system is mounted.
  • step 3142 a data query request including the storage address is sent to the object storage service device.
  • step 3143 configuration information from the object storage service is received.
  • the installation package of the blockchain service is obtained.
  • the executable file may include the storage address of the installation package of the blockchain service.
  • the storage address of the blockchain service is downloaded from a corresponding storage service device (such as an object storage service device) according to the storage address. Installation package.
  • step 3145 the computing resource starts the blockchain service according to the installation package of the blockchain service.
  • the computing resources can be used as a blockchain node included in the blockchain network, and the blockchain node contains its own configuration information. That is, through the aforementioned steps 302 to 3145, the deployment of a single blockchain node included in the blockchain network can be completed.
  • any current blockchain node in the blockchain network can communicate with the blockchain network according to the connection configuration information contained in its configuration information.
  • Other blockchain nodes in the network establish communication connections, thereby forming a blockchain network composed of multiple blockchain nodes.
  • Any current blockchain node in the blockchain network can, according to the predetermined encryption algorithm and decryption algorithm (or the encryption algorithm and decryption algorithm indicated in the configuration information), as well as the private key and digital certificate of the current blockchain node, Interact data with other blockchain nodes in the blockchain network.
  • any current blockchain node in the blockchain network can store the data through its own mounted file system. Specifically, according to the storage protocol indication information contained in the configuration information, the current blockchain node can use the corresponding storage protocol to store data in the file system mounted to it. In addition, it should be noted that when the current blockchain node stores data in its mounted file system for the first time, it can also apply for storage resources of a corresponding size from the mounted file system according to the storage resource indication information contained in the configuration information. ; After that, every time the current blockchain node stores data in the file system it mounts, the data will be stored in the storage resources applied by the current blockchain node.
  • the apparatus for automatically deploying the blockchain network may send the configuration information of the current blockchain node to the computing resources used to deploy the current blockchain node .
  • the executable file corresponding to the current blockchain node does not need to contain the aforementioned storage address, and the computing resources used to deploy the current blockchain node do not need to obtain the configuration information of the current blockchain node from the object storage service device.
  • the private key and digital certificate of the current blockchain node are both generated by the device for automatically deploying the blockchain network.
  • the device for automatically deploying the blockchain network does not need to exchange information with other service devices such as a key management service device and a digital certificate service device.
  • the apparatus for automatically deploying the blockchain network can be deployed on any target computing device in the computing cluster, and each computing device in the computing cluster is Have mutually independent non-volatile storage resources.
  • the computing resource used to deploy the blockchain node is any computing device in the computing cluster.
  • the computing resources used to deploy the current blockchain node do not need to mount the file system, but use its own non-volatile storage resources to store the data of the current blockchain node.
  • one or more of the key management service device, the digital certificate service device and the object storage service device may be implemented by a dedicated computing device or computing cluster.
  • the digital certificate service device may be a certificate authority (Certificate Authority, CA) center of a third party, and the CA center is composed of one or more computing devices.
  • CA Certificate Authority
  • the computing resource can also send the corresponding execution result to the device that automatically deploys the blockchain network, and notify the device that automatically deploys the blockchain network that the computing resource has completed the current block. Deployment of chain nodes.
  • the device for automatically deploying the blockchain network may also register the deployed blockchain network with the corresponding platform management service device, so as to manage the blockchain network.
  • the embodiments of this specification also provide an apparatus for automatically deploying a blockchain network, where the blockchain network includes several blockchain nodes.
  • the apparatus includes: a resource determination unit 401 for determining computing resources for deploying any current blockchain node among the several blockchain nodes; a node control unit 402 for reporting to the The computing resource provides an executable file corresponding to the current blockchain node, and triggers the computing resource to execute the executable file; wherein, the computing resource is implemented by executing the executable file: obtaining a blockchain service and obtain the configuration information of the current block chain node; start the block chain service according to the installation package of the block chain service, and complete the deployment of the current block chain node; wherein, the current block chain node
  • the blockchain node includes the configuration information.
  • the configuration information includes a private key and a digital certificate for secure communication
  • the computing resources include computing devices.
  • the computing resources include virtual machines deployed on computing devices.
  • the configuration information includes connection configuration information.
  • the connection information includes at least one of the following items of information: the unique identifier of the current blockchain node, the IP address of the current blockchain node, and the number of blockchain nodes other than the current area Unique identifiers and/or IP addresses of blockchain nodes other than blockchain nodes.
  • the apparatus is deployed in a cloud computing platform, and the cloud computing platform further includes a key management service apparatus and a digital certificate service apparatus.
  • the device for automatically deploying a blockchain network further includes: a key application unit 403, configured to send a key service request to the key management service device, so that the key management service device generates the current blockchain The private key and certificate signature request of the node, and return the private key and the certificate signature request to the device for automatically deploying the blockchain network; the certificate application unit 404 is configured to send the digital certificate service device to the The certificate signing request enables the digital certificate service device to generate the digital certificate of the current blockchain node, and returns the digital certificate to the device for automatically deploying the blockchain network.
  • the configuration information includes the private key and the digital certificate, and the private key and the digital certificate are used to support the current blockchain node to perform secure communication.
  • the cloud computing platform further includes an object storage service device.
  • the apparatus for automatically deploying a blockchain network further includes: a configuration management unit 405, configured to generate configuration information of the current blockchain node; and a storage management unit 406, configured to send the configuration to the object storage service device information, so that the object storage service device stores the configuration information, and returns the storage address of the configuration information to the device for automatically deploying the blockchain network; the script generation unit 407 is used to generate a corresponding An executable file of a blockchain node; wherein the executable file includes the storage address.
  • the computing resource is specifically implemented by executing the executable file: sending a data query request including the storage address to the object storage service device, so that the object storage service device sends the configuration to the computing resource information.
  • the computing resource is further implemented by executing the executable file: mounting a file system built based on several storage devices.
  • the current blockchain node stores data through the file system.
  • the configuration information includes at least one of the following items of information: storage protocol indication information, which is used to indicate that the current blockchain node needs to use when storing data through the file system storage protocol; storage resource indication information, which is used to indicate the size of the storage resources that the current blockchain node needs to occupy when storing data through the file system.
  • the node control unit 402 is specifically configured to: establish a secure connection with the computing resource; send a control signal to the computing resource through the established secure connection, so that the computing resource Execute the executable.
  • it further includes: a request receiving unit 408, configured to receive a blockchain network deployment request from a terminal device; wherein the blockchain network deployment request at least includes The number of blockchain nodes included
  • the embodiment of this specification also provides a computing device, including a processor, when the processor executes the computer instructions/codes stored in the memory, the processor implements the apparatus for automatically deploying the blockchain network service in any of the embodiments of this specification method of execution.
  • the memory may be located in the computing device, or may be located outside the computing device.
  • the embodiments of this specification also provide a computer-readable storage medium on which computer instructions/codes are stored.
  • the computing device executes any one of the embodiments of this specification.
  • the functions described in this specification may be implemented in hardware, software, firmware, or any combination thereof.
  • the computer program corresponding to these functions can be stored in a computer-readable medium or transmitted as one or more instructions/codes on the computer-readable medium, so that the computer program corresponding to these functions can be executed by a computer
  • the method executed by the apparatus for automatically deploying the blockchain network service in any embodiment of the present invention is implemented by a computer.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种自动化部署区块链网络的方法、装置及云计算平台。云计算平台中包括自动化部署区块链网络的装置和若干计算资源,区块链网络包括若干区块链节点。自动化部署区块链网络的装置,配置为确定用于部署若干区块链节点中任一当前区块链节点的计算资源,向确定的计算资源提供对应于当前区块链节点的可执行文件,并触发该计算资源执行该可执行文件。接收该可执行文件的计算资源,配置为通过执行该可执行文件实现:获取区块链服务的安装包,以及获取当前区块链节点的配置信息;根据区块链服务的安装包,启动区块链服务,完成部署包含配置信息的当前区块链节点。

Description

自动化部署区块链网络的方法、装置及云计算平台 技术领域
本说明书一个或多个实施例涉及区块链领域,尤其涉及区块链网络的自动化部署方法、装置及云计算平台。
背景技术
区块链技术也被称为分布式账本技术,是一种去中心化的分布式数据库技术,其特点是去中心化、公开透明且不可篡改。具体地说,区块链网络中的每条数据都会被广播到全部的区块链节点,每个区块链节点均可通过相应的存储资源存储相同的数据。
部署区块链网络时,往往需要工作人员进行大量的人工干预,即需要工作人员对用于部署区块链节点的计算资源进行大量的手动操作。
希望有一种新的技术方案,以期能够更加自动化的完成部署区块链网络,降低人工干预程度。
发明内容
本说明书一个或多个实施例中提供了一种自动化部署区块链网络的方法、装置及云计算平台。
第一方面,提供了一种云计算平台,云计算平台包括自动化部署区块链网络的装置和若干计算资源,该区块链网络包括若干区块链节点。其中,自动化部署区块链网络的装置可以确定用于部署若干区块链节点中任一当前区块链节点的计算资源;向确定的计算资源提供对应于当前区块链节点的可执行文件,并触发该计算资源执行该可执行文件。接收到可执行文件的计算资源通过执行该可执行文件实现:获取区块链服务的安装包以及当前区块链节点的配置信息,并根据区块链服务的安装包启动该区块链服务,从而完成部署包含配置信息的当前区块链节点。
在一种可能的实施方式中,该配置信息包括用于进行安全通信的私钥和数字证书。
在一种可能的实施方式中,该配置信息包括以下各项信息中的至少一项:当前区块链节点的唯一标识、当前区块链节点的IP地址,以及若干区块链节点中除当前区块链节点以外的其它区块链节点的唯一标识和/或IP地址。
在一种可能的实施方式中,该计算资源包括计算设备。
在一种可能的实施方式中,该计算资源包括部署在计算设备上的虚拟计算节点。
在一种可能的实施方式中,云计算平台中还包括密钥管理服务装置和数字证书服务装置。自动化部署区块链网络的装置,还配置为向密钥管理服务装置发送密钥服务请求,使密钥管理服务向自动化部署区块链网络的装置返回当前区块链节点的私钥和证书签名请求;以及,配置为向数字证书服务装置发送当前区块链节点的证书签名请求,使数字证书服务装置向自动化部署区块链网络的装置返回当前区块链节点的数字证书;其中,当前区块链节点的配置信息包括当前区块链节点的私钥和数字证书。
在一种可能的实施方式中,云计算平台中还包括对象存储服务装置。自动化部署区块链网络的装置,还配置生成当前区块链节点的配置信息,并向对象存储服务装置发送该配置信息,使对象存储服务装置向自动化部署区块链网络的装置返回该配置信息的存储地址;以及配置为生成对应于当前区块链节点的可执行文件,该可执行文件中包括该存储地址。其中,该计算资源通过执行该可执行文件具体实现:向对象存储服务装置发送包含该存储地址的数据查询请求,使对象存储服务装置向该计算资源返回该配置信息。
在一种可能的实施方式中,该计算资源还通过执行该可执行文件实现:挂载基于若干存储设备搭建的文件系统;其中,当前区块链节点通过该文件系统存储数据。
在一种可能的实施方式中,该配置信息包括以下各项信息中的至少一项:存储协议指示信息,用于指示当前区块链节点通过该文件系统存储数据时所需采用的存储协议;存储资源指示信息,用于指示当前区块链节点通过该文件系统存储数据时所需占用的存储资源的大小。
在一种可能的实施方式中,自动化部署区块链网络的装置,具体配置为与该计算资源建立安全连接,并通过已建立的安全连接向该计算资源发送控制信号,使该计算资源执行该可执行文件。
在一种可能的实施方式中,自动化部署区块链网络的装置,还配置为接收来自终端设备的区块链网络部署请求;其中,该区块链网络部署请求至少包括区块链网络所包含的区块链节点的数量。
第二方面,提供了一种自动化部署区块链网络的方法,该区块链网络包括若干区块链节点。该方法包括:首先确定用于部署若干区块链节点中任一个当前区块链节点的计算资源;然后向该计算资源提供对应于当前区块链节点的可执行文件,并触发该计算资 源执行该可执行文件。其中,该计算资源通过执行该可执行文件实现:获取区块链服务的安装包,以及获取当前区块链节点的配置信息;根据该安装包启动该区块链服务,完成部署当前区块链节点,当前区块链节点包括该配置信息。
在一种可能的实施方式中,该配置信息包括用于进行安全通信的私钥和数字证书。
在一种可能的实施方式中,该配置信息包括以下各项信息中的至少一项:当前区块链节点的唯一标识、当前区块链节点的网际互连协议(Internet Protocol,IP)地址,以及该若干区块链节点中除当前区块链节点以外的其它区块链节点的唯一标识和/或IP地址。
在一种可能的实施方式中,该计算资源包括计算设备。
在一种可能的实施方式中,该计算资源包括部署在计算设备上的虚拟计算节点。
在一种可能的实施方式中,该方法由部署在云计算平台中的自动化部署区块链网络的装置执行,云计算平台中还包括密钥管理服务装置和数字证书服务装置。该方法还包括:向密钥管理服务装置发送密钥服务请求,使密钥管理服务装置生成当前区块链节点的私钥和证书签名请求(certificate sign request,CSR),并且向自动化部署区块链网络的装置返回该私钥和证书签名请求;向数字证书服务装置发送该证书签名请求,使数字证书服务装置生成当前区块链节点的数字证书,并且向自动化部署区块链网络的装置返回该数字证书。其中,当前区块链节点的配置信息包括该私钥和该数字证书。
在一种可能的实施方式中,云计算平台中还包括对象存储服务装置。该方法还包括:生成当前区块链节点的配置信息;向对象存储服务装置发送当前区块链节点的配置信息,使对象存储服务装置存储当前区块链节点的配置信息,并且向自动化部署区块链网络的装置返回该配置信息的存储地址;生成对应于当前区块链节点的可执行文件,该可执行文件中包括该存储地址。其中,该计算资源通过执行该可执行文件具体实现:向对象存储服务装置发送包含该存储地址的数据查询请求,使对象存储服务装置向该计算资源返回当前区块链节点的配置信息。
在一种可能的实施方式中,该计算资源还通过执行该可执行文件实现:挂载基于若干存储设备搭建的文件系统;其中,当前区块链节点通过该文件系统存储数据。
在一种可能的实施方式中,配置文件还包括存储信息,该存储信息包括以下各项信息中的至少一项:存储协议指示信息,用于指示当前区块链节点通过文件系统存储数据时所需采用的存储协议;存储资源指示信息,用于指示当前区块链节点通过文件系统存 储数据时所需占用的存储资源的大小。
在一种可能的实施方式中,触发该计算资源执行该可执行文件,具体包括:与该计算资源建立安全连接;通过已建立的安全连接向该计算资源发送控制信号,使该计算资源执行该可执行文件。
在一种可能的实施方式中,还包括:接收来自终端设备的区块链网络部署请求;其中,所述区块链网络部署请求至少包括所述区块链网络所包含的区块链接节点的数量。
第三方面,提供了一种自动化部署区块链网络的装置,该装置用于实现第二方面中任一项所提供的方法。
第四方面,提供了一种计算设备,包括处理器,所述处理器执行存储器中存储的计算机指令/代码时,实现第二方面中任一项所述的方法。
第五方面,提供了一种计算机可读存储介质,其上存储有计算机指令/代码,当所述计算机指令/代码在计算设备中执行时,所述计算设备实现第二方面中任一项所述的方法。
通过本说明书实施例中提供的技术方案,当需要部署区块链网络时,可以针对该区块链网络所包含若干区块链节点中的每个当前区块链节点,首先确定用于部署该当前区块链节点的计算资源,然后向该计算资源提供对应于当前区块链节点的可执行文件,并触发该计算资源执行该可执行文件,从而使该计算资源实现:获取区块链服务的安装包以及当前区块链节点的配置信息,并根据区块链服务的安装包启动该区块链服务,完成部署包含配置信息的当前区块链节点。部署区块链网络的过程中无需进行人工干预,效率更高。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本说明书实施例中提供的技术方案的系统框架示意图;
图2为本说明书实施例中提供的一种自动化部署区块链网络的方法的流程示意图;
图3为本说明书实施例中提供的另一种自动化部署区块链网络的方法的流程示意图;
图4为说明书实施例中提供的一种自动化部署区块链网络的装置的结构示意图。
具体实施方式
下面结合附图,对本说明书所提供的各个非限制性实施例进行详细描述。
图1为本说明书实施例中提供的技术方案的系统框架图。如图1所示,云计算平台中通常将计算任务和存储任务分离,通过若干专用的计算设备来执行计算任务,通过若干专用的存储设备来执行存储任务。其中,可以利用若干存储设备搭建文件系统,比如网络附属存储(Network Attached Storage,NAS)文件系统;计算设备或者部署在计算设备上的虚拟计算节点成功挂载该文件系统之后,可通过该文件系统来存储数据。此外,依赖于业务需求,云计算平台中还可以部署各种用于实现特定业务的服务装置。
在一种可能的技术方案中,用户可以通过连接到云计算平台的终端设备,请求云计算平台部署包含若干区块链节点的区块链网络。实现时,确定用于部署区块链网络的若干计算资源后,通常还需要工作人员进行大量的人工干预,例如通过工作人员手动创建/申请区块链节点的配置信息、手动触发计算资源启动区块链服务等。大量的人工干预将导致无法快速且准确的完成部署区块链网络,效率较低。
为了降低区块链网络部署过程中的人工干预程度,从而更加高效的完成对区块链网络的部署,本说明书实施例中至少提供了一种自动化部署区块链网络的方法、装置及云计算平台。其中,云计算平台中至少包括自动化部署区块链网络的装置以及若干计算资源,可选地包括密钥管理服务装置、数字证书服务装置以及对象存储服务装置中的一项或多项。当需要部署区块链网络时,可以通过自动化部署区块链网络的装置,针对该区块链网络所包含若干区块链节点中的每个当前区块链节点,首先确定用于部署该当前区块链节点的计算资源,然后向该计算资源提供对应于当前区块链节点的可执行文件,并触发该计算资源执行该可执行文件,使该计算资源实现:获取区块链服务的安装包,以及获取当前区块链节点的配置信息,并根据区块链服务的安装包启动该区块链服务,从而完成对当前区块链节点的部署。其中完成配置的当前区块链节点包括该配置信息。
需要说明的是,云计算平台包括的各个装置可以是硬件、软件或者固件的形式。具体地说,各个装置可以是实体的计算设备,也可以是云计算平台中的虚拟计算节点。使用软件实现前述的任一装置时,可以将该装置所对应的计算机程序存储在计算机可读介质中,或者将该装置所对应的计算机程序作为计算机可读介质上的一个或多个指令/代码进行传输,以便该装置所对应的计算机程序被计算资源执行时,计算资源实现该装置的 各项功能。
图2为本说明书实施例中提供的一种自动化部署区块链网络的方法的流程示意图。该方法的执行主体可以是计算设备,部署在计算设备上的虚拟计算节点或者是包含若干计算设备的云计算平台。如图2所示,该方法至少可以包括:步骤201,确定用于部署当前区块链节点的计算资源。
其中,当前区块链节点是待部署的区块链网络所包含的任一区块链节点。
步骤202,向该计算资源提供对应于当前区块链节点的可执行文件,并触发该计算资源执行该可执行文件。
其中,该计算资源执行该可执行文件时实现:获取区块链服务的安装包,以及获取当前区块链节点的配置信息;根据区块链服务的安装包,启动该区块链服务,完成部署包含配置信息的当前区块链节点。
通过对区块链网络包含的每个区块链节点均执行步骤201和步骤202,即可完成自动化部署区块链网络。
下面结合图1所示的系统框架示例性描述自动化部署区块链网络的过程。
图3为本说明书实施例中提供的另一种自动化部署区块链网络的方法的流程图。其中,自动化部署区块链网络的方法可以包括如图3所示步骤301至步骤3145中的部分或全部。
步骤301,自动化部署区块链网络的装置接收来自终端设备的区块链网络部署请求。
区块链网络部署请求用于请求在云计算平台中部署区块链网络。可选地,区块链网络部署请求还用于指示该区块链网络包含的区块链节点的数量,以及每个区块链节点各自需要使用的存储资源的大小。
步骤302,对于区块链网络包括的每个当前区块链节点,自动化部署区块链网络的装置确定用于部署当前区块链节点的计算资源。
换而言之,当用户通过终端设备请求云计算平台部署包含N个区块链节点的区块链网络时,自动化部署区块链网络的装置需要确定出N个计算资源,N个计算资源与N个区块链节点一一对应,每个计算资源各自用于部署其对应的区块链节点。
具体地,自动化部署区块链网络的装置可以在云计算平台中的任一计算设备上创建虚拟计算节点,所创建的虚拟计算节点可以被确定为用于部署区块链节点的计算资源。 或者,云计算平台所包括的若干计算设备上已经创建了若干虚拟计算节点,自动化部署区块链网络的装置可以从中选择一个虚拟计算节点作为用于部署当前区块链节点的计算资源。或者,自动化部署区块链网络的装置可以将云计算平台所包含的任一计算设备,确定为用于部署当前区块链节点的计算资源。
步骤303,自动化部署区块链网络的装置向密钥管理服务装置发送密钥服务请求。
密钥管理服务装置响应于来自自动化部署区块链网络的装置的密钥服务请求,生成当前区块链节点的私钥和CSR,并执行步骤304,向区块链网络服务装置发送当前区块链节点的私钥和CSR。
步骤305,区块链网络部署服务装置向数字证书服务装置发送CSR。
数字证书服务装置响应于来自自动化部署区块链网络的装置的CSR,生成当前区块链节点的数字证书,并执行步骤306,向自动化部署区块链网络的装置发送当前区块链节点的数字证书。
步骤307,自动化部署区块链网络的装置生成当前区块链节点的配置信息。
当前区块链节点的配置信息中包括当前区块链节点的私钥和数字证书,该私钥和该数字证书用于支持当前区块链节点进行安全通信。
当前区块链节点的配置信息还可以包括连接配置信息,该连接配置信息用于支持当前区块链节点与区块链网络中的其它区块链节点建立通信连接。该连接配置信息可以包括以下各项信息中的任意一项或多项:当前区块链节点的IP地址、当前区块链节点的唯一标识、区块链网络中除当前区块链节点以外的每个区块链节点的IP地址、区块链网络中除当前区块链节点以外的每个区块链节点的唯一标识。其中,唯一标识可以是由区块链网络部署生成的字符串,区块链网络中的不同区块链节点之间能够通过各自的唯一标识相互发现并建立通信连接。
当前区块链节点的配置信息中还可以包括存储配置信息,该存储配置信息用于支持当前区块链节点通过文件系统存储数据。其中,该存储配置信息可以包括以下各项信息中的任意一项或多项:存储协议指示信息,用于指示当前区块链节点通过文件系统存储数据时所需采用的存储协议;存储资源指示信息,用于指示当前区块链节点通过文件系统存储数据时需要使用的存储资源的大小。
当前区块链节点的配置信息中还可以包括其它信息。举例来说,配置信息中还可以包括:当前区块链节点与区块链网络中的其它区块链节点交互数据时所需采用的加密算 法和解密算法;或者,用于指示该加密算法和解密算法的指示信息。
步骤308,自动化部署区块链网络的装置向对象存储服务装置发送当前区块链节点的配置信息。
对象存储服务装置可通过NAS文件系统或者部署在云计算平台中的其它文件系统存储当前区块链节点的配置信息。需要说明的是,对象存储服务装置可以将当前区块链节点的配置信息作为一个整体的存储对象,存储到NAS文件系统或者部署在云计算平台中的其它文件系统,并获得该存储对象在相应文件系统中的存储地址,即获得该配置信息的存储地址。
步骤309,对象存储服务装置向自动化部署区块链网络的装置发送该配置信息的存储地址。
在步骤310,自动化部署区块链网络的装置生成包含该存储地址的可执行文件。
自动化部署区块链网络的装置可以根据计算资源所需执行的任务,预先维护可执行文件的模板,通过向可执行文件的模板中插入该配置信息的存储地址,即可获得对应于当前区块链节点的可执行文件。
在步骤311,自动化部署区块链网络的装置向该计算资源发送该可执行文件。
自动化部署区块链网络的装置可以基于该计算资源的连接配置信息(例如IP地址或者能够用于标识该计算资源的其它标识)向该计算资源发送对应于当前区块链节点的可执行文件。或者,区块链网络部署服务可以在后续过程中完成与计算资源建立安全连接之后,通过已建立的安全连接向该计算资源发送对应于当前区块链节点的可执行文件。
在步骤312,自动化部署区块链网络的装置与计算资源建立安全连接。
该安全连接可以包括但不限于安全外壳协议(Secure Shell,SSH)连接。具体而言,自动化部署区块链网络的装置可以是一个基于java的服务/装置;计算资源可以采用LINUX操作系统或者基于LINUX系统内核的操作系统,使计算资源支持SSH连接。如此,自动化部署区块链网络的装置可以通过Java安全通道(Java Secure Channel,JSCH)与该计算资源建立SSH连接,然后基于SSH连接远程控制用于部署当前区块链节点的计算资源。
具体地,在步骤313,自动化部署区块链网络的装置通过安全连接向该计算资源发送控制信号。
用于部署当前区块链节点的计算资源响应于来自自动化部署区块链网络的装置的控制信号,执行步骤314,执行其接收的可执行文件。
具体地,用于部署当前区块链节点的计算资源通过对其接收的可执行文件的执行,具体实现如下步骤3141至步骤3145。
在步骤3141,挂载文件系统。
在步骤3142,向对象存储服务装置发送包含存储地址的数据查询请求。
在步骤3143,接收来自对象存储服务的配置信息。
在步骤3144,获取区块链服务的安装包。其中,可执行文件中可以包括区块链服务的安装包的存储地址,计算资源执行可执行文件时,根据该存储地址从相应的存储服务装置(比如对象存储服务装置)下载区块链服务的安装包。
在步骤3145,计算资源根据区块链服务的安装包,启动区块链服务。
启动区块链服务后的计算资源,即可作为区块链网络所包含的一个区块链节点,该区块链节点包含自身的配置信息。即,通过前述步骤302至步骤3145,可以完成对区块链网络所包含的单个区块链节点的部署。
可以理解,完成部署区块链网络所包含的每个区块链节点之后,区块链网络中任意的当前区块链节点即可根据其配置信息中包含的连接配置信息,与区块链网络中的其它区块链节点建立通信连接,从而形成由多个区块链节点组成的区块链网络。
区块链网络中任意的当前区块链节点,可以根据预定的加密算法和解密算法(或者是配置信息中指示的加密算法和解密算法),以及当前区块链节点的私钥和数字证书,与区块链网络中的其它区块链节点交互数据。
区块链网络接收到待存储的数据时,区块链网络中任意的当前区块链节点,可以通过其自身挂载的文件系统来存储该数据。具体地,当前区块链节点可根据配置信息中包含的存储协议指示信息,采用相应的存储协议向其挂载的文件系统存储数据。此外需要说明的是,当前区块链节点在首次向其挂载的文件系统存储数据时,还可以根据配置信息中包含的存储资源指示信息,向其挂载的文件系统申请相应大小的存储资源;之后,当前区块链节点每次向其挂载的文件系统存储数据时,数据将会被存储至当前区块链节点申请的存储资源中。
在一些实施例中,不同于如图3所示实施例中的是,自动化部署区块链网络的装置 可以将当前区块链节点的配置信息发送至用于部署当前区块链节点的计算资源。相应的,对应于当前区块链节点的可执行文件无需包含前述的存储地址,用于部署当前区块链节点的计算资源无需从对象存储服务装置获取当前区块链节点的配置信息。
在一些实施例中,不同于如图3所示实施例中的是,当前区块链节点的私钥、数字证书均由自动化部署区块链网络的装置生成。相应的,自动化部署区块链网络的装置无需与密钥管理服务装置、数字证书服务装置等其它服务装置进行信息交互。
在一些实施例中,不同于如图3所示实施例的是,自动化部署区块链网络的装置可以部署在计算集群中的任一目标计算设备上,该计算集群中的每个计算设备均具有相互独立的非易失性存储资源。用于部署区块链节点的计算资源为该计算集群中的任一计算设备。相应的,用于部署当前区块链节点的计算资源无需挂载文件系统,而是使用其自身具有的非易失性存储资源来存储当前区块链节点的数据。
在一些实施例中,不同于如图3所示实施例的是,密钥管理服务装置、数字证书服务装置以及对象存储服务装置中的一个或多个,可以通过专用的计算设备或计算集群来实现。比如数字证书服务装置可以是第三方的证书授权(CertificateAuthority,CA)中心,CA中心由一个或多个计算设备组成。
需要说明的是,计算资源启动区块链服务之后,还可以向自动化部署区块链网络的装置发送相应的执行结果,向自动化部署区块链网络的装置通知该计算资源已经完成对当前区块链节点的部署。接着,自动化部署区块链网络的装置还可以将完成部署的区块链网络注册到相应的平台管理服务装置,以便对该区块链网络进行管理。
与前述方法实施例基于相同的构思,本说明书实施例中还提供的一种自动化部署区块链网络的装置,该区块链网络包括若干区块链节点。如图4所示,该装置包括:资源确定单元401,用于确定用于部署所述若干区块链节点中任一当前区块链节点的计算资源;节点控制单元402,用于向所述计算资源提供对应于所述当前区块链节点的可执行文件,并触发所述计算资源执行所述可执行文件;其中,所述计算资源通过执行所述可执行文件实现:获取区块链服务的安装包,以及获取所述当前区块链节点的配置信息;根据所述区块链服务的安装包启动所述区块链服务,完成部署所述当前区块链节点;其中,所述当前区块链节点包括所述配置信息。
在一种可能的实施方式中,所述配置信息包括用于进行安全通信的私钥和数字证书
在一种可能的实施方式中,计算资源包括计算设备。
在一种可能的实施方式中,计算资源包括部署在计算设备上的虚拟机。
在一种可能的实施方式中,所述配置信息包括连接配置信息。该连接信息包括以下各项信息中的至少一项:所述当前区块链节点的唯一标识、所述当前区块链节点的IP地址,以及所述若干区块链节点中除所述当前区块链节点以外的其它区块链节点的唯一标识和/或IP地址。
在一种可能的实施方式中,所述装置部署在云计算平台中,所述云计算平台中还包括密钥管理服务装置和数字证书服务装置。所述自动化部署区块链网络的装置还包括:密钥申请单元403,用于向所述密钥管理服务装置发送密钥服务请求,使所述密钥管理服务装置生成所述当前区块链节点的私钥和证书签名请求,并且向所述自动化部署区块链网络的装置返回所述私钥和所述证书签名请求;证书申请单元404,用于向所述数字证书服务装置发送所述证书签名请求,使所述数字证书服务装置生成所述当前区块链节点的数字证书,并且向所述自动化部署区块链网络的装置返回所述数字证书。其中,所述配置信息包括所述私钥和所述数字证书,所述私钥和所述数字证书用于支持当前区块链节点进行安全通信。
在一种可能的实施方式中,所述云计算平台中还包括对象存储服务装置。所述自动化部署区块链网络的装置还包括:配置管理单元405,用于生成所述当前区块链节点的配置信息;存储管理单元406,用于向所述对象存储服务装置发送所述配置信息,使所述对象存储服务装置存储所述配置信息,并且向所述自动化部署区块链网络的装置返回所述配置信息的存储地址;脚本生成单元407,用于生成对应于所述当前区块链节点的可执行文件;其中,所述可执行文件中包括所述存储地址。其中,所述计算资源通过执行所述可执行文件具体实现:向所述对象存储服务装置发送包含所述存储地址的数据查询请求,使所述对象存储服务装置向所述计算资源发送所述配置信息。
在一种可能的实施方式中,所述计算资源还通过执行所述可执行文件实现:挂载基于若干存储设备搭建的文件系统。其中,所述当前区块链节点通过所述文件系统存储数据。
在一种可能的实施方式中,所述配置信息包括以下各项信息中的至少一项:存储协议指示信息,用于指示所述当前区块链节点通过所述文件系统存储数据时所需采用的存储协议;存储资源指示信息,用于指示所述当前区块链节点通过所述文件系统存储数据时所需占用的存储资源的大小。
在一种可能的实施方式中,所述节点控制单元402具体用于:与所述计算资源建立安全连接;通过已建立的所述安全连接向所述计算资源发送控制信号,使所述计算资源执行所述可执行文件。
在一种可能的实施方式中,还包括:请求接收单元408,用于接收来自终端设备的区块链网络部署请求;其中,所述区块链网络部署请求至少包括所述区块链网络所包含的区块链接节点的数量
本说明书实施例中还提供了一种计算设备,包括处理器,所述处理器执行存储器中存储的计算机指令/代码时,实现本说明书任意一个实施例中由自动化部署区块链网络服务的装置执行的方法。其中,存储器可以位于该计算设备中,也可以位于该计算设备外。
本说明书实施例中还提供了一种计算机可读存储介质,其上存储有计算机指令/代码,当所述计算机指令/代码在计算设备中执行时,所述计算设备执行本说明书任意一个实施例中由自动化部署区块链网络服务的装置执行的方法。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本说明书所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能所对应的计算机程序存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令/代码进行传输,以便这些功能所对应的计算机程序被计算机执行时,通过计算机实现本发明任意一个实施例中由自动化部署区块链网络服务的装置执行的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例中相同、相似的部分互相参见即可,每个实施例中重点说明的都是与其它实施例的不同之处。尤其,对于装置实施例和云计算平台而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本 发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。

Claims (23)

  1. 一种云计算平台,所述云计算平台中包括自动化部署区块链网络的装置和计算资源,所述区块链网络包括若干区块链节点;其中,
    所述自动化部署区块链网络的装置,配置为确定用于部署所述若干区块链节点中任一当前区块链节点的计算资源;向所述计算资源提供对应于所述当前区块链节点的可执行文件,并触发所述计算资源执行所述可执行文件;
    所述计算资源配置为通过执行所述可执行文件实现:获取区块链服务的安装包,以及获取所述当前区块链节点的配置信息;根据所述区块链服务的安装包,启动所述区块链服务,完成部署所述当前区块链节点,所述当前区块链节点包括所述配置信息。
  2. 根据权利要求1所述的云计算平台,其中,所述配置信息包括用于进行安全通信的私钥和数字证书。
  3. 根据权利要求1所述的云计算平台,其中,所述配置信息包括以下各项信息中的至少一项:所述当前区块链节点的唯一标识、所述当前区块链节点的IP地址,以及所述若干区块链节点中除所述当前区块链节点以外的其它区块链节点的唯一标识和/或IP地址。
  4. 根据权利要求1-3中任一项所述的云计算平台,其中,所述计算资源包括计算设备,或者,所述计算资源包括部署在计算设备上的虚拟计算节点。
  5. 根据权利要求1-3中任一项所述的云计算平台,其中,所述云计算平台中还包括密钥管理服务装置和数字证书服务装置;
    所述自动化部署区块链网络的装置,还配置为向所述密钥管理服务装置发送密钥服务请求,使所述密钥管理服务向所述自动化部署区块链网络的装置返回所述当前区块链节点的私钥和证书签名请求;以及,配置为向所述数字证书服务装置发送所述证书签名请求,使所述数字证书服务装置向所述自动化部署区块链网络的装置返回所述当前区块链节点的数字证书;其中,所述配置信息包括所述私钥和所述数字证书,所述私钥和所述数字证书用于所述当前区块链节点进行安全通信。
  6. 根据权利要求5所述的云计算平台,其中,所述云计算平台中还包括对象存储服务装置;其中,
    所述自动化部署区块链网络的装置,还配置生成所述配置信息,并向所述对象存储服务装置发送所述配置信息,使所述对象存储服务装置向所述自动化部署区块链网络的装置返回所述配置信息的存储地址;以及配置为生成对应于所述当前区块链节点的可执行文件,所述可执行文件中包括所述存储地址;
    所述计算资源还配置为通过执行所述可执行文件具体实现:向所述对象存储服务装置发送包含所述存储地址的数据查询请求,使所述对象存储服务装置向所述计算资源返回所述配置信息。
  7. 根据权利要求1-3中任一项所述的云计算平台,其中,所述计算资源还配置为通过执行所述可执行文件实现:挂载基于若干存储设备搭建的文件系统;其中,所述当前区块链节点通过所述文件系统存储数据。
  8. 根据权利要求7所述的云计算平台,其中,所述配置信息包括以下各项信息中的至少一项:
    存储协议指示信息,用于指示所述当前区块链节点通过所述文件系统存储数据时所需采用的存储协议;
    存储资源指示信息,用于指示所述当前区块链节点通过所述文件系统存储数据时所需占用的存储资源的大小。
  9. 根据权利要求1-3中任一项所述的云计算平台,其中,所述自动化部署区块链网络的装置,具体配置为与所述计算资源建立安全连接,并通过所述安全连接向所述计算资源发送控制信号,使所述计算资源执行所述可执行文件。
  10. 根据权利要求1-3中任一项所述的云计算平台,其中,
    所述自动化部署区块链网络的装置,还配置为接收来自终端设备的区块链网络部署请求;其中,所述区块链网络部署请求至少包括所述区块链网络所包含的区块链节点的数量。
  11. 一种自动化部署区块链网络的方法,所述区块链网络包括若干区块链节点,所述方法包括:
    确定用于部署所述若干区块链节点中任一当前区块链节点的计算资源;
    向所述计算资源提供对应于所述当前区块链节点的可执行文件,并触发所述计算资源执行所述可执行文件;其中,所述计算资源通过执行所述可执行文件实现:
    获取区块链服务的安装包,以及获取所述当前区块链节点的配置信息;根据所述区块链服务的安装包启动所述区块链服务,完成部署所述当前区块链节点,
    所述当前区块链节点包括所述配置信息。
  12. 根据权利要求11所述的方法,其中,所述配置信息包括用于进行安全通信的私钥和数字证书。
  13. 根据权利要求11所述的方法,其中,所述配置信息包括以下各项信息中的至少一项:所述当前区块链节点的唯一标识、所述当前区块链节点的IP地址,以及所述 若干区块链节点中除所述当前区块链节点以外的其它区块链节点的唯一标识和/或IP地址。
  14. 根据权利要求11-13中任一项所述的方法,其中,所述计算资源包括计算设备,或者,所述计算资源包括部署在计算设备上的虚拟计算节点。
  15. 根据权利要求11-13中任一项所述的方法,其中,所述方法由云计算平台中的自动化部署区块链网络的装置执行,所述云计算平台还包括密钥管理服务装置和数字证书服务装置;所述方法还包括:
    向所述密钥管理服务装置发送密钥服务请求,使所述密钥管理服务装置向所述自动化部署区块链网络的装置返回所述当前区块链节点的私钥和证书签名请求;
    向所述数字证书服务装置发送所述证书签名请求,使所述数字证书服务装置向所述自动化部署区块链网络的装置返回所述当前区块链节点的数字证书;
    其中,所述配置信息包括所述私钥和所述数字证书,所述私钥和所述数字证书用于所述当前区块链节点进行安全通信。
  16. 根据权利要求15所述的方法,其中,所述云计算平台中还包括对象存储服务装置;所述方法还包括:
    生成所述配置信息;
    向所述对象存储服务装置发送所述配置信息,使所述对象存储服务装置向所述自动化部署区块链网络的装置返回所述配置信息的存储地址;
    生成对应于所述当前区块链节点的可执行文件;其中,所述可执行文件中包括所述存储地址;
    所述计算资源通过执行所述可执行文件具体实现:向所述对象存储服务装置发送包含所述存储地址的数据查询请求,使所述对象存储服务装置向所述计算资源返回所述配置信息。
  17. 根据权利要求11-13中任一项所述的方法,其中,所述计算资源还通过执行所述可执行文件实现:挂载基于若干存储设备搭建的文件系统;其中,所述当前区块链节点通过所述文件系统存储数据。
  18. 根据权利要求17所述的方法,其中,所述配置信息包括以下各项信息中的至少一项:
    存储协议指示信息,用于指示所述当前区块链节点通过所述文件系统存储数据时所需采用的存储协议;
    存储资源指示信息,用于指示所述当前区块链节点通过所述文件系统存储数据时所 需占用的存储资源的大小。
  19. 根据权利要求11-13中任一项所述的方法,其中,触发所述计算资源执行所述可执行文件,具体包括:
    与所述计算资源建立安全连接;
    通过所述安全连接向所述计算资源发送控制信号,使所述计算资源执行所述可执行文件。
  20. 根据权利要求11至13中任一项所述的方法,其中,还包括:
    接收来自终端设备的区块链网络部署请求;其中,所述区块链网络部署请求至少包括所述区块链网络所包含的区块链节点的数量。
  21. 一种自动化部署区块链网络的装置,用于实现权利要求11至20中任一项所述的方法。
  22. 一种计算设备,包括处理器,所述处理器执行存储器中存储的计算机指令/代码时,实现权利要求11-20中任一项所述的方法。
  23. 一种计算机可读存储介质,其上存储有计算机指令/代码,当所述计算机指令/代码在计算设备中执行时,所述计算设备执行权利要求11-20中任一项所述的方法。
PCT/CN2021/133145 2021-01-29 2021-11-25 自动化部署区块链网络的方法、装置及云计算平台 WO2022160904A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110123803.6 2021-01-29
CN202110123803.6A CN112445865B (zh) 2021-01-29 2021-01-29 自动化部署区块链网络的方法、装置及云计算平台

Publications (1)

Publication Number Publication Date
WO2022160904A1 true WO2022160904A1 (zh) 2022-08-04

Family

ID=74740160

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/133145 WO2022160904A1 (zh) 2021-01-29 2021-11-25 自动化部署区块链网络的方法、装置及云计算平台

Country Status (2)

Country Link
CN (1) CN112445865B (zh)
WO (1) WO2022160904A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024119861A1 (zh) * 2022-12-05 2024-06-13 杭州趣链科技有限公司 一种区块链节点的部署方法、装置及终端设备

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112445865B (zh) * 2021-01-29 2021-05-18 支付宝(杭州)信息技术有限公司 自动化部署区块链网络的方法、装置及云计算平台
CN113674126A (zh) * 2021-08-25 2021-11-19 上海卓繁信息技术股份有限公司 一种基于区块链的政务信息处理方法、装置和电子设备
CN114510540A (zh) * 2022-04-19 2022-05-17 北京微芯感知科技有限公司 数据处理方法、计算存储分离系统及区块链网络架构
CN114721832A (zh) * 2022-05-12 2022-07-08 北京溪塔科技有限公司 一种区块链节点的初始化方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108305072A (zh) * 2018-01-04 2018-07-20 上海点融信息科技有限责任公司 部署区块链网络的方法、设备和计算机存储介质
CN109933338A (zh) * 2019-01-29 2019-06-25 浙江数链科技有限公司 区块链部署方法、装置、计算机设备和存储介质
CN110995480A (zh) * 2019-11-25 2020-04-10 百度在线网络技术(北京)有限公司 区块链网络部署方法、装置、电子设备和介质
CN111045690A (zh) * 2018-10-12 2020-04-21 阿里巴巴集团控股有限公司 区块链节点服务部署方法、装置、系统、计算设备及介质
US20210029163A1 (en) * 2019-07-24 2021-01-28 International Business Machines Corporation Security layer for configuring blockchain
CN112445865A (zh) * 2021-01-29 2021-03-05 支付宝(杭州)信息技术有限公司 自动化部署区块链网络的方法、装置及云计算平台

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103037002A (zh) * 2012-12-21 2013-04-10 中标软件有限公司 一种云计算集群环境中服务器集群的部署方法及系统
CN103200036B (zh) * 2013-04-08 2015-10-14 国电南瑞科技股份有限公司 一种电力系统云计算平台的自动化配置方法
CN110011988B (zh) * 2019-03-21 2021-08-10 平安科技(深圳)有限公司 基于区块链的证书验证方法及装置、存储介质、电子装置
US20200342449A1 (en) * 2019-04-29 2020-10-29 Salesforce.Com, Inc. Systems, methods, and apparatuses for implementing an api gateway to authorize and charge a fee for a transaction between cloud computing customers using distributed ledger technologies (dlt)
CN110855791B (zh) * 2019-11-18 2021-07-27 腾讯科技(深圳)有限公司 一种区块链节点部署方法及相关设备
CN111181960A (zh) * 2019-12-30 2020-05-19 北京握奇数据股份有限公司 一种基于终端设备区块链应用安全授信和签名系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108305072A (zh) * 2018-01-04 2018-07-20 上海点融信息科技有限责任公司 部署区块链网络的方法、设备和计算机存储介质
CN111045690A (zh) * 2018-10-12 2020-04-21 阿里巴巴集团控股有限公司 区块链节点服务部署方法、装置、系统、计算设备及介质
CN109933338A (zh) * 2019-01-29 2019-06-25 浙江数链科技有限公司 区块链部署方法、装置、计算机设备和存储介质
US20210029163A1 (en) * 2019-07-24 2021-01-28 International Business Machines Corporation Security layer for configuring blockchain
CN110995480A (zh) * 2019-11-25 2020-04-10 百度在线网络技术(北京)有限公司 区块链网络部署方法、装置、电子设备和介质
CN112445865A (zh) * 2021-01-29 2021-03-05 支付宝(杭州)信息技术有限公司 自动化部署区块链网络的方法、装置及云计算平台

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024119861A1 (zh) * 2022-12-05 2024-06-13 杭州趣链科技有限公司 一种区块链节点的部署方法、装置及终端设备

Also Published As

Publication number Publication date
CN112445865B (zh) 2021-05-18
CN112445865A (zh) 2021-03-05

Similar Documents

Publication Publication Date Title
WO2022160904A1 (zh) 自动化部署区块链网络的方法、装置及云计算平台
US11647101B2 (en) Deploying an application in multiple cloud computing environments
US10999356B2 (en) Deploying an application in a hybrid cloud computing environment
CN108809722B (zh) 一种部署Kubernetes集群的方法、装置和存储介质
US20230198857A1 (en) Model driven process for automated deployment of domain 2.0 virtualized services and applications on cloud infrastructure
US11429369B2 (en) Distributed upgrade in virtualized computing environments
CN108089913B (zh) 一种超融合系统的虚拟机部署方法
WO2014169870A1 (zh) 虚拟网元自动装载及虚拟机ip地址获取的方法与系统、存储介质
RU2683630C2 (ru) Способ обновления дескриптора сетевой службы nsd и устройство
JP6190949B2 (ja) 仮想ネットワーク機能マネージャによる仮想インフラストラクチャマネージャへのアクセスの自動化構成
EP3905598B1 (en) Message processing method and apparatus, control plane device, and computer storage medium
JP2018530214A (ja) ネットワークサービスをデプロイするための方法及び装置
US11687354B2 (en) Virtual machine management using onboarding operations and openstack control
US11693687B1 (en) Lifecycle management of VNFC software modules
CN111464481B (zh) 用于服务安全保护的方法、设备和计算机可读介质
CN106452951B (zh) 一种信息处理方法、装置及系统
CN113434283B (zh) 服务调度方法及装置、服务器、计算机可读存储介质
CN113268254A (zh) 一种集群系统安装方法、装置、电子设备及存储介质
US20170322788A1 (en) Parallel distribution of application services to virtual nodes
CN111740869B (zh) 基于物理网卡的kubernetes网络实现方法、系统、设备及介质
CN112217693B (zh) 一种控制器测试方法、装置、电子设备及存储介质
CN115314375A (zh) 区块链网络跨域组网方法、设备、存储介质及程序产品
CN105743936B (zh) 一种发送联动数据更新指令的方法及装置
JP7177873B2 (ja) ゲートウェイ装置、データ送信方法、及びプログラム
US20240007340A1 (en) Executing on-demand workloads initiated from cloud services in a software-defined data center

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21922494

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21922494

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 21922494

Country of ref document: EP

Kind code of ref document: A1