ChainDesk:一分钟启动我们的分布式网络

区块链技术QQ交流群:263270946 掌握更多技术干货,关注微信公众号“ChainDesk”

作者:ChainDesk韩小东,ChainDesk区块链行业分析师, ChainDesk区块链工程师


目标

1.深入理解 Hyperledger Fabric 网络启动过程

2.掌握网络启动命令及其所需参数

任务实现

网络启动之前所需的所有内容我们已经准备就绪,下面我们深入分析网络中各节点运行时所需要指定的必备信息

3.3.1 网络服务如何配置

启动网络,就是启动提供网络服务的各个节点。那么这些节点如何启动,需要哪些信息,由于要启动多个网络节点,Hyperledger Fabric 采用了容器技术,所以需要一个简化的方式来集中化管理这这些节点容器,我们使用 docker-compose 这个工具个来实现一步到位的节点容器管理,实现方式只需要编写相应的配置文件即可。

Hyperledger Fabric 同样给我们提供了一个 docker-compose 工具的示例配置文件,该配置文件在 fabric-samples/first-network 目录下,文件名称为: docker-compose-cli.yaml, 我们打开这个配置文件可以看到如下内容:

区块链技术QQ交流群:263270946 掌握更多技术干货,关注微信公众号“ChainDesk”

该配置文件中指定了网络中各个节点容器(共计六个容器,一个 Orderer,属于两个 Orgs 组织的四个 Peer,还有一个 CLI)的信息;我们仔细观察会发现 orderer 与各 peer 容器都设置了container_name 与 networks 信息;其它信息都由 extends 指向了 base/docker-compose-base.yaml 文件。

CLI 容器指定了所代表的 peer 节点

(CORE_PEER_ADDRESS=peer0.org1.example.com:7051),通过 volumes 指定了将系统中的链码、组织结构及证书、生成的配置文件映射到容器中指定的目录下。且通过 depends_on 指定了所依赖的相关容器。

3.3.2 关联的docker-compose-base.yaml

配置文件

区块链技术QQ交流群:263270946 掌握更多技术干货,关注微信公众号“ChainDesk”

该配置文件中指定了 Orderer 与 Peers 节点的相关信息。

Orderer 设置如下信息:

environment:指定日志级别、监听地址、生成初始区块的提供方式、初始区块配置文件路径、本地 MSPID 及对应的目录、开启 TLS 验证及对应的证书、私钥信息等诸多重要信息。

working_dir:进入容器后的默认工作目录

volumes:指定系统中的初始区块配置文件、MSP、TLS目录映射到容器中的指定路径下。

ports: 指定当前节点的监听端口。

各 Peers 设置了如下信息:

extends:基本信息来源于哪个文件。

environment:指定了容器的的 ID、监听地址及端口号、本地 MSPID。

volumes:将系统的 msp 及 tls 目录映射到容器中的指定路径下。

ports: 指定当前节点的监听端口。

区块链技术QQ交流群:263270946 掌握更多技术干货,关注微信公众号“ChainDesk”

3.3.3 又被关联的peer-base.yaml

配置文件内容如下:

区块链技术QQ交流群:263270946 掌握更多技术干货,关注微信公众号“ChainDesk”

该配置文件设置了所有 peer 容器的基本的共同信息,日志级别,是否开启 TLS 验证,是否采用 Leader 选举, 是否将当前节点设为 Leader, TLS 证书、私钥、根证书的路径、容器的默认工作路径、容器启动命令。

3.3.4 启动网络

万事具备,只欠东风,下面我们通过一条命令来方便的启动 Hyperledger Fabric 网络中所有节点。

区块链技术QQ交流群:263270946 掌握更多技术干货,关注微信公众号“ChainDesk”

区块链技术QQ交流群:263270946 掌握更多技术干货,关注微信公众号“ChainDesk”

区块链技术QQ交流群:263270946 掌握更多技术干货,关注微信公众号“ChainDesk”

未经授权禁止转载、改编,转载请注明出处!

本文地址: https://www.chaindesk.cn/witbook/11/108


ChainDesk——全球区块链技术生态超级社区

以区块链技术为入口,搭建全球区块链技术生态超级社区,社区将服务于公链生态建设、DAPP项目研发、技术咨询、课程体系研发、区块链书籍编写,区块链课程制作、讲师培训、区块链职业教育、区块链线上教育、去中心化技术评测一体化的区块链技术超级社区。

免费·原创·专业·高效·系统


 

猜你喜欢

转载自blog.csdn.net/weixin_43970764/article/details/85162570