当前位置:首页 - 第35页

09月29日

9.2 本地编译安装

发布 : xiaohuanglv | 分类 : 区块链精品文章 | 评论 : 0 | 浏览 : 1605次

动手能力较强的读者,建议通过本地编译安装来部署超级账本Fabric网络,以便对相关组件有更深入的理解。超级账本Fabric基于Go语言实现,本地编译推荐配置Golang1.7或更高版本的环境。下面将讲解如何编译生成fabric-peer、fabric-orderer和fabric-ca等组件的二进制文件,以及如何安装一些配置和开发相关的工具。9.2.1 操作系统常见的Linux发行版(包括Ubuntu、Redhat、CentOS等)和MacOS等都可以原生支持Fabric编译和运行。操作系统推荐Linux内核3.10+版本,支持64位环境。另外,作为Fabric节点,物理内存建议至少为2GB,如果有较多的链码则需要更多容器;预留足够硬盘空间(一般建议20GB或更多)以存储区块文件。在生

09月29日

9.3 使用Docker镜像

发布 : xiaohuanglv | 分类 : 区块链精品文章 | 评论 : 0 | 浏览 : 1934次
9.3 使用Docker镜像

除了手动进行本地编译外,还可以采用容器(Docker)镜像的方式快速获取和运行Fabric网络,省去本地编译等待的时间。9.3.1 安装Docker服务Docker支持Linux常见的发行版(如Redhat/Centos/Ubuntu)和MacOS等,推荐使用1.12或者更新的版本。Linux操作系统中可以通过如下命令来快速安装Docker:$curl-fsSLhttps://get.docker.com/|sh安装成功后,修改Docker服务配置。Ubuntu16.04中默认采用了systemd管理启动服务,Docker配置文件在/etc/systemd/system/docker.service.d/override.conf下:DOCKER_OPTS="$DOCK

09月29日

9.4 启动Fabric网络

发布 : xiaohuanglv | 分类 : 区块链精品文章 | 评论 : 0 | 浏览 : 2098次
9.4 启动Fabric网络

启动Fabric网络是一个比较复杂的过程,主要步骤包括计划拓扑、准备相关配置文件、启动Orderer节点、启动Peer节点和操作网络等。这里以Fabric代码中自带的示例为基础讲解相关的操作步骤。9.4.1 网络拓扑启动的Fabric网络中包括一个Orderer节点和四个Peer节点,以及一个管理节点生成相关启动文件,在网络启动后作为操作客户端执行命令。四个Peer节点分属于同一个管理域(example.com)下的两个组织Org1和Org2,这两个组织都加入同一个应用通道(business-channel)中。每个组织中的第一个节点(peer0节点)作为锚节点与其他组织进行通信,所有节点通过域名都可以相互访问,整体网络拓扑如图9-2所示。图9-2 网络拓扑结构9.4.2 准备相关配

09月29日

9.5 链码的概念与使用

发布 : xiaohuanglv | 分类 : 区块链精品文章 | 评论 : 0 | 浏览 : 2375次
9.5 链码的概念与使用

链上代码(chaincode),简称链码,一般是指用户编写的应用代码。链码被部署在Fabric网络节点上,运行在隔离沙盒(目前为Docker容器)中,并通过gRPC协议与相应的Peer节点进行交互,以操作分布式账本中的数据。启动Fabric网络后,可以通过命令行或SDK进行链码操作,验证网络运行是否正常。注意 用户链码有别于系统链码(SystemChaincode)。系统链码指的是FabricPeer中负责系统配置、背书、验证等平台功能的逻辑,运行在Peer进程内,将在后续章节予以介绍。9.5.1 链码操作命令用户可以通过命令行方式操作链码,支持的链码子命令包括install、instantiate、invoke、query、upgrade、package、sign

09月29日

9.6 使用多通道

发布 : xiaohuanglv | 分类 : 区块链精品文章 | 评论 : 0 | 浏览 : 1772次
9.6 使用多通道

9.6.1 通道操作命令命令行下peerchannel命令支持包括create、fetch、join、list、update等子命令。各个命令的功能如下所示:·create:创建一个新的应用通道;·join:将本Peer节点加入到某个应用通道中;·list:列出本Peer已经加入的所有的应用通道;·fetch:从Ordering服务获取指定应用通道的配置区块;·update:更新通道的配置信息,如锚节点配置。可以通过peerchannel<subcommand>--help来查看具体的命令使用说明。9.6.2 命令选项peerchannel命令支持的参数见表9-7。表9-7 peerchannel命令支持的参数各子命令的参数支持见表9-8。表9-8 子命令的参数其中,必需

09月29日

9.7 SDK支持

发布 : xiaohuanglv | 分类 : 区块链精品文章 | 评论 : 0 | 浏览 : 1534次

除了基于命令行的客户端之外,超级账本Fabric提供了多种语言的SDK,包括Node.Js、Python、Java、Go等。它们封装了Fabric网络中节点提供的gRPC服务接口,可以实现更方便地调用。这些客户端SDK允许用户和应用跟Fabric网络进行交互,还可以实现更为复杂的操作,实现包括节点的启停、链码的生命周期管理等操作。SDK项目目前仍在开发中,感兴趣的读者可以通过如下途径获取到SDK的源码并进行尝试。1.基于Node.Js实现的SDK作为早期创建的SDK项目之一,Node.Js实现的SDK目前已经支持了对Fabric链码的主要操作,包括安装链码、实例化并进行调用等,以及访问FabricCA服务。内带了不少操作的例子可供参考。源码仓库地址在github.com/hyperledg

09月29日

9.8 生产环境注意事项

发布 : xiaohuanglv | 分类 : 区块链精品文章 | 评论 : 0 | 浏览 : 1555次

区块链分布式结构的特点,使得对其进行安装部署时相较于单点系统要复杂得多,需要从多个角度进行仔细考量和论证。这里总结一些在生产环境中进行应用时需要注意的地方。1.节点角色差异Fabric网络中各个节点可以拥有不同的角色。不同角色的众多节点负责整个网络功能中不同环节的工作负载,呈现出了差异化的处理特性。Ordering服务需要处理整个网络中所有的交易消息,是全网的关键组件,Orderer节点采用Kafka集群进行排序,本地维护了网络中所有通道的区块链结构,往往大量吞吐区块文件。因此,对于Orderer节点来讲需要加强内存、存储、网络IO方面的配置,并且采用集群的方式提高其可靠性。Peer节点除了处理区块和背书交易(Endorser)之外,还需要对账本状态进行更新(Committer),对

09月29日

第10章 超级账本Fabric配置管理

发布 : xiaohuanglv | 分类 : 区块链精品文章 | 评论 : 0 | 浏览 : 1611次

错误源于复杂,简单臻于优雅。在上一章节的学习中,笔者介绍了安装部署一个Fabric网络的完整过程。在这个过程中,需要使用到多个配置文件,并基于这些配置生成启动和管理网络所需要的相关文件。本章将对这些配置文件、配置工具的作用进行更为详细的介绍,让读者理解配置文件的结构和语法,并掌握对其进行管理的更多技巧。通过本章内容的学习,读者将掌握Peer节点、Orderer节点上相关配置的描述和功能,以及如何对配置进行更新和管理。此外,还介绍了三大配置管理利器——cryptogen工具、configtxgen工具以及configtxlator工具。

09月29日

10.1 简介

发布 : xiaohuanglv | 分类 : 区块链精品文章 | 评论 : 0 | 浏览 : 1490次
10.1 简介

Fabric网络中,需要对Peer节点、Orderer节点,以及应用通道、组织身份等多种资源进行管理,这就需要一套进行配置、管理的完整机制。10.1.1 配置文件目前Fabric节点在启动时主要支持通过本地配置文件或环境变量指定配置的方式,同时结合命令行参数。用户既可以将所有配置提前设置好,写入到本地配置文件供节点使用;也可以在配置文件中仅指定通常情况下的默认值,结合使用环境变量指定的动态方式,实现更为灵活的配置管理。默认情况下,Fabric节点的主配置路径为FABRIC_CFG_PATH环境变量所指向路径,一般指向到/etc/hyperledger/fabric路径。所有资源在不显式指定配置路径时,会尝试从系统默认的主配置路径下查找与自己相关的配置文件。Fabric节点的默认配置文件路径、

09月29日

10.2 Peer配置剖析

发布 : xiaohuanglv | 分类 : 区块链精品文章 | 评论 : 0 | 浏览 : 2153次

当Peer节点作为服务端启动时,会按照优先级从高到低的顺序依次尝试从命令行参数、环境变量或配置文件中读取配置信息。当从环境变量中读入配置时,需要以CORE_前缀开头,例如配置文件中的peer.id项,对应到环境变量CORE_PEER_ID。Peer节点默认的配置文件读取路径为$FABRIC_CFG_PATH/core.yaml;如果没找到,则尝试查找当前目录下的./core.yaml文件;如果还没有找到,则尝试查找默认的/etc/hyperledger/fabric/core.yaml文件。Fabric代码中提供了一些示例的core.yaml配置文件(如sampleconfig/core.yaml),可以作为参考。在结构上,core.yaml文件中一般包括logging、peer、vm、ch

网站分类

标签列表

最近发表

全站首页 | 数据结构 | 区块链| 大数据 | 机器学习 | 物联网和云计算 | 面试笔试

本站资源大部分来自互联网,版权归原作者所有!