Hyperledger Fabric Peer 配置解析

Hyperledger Fabric Peer 配置解析

文中使用的 fabric 版本为 2.4.1

在Fabric网络中,用户可以设定Peer节点、排序节点、CA节点的行为,以及管理通道、组织身份等多种资源,这都涉及网络内配置。

Fabric节点在启动时可通过加载本地配置文件或环境变量等方式获取配置信息,同时结合少量命令行参数。

通常用户需要提前编写配置文件,供服务启动时使用;也可以仅在配置文件中指定部分默认值,使用环境变量动态指定可以实现更灵活的配置加载。

默认情况下,Fabric节点的主配置路径为 FABRIC_CFG_PATH 环境变量所指向路径(默认为/etc/hyperledger/fabric)。在不显式指定配置路径时,会尝试从主配置路径下查找相关的配置文件。

节点 默认配置文件路径 主要功能
Peer 节点 $FABRIC_CFG_PATH/core.yaml 指定 peer 节点运行时参数
Orderer $FABRIC_CFG_PATH/orderer.yaml 指定 orderer 节点运行时参数
CA 节点 $FABRIC_CA_SERVER_HOME/fabric-ca-server-config.yaml 指定 CA 节点运行时参数

除了各节点配置文件,Fabric还在每个通道内通过配置区块来维护通道范围的配置信息,通道配置可由 configtx.yaml 文件设定。

这些配置需要使用特定工具进行管理,这些工具包括 cryptogen configtxgen configtxlator

工具 默认配置文件路径 主要功能
cryptogen 命令行参数 --config 指定 负责生成网络中组织结构和身份文件
configtxgen 命令行参数 --configPath 指定 利用 configtx.yaml 文件生成通道初始配置;创建配置更新交易
configtxlator N/A 将通道配置在二进制和 JSON 格式之间进行转换,并计算配置更新量

Peer 配置剖析

<mark> 当Peer节点启动时,会按照优先级从高到低的顺序依次尝试从命令行参数、环境变量和配置文件中读取配置信息。 </mark>

<mark> 当从环境变量中读入配置信息时候,除了日志使用单独的FABRIC_LOGGING_SPEC环境变量进行指定,其他都需要以CORE_前缀开头。例如,配置文件中的peer.id项,对应环境变量CORE_PEER_ID。 > 当从环境变量中读入配置信息时候,除了日志使用单独的FABRIC_LOGGING_SPEC环境变量进行指定,其他都需要以CORE_前缀开头。例如,配置文件中的peer.id项,对应环境变量CORE_PEER_ID。 </mark>

<mark> Peer节点默认的配置文件读取路径为$FABRIC_CFG_PATH/core.yaml;如果没找到,则尝试查找当前目录下的./core.yaml文件;如果还没有找到,则尝试查找默认的/etc/hyperledger/fabric/core.yaml文件。 </mark>

<mark> 在结构上,core.yaml文件中包括peer、vm、chaincode、ledger、operations、metrics六大部分。 </mark>


peer 部分

peer部分包括与服务直接相关的核心配置,内容比较多。除了一些常规配置,还包括keepalive、Gossip、TLS、BCCSP、handler、discover等多个配置部分。

配置项 类型 作用 默认值
id 常规配置 Peer在网络中的ID信息,用于辨识不同的节点 N/A
networkId 常规配置 网络自身的ID,逻辑上可以通过ID指定多个隔离的网络 N/A
listenAddress 常规配置 服务监听的本地地址,本地有多个网络接口时可指定仅监听某个接口 0.0.0.0:7051
address 常规配置 对同组织内其他节点的监听连接地址。当服务在NAT设备上运行时,该配置可以指定服务对外宣称的可访问地址。如果是客户端,则作为其连接的Peer服务地址 0.0.0.0:7051
addressAutoDetect 常规配置 是否自动探测服务地址。当Peer服务运行环境的地址是动态时,该配置可以进行自动探测,探测将内部地址作为服务地址。默认情况下关闭。注意启用TLS时候最好关闭,以免与指定的域名冲突造成认证失败 false
fileSystemPath 常规配置 本地数据存放路径,包括账本、链码等 /var/hyperledger/production
mspConfigPath 常规配置 MSP目录所在的路径,可以为绝对路径,或相对配置目录的路径,一般建议为/etc/hyperledger/fabric/msp msp
localMspId 常规配置 Peer所关联的MSP ID,一般为所属组织名称,需要与通道配置内名称一致 SampleOrg
deliveryclient 常规配置 到排序服务连接的配置。值得注意的是addressOverrides域。当Peer加入通道时会从初始区块提取排序服务信息,此时排序节点地址或证书可能已经发生变化。使用此处配置可以映射到新版本排序服务,避免出现无法加入通道的情况 N/A
limits 常规配置 对访问频率进行限制,可以限定endorserService , deliverService , gatewayService服务处理的并发数 endorserService=2500 , deliverService=2500 , gatewayService=2500
keepalive.interval 保活消息 如果服务端发现客户端在指定时间内未有任何消息,则主动发送gRPC Ping进行探测 7200s
keepalive.timeout 保活消息 服务端发送Ping消息后,如果客户端在指定时间内未响应,则断开连接 20s
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值