Hyperledger Fabric 1.0 从零开始(七)——启动Fabric多节点集群
5:启动Fabric多节点集群
5.1、启动orderer节点服务
上述操作完成后,此时各节点的compose配置文件及证书验证目录都已经准备完成,可以开始尝试启动多机Fabric集群。
首先启动orderer节点,切换至orderer.example.com服务器,即前文指定的10.130.116.8服务器,执行如下命令进入启动docker进程:
docker-compose -f docker-compose-orderer.yaml up -d
运行完毕后我们可以使用docker ps看到运行了一个名字为orderer.example.com的节点。如下图所示:
5.2、启动peer节点服务
切换到peer0.org1.example.com服务器,即前文指定的10.130.116.9服务器,启动本服务器的peer节点和cli,执行如下命令:
docker-compose -f docker-compose-peer.yaml up -d
运行完毕后我们使用docker ps应该可以看到2个正在运行的容器,如下视图:
接下来依次在另外3台服务器运行启动peer节点容器的命令,执行命令与上述方案一致,如下所示:
docker-compose -f docker-compose-peer.yaml up -d
现在我们整个Fabric4+1服务器网络已经成型,接下来是创建channel和运行ChainCode。
5.3、创建channel和运行chaincode
切换到peer0.org1.example.com服务器上,使用该服务器上的cli来运行创建Channel和运行ChainCode的操作。首先需要进入cli容器,执行如下命令:
docker exec -it cli bash
进入容器后我们可以看到命令提示变为如下所示:
root@dd815a900955:/opt/gopath/src/github.com/hyperledger/fabric/peer#
参考如下视图:
说明我们已经以root的身份进入到cli容器内部。官方已经提供了完整的创建Channel和测试ChainCode的脚本,并且已经映射到cli容器内部,所以我们只需要在cli内运行如下命令:
./scripts/script.sh mychannel
该脚本会一步一步的完成创建通道,将其他节点加入通道,更新锚节点,创建ChainCode,初始化账户,查询,转账,再次查询等链上代码的各个操作都可以自动化实现。直到最后,系统提示如下视图:
说明我们的4+1的Fabric多级部署成功了。我们现在是在peer0.org1.example.com的cli容器内,我们也可以切换到peer0.org2.example.com服务器,运行docker ps命令,可以看到本来是2个容器的,现在已经变成了3个容器,因为ChainCode会创建一个容器,如下视图:
上图第一个docker ps执行只有最开始创建的两个容器,后一个docker ps命令执行后会发现有三个容器。
至此,整个官方给予的Fabric多机集群部署的工作都已经验证完成,下面需要我们通过手动方式来一台服务器一台服务器的配置,分别执行加入通道,更新锚节点,创建ChainCode,初始化账户,查询,转账,再次查询等链上代码的各个操作。
这些手动提交的步骤及代码均可在./scripts/script.sh中看到,具体的执行和操作流程将会在下一章详细讲解。
本章节及前面的一章可以直接参阅:Fabric 1.0的多机部署,在这位老师的博客里写的非常清楚,而且我也是参考这篇博客来完成多机多节点自动部署方案的,只是手动调配及后续操作在网上基本上没有可供参考的中文内容,需要查看官网文档来逐步实现。
截至目前,网络上已有的所有中文方面的博客、文档都是教会你如何跑通官方的e2e demo,也就是本章节及之前的内容,而后续的内容基本上找不到,但会有部分零散的存在,后续章节中在引用到的时候会添加对应的链接方便各位参阅。
转载于:https://www.cnblogs.com/aberic/p/7542167.html
Hyperledger Fabric 1.0 从零开始(七)——启动Fabric多节点集群相关推荐
- Hyperledger Fabric 1.0 从零开始(十二)——fabric-sdk-java应用
Hyperledger Fabric 1.0 从零开始(十)--智能合约(参阅:Hyperledger Fabric Chaincode for Operators--实操智能合约) Hyperled ...
- Hyperledger Fabric 1.0 从零开始(八)——Fabric多节点集群生产部署
6.1.平台特定使用的二进制文件配置 该方案与Hyperledger Fabric 1.0 从零开始(五)--运行测试e2e类似,根据企业需要,可以控制各节点的域名,及联盟链的统一域名.可以指定单独节 ...
- Hyperledger Fabric 1.0 从零开始(十二)——fabric-sdk-java应用【补充】
在 Hyperledger Fabric 1.0 从零开始(十二)--fabric-sdk-java应用 中我已经把官方sdk具体改良办法,即使用办法发出来了,所有的类及文件都是完整的,在文章的结尾也 ...
- Hyperledger Fabric 1.0 从零开始(五)——运行测试e2e
3:运行测试e2e 3.1.运行fabric-samples的问题说明 该问题说明能够解决6.1.平台特定使用的二进制文件配置第一步的问题.可以选择继续阅读该说明,或者等参考到6.1小节时再反向阅读本 ...
- Linux下部署redis、启动redis、创建redis节点集群
目录 1. 准备工作 2. 启动redis 3. 查看redis是否启动成功 4. 创建redis集群 5. 连接redis 6. 查看集群状态 7. 通过set和get方法插入和查询 总结: 1. ...
- Oracle 10.2.0.5 + OFS 3.4.2 双节点集群
由于公司系统升级需要,所有win2003服务器都必需升级到win2008,旧的数据库需要进行迁移.由于之前没接触过Oracle,为配置集群折腾了一星期有余,总算将最简单的双节点冷备集群弄出来了.现如下 ...
- k8s安装3节点集群Fate v1.8.0
采用k8s,而非minikube, 在3个centos系统的节点上安装fate集群. 本人安装这个v1.8.0版本后,能登陆fateboard,但无法传输数据,问题无法解决.于是选择安装v1.7.2版 ...
- 3.Hyperledger Fabric v2.0 CA组件
Hyperledger Fabric v2.0 CA组件 目的: 通过CA服务生成msp证书和tls证书,并启动fabric网络 由于使用CA生成证书时,需要注册为各个组织生成证书,为了便于理解,所以 ...
- Hyperledger Fabric 1.0 实战开发系列 第二课 Fabric环境搭建
一.安装GO语言 下载最新版的go 打开Terminal,输入命令(以下命令都是以root管理员的角色进行的) su 输入密码:***** wget https://storage.googleapi ...
最新文章
- 区域填充与击中击不中变换
- 查看linux服务器硬盘IO读写负载
- PHP利用jpgraph类画折线图
- 颈椎前路caspar撑开器_82岁女性神经根型颈椎病,你该怎么办?手术还是不手术?...
- java 8流自定义收集器_Java 8编写自定义收集器简介
- 细数改善WPF应用程序性能的10大方法
- python 学习笔记 - for循环: 字典遍历, 分别打印key, value, key:value
- java 23种设计模式(转载)
- 安装与设置Visual SVN
- 中国计算机设计大赛作品(附代码与设计书,答辩PPT)
- PHP开发工资条短信通知
- 计算机excer试题,计算机电子表格excel练习题
- 为什么视锥剔除重要,却又不重要 | Why Frustum Culling Matters, and Why It‘s Not Important
- MacOS 连接网络打印机后一直不能打印
- 临江屯的月亮湾---月亮泡子
- 额滴亲娘嘞!偶终于考完试了!”
- python怎么画长方形_画一个漂亮的长方形
- html后代选择器的语法,[转]CSS子选择器与后代选择器
- 解决每次新建word都有页眉和页脚
- pythonturtle写字_python用turtle写字
热门文章
- 不同类型的变量与零值比较的方法
- linux中top和ps的内存区别,linux - top与ps间的区别
- 鸿蒙测试机型微博,华为多款机型开启鸿蒙尝鲜:微博已适配HarmonyOS小尾巴
- Android连接相机WiFi,安卓手机使用佳能相机机身wifi传输拍摄的操作
- php数据回显是什么意思,jquery回显是什么意思
- opencv 高通滤波和低通滤波_滤波电路合集(低通滤波,CLCП滤波,DLC滤波,CRC П滤波)...
- c语言设计四路彩灯显示系统,四路彩灯控制器设计方案.doc
- java自定义变量解析,Thymeleaf内置对象、定义变量、URL参数及标签自定义属性
- 【Java基础篇】try catch finally语句包含return语句时的执行过程
- java json和对象互相装换