orderer在fabric中的作用是排序,另外orderer有点像是管理节点一样,通道之类的都是在orderer的基础之上建立的,有点像比特币,以太坊上面的全节点一样,不过责任比全节点少很多,甚至都不用背书和记录。

同样以一段配置代码来解释:

 1  services:
2 peer0.Peer_fish.com:
3 container_name: peer0.Peer_fish.com
4 image: hyperledger/fabric-peer:2.2
5 labels:
6 service: hyperledger-fabric
7 environment:
8 - FABRIC_CFG_PATH=/etc/hyperledger/peercfg
9 # - FABRIC_LOGGING_SPEC=INFO
10 - FABRIC_LOGGING_SPEC=DEBUG
11 - CORE_PEER_TLS_ENABLED=true
12 - CORE_PEER_PROFILE_ENABLED=false
13 - CORE_PEER_TLS_CERT_FILE=/etc/hyperledger/fabric/tls/server.crt
14 - CORE_PEER_TLS_KEY_FILE=/etc/hyperledger/fabric/tls/server.key
15 - CORE_PEER_TLS_ROOTCERT_FILE=/etc/hyperledger/fabric/tls/ca.crt
16 # Peer specific variables
17 - CORE_PEER_ID=peer0.Peer_fish.com
18 #指定该组织下其他peer的通信ip和端口
19 - CORE_PEER_ADDRESS=peer1.Peer_fish.com:7053
20 - CORE_PEER_LISTENADDRESS=0.0.0.0:7051
21 - CORE_PEER_CHAINCODEADDRESS=peer0.Peer_fish.com:7052
22 - CORE_PEER_CHAINCODELISTENADDRESS=0.0.0.0:7052
23 - CORE_PEER_GOSSIP_BOOTSTRAP=peer0.Peer_fish.com:7051
24 ​
25 - CORE_PEER_GOSSIP_EXTERNALENDPOINT=peer1.Peer_fish.com:7052
26 ​
27 - CORE_PEER_LOCALMSPID=Org1MSP
28 - CORE_PEER_MSPCONFIGPATH=/etc/hyperledger/fabric/msp
29 - CORE_OPERATIONS_LISTENADDRESS=peer0.Peer_fish.com:9444
30 - CORE_METRICS_PROVIDER=prometheus
31 - CHAINCODE_AS_A_SERVICE_BUILDER_CONFIG={"peername":"peer0fish"}
32 - CORE_CHAINCODE_EXECUTETIMEOUT=300s
33 - CORE_VM_ENDPOINT=unix:///host/var/run/docker.sock
34 - CORE_VM_DOCKER_HOSTCONFIG_NETWORKMODE=fish
35 volumes:
36 - ../org_crypto_conf/organizations/peerOrganizations/Peer_fish.com/peers/peer0.Peer_fish.com:/etc/hyperledger/fabric
37 - peer0.Peer_fish.com:/var/hyperledger/production
38 - ./peercfg:/etc/hyperledger/peercfg
39 - /var/run/docker.sock:/host/var/run/docker.sock
40 working_dir: /root
41 command: peer node start
42 ports:
43 - 7051:7051
44 - 9444:9444
45 networks:
46 - test

1~8行:跟CA篇一样的理解,这里不做解释

10:指定运行的模式,我这里使用了DEBUG,可以在运行时看到详细的过程,用作生产建议使用info

11-15:配置了tls通信用到的证书和认证证书,但是路径是容器里的路径(需要主义的是后面的路径映射,他把容器外的证书目录映射到容器里面了)

17:指定运行时的id

19:指定其他peer的连接域名与端口

20:表示监听仍以ip对本机7051端口的连接,这就是orderer之间连接的方式

21-25:表示连接其他orderer的方法,只要配置怎么连其他的orderer,怎么让其他的orderer连接

27:MSPID,还是orderer间认证是的姓名

28:指定身份文件,下一期详细将orderer之间的身份认证过程

29-32:目前还没想明白

33-34:orderer中的docker映射,在fabric中所有的链码都是跑在容器里面的,所以如果用容器跑节点,那么链码就是跑在容器的容器里面,这里吧外面的容器server映射到容器里面,形成一种嵌套的东西。需要主义orderer一般不会跑用户链码,orderer中跑的是系统链码。

35-39:文件映射,需要主义的是第二个 ./peercfg 这个映射,peercfg这里面放的就是peer的配置文件,前面的大部分配置都可以在这里面写。

40:字面意思

41:指在容器中运行这个命令

总结:orderer在fabric网络中扮演着重要的角色,从他的配置文件可以看到,首先要自生组成网络,其次还要联系上peer节点,实际上在它的创世快中有整个区块链网络的信息,所以所有的关于对区块链的操作都要经过orderer的同意,其中包括应用通道的配置,链码的配置。

关于创世快的配置后面也会出一期来讲一讲。

fabric compose文件解读(Orderer篇)的更多相关文章

  1. fabric compose文件解读(CA篇)

    CA在fabric中的作用是:分配证书,实现身份认证,配普通的CA机构没什么区别(所以可以用其他CA机构颁发的证书,只要商量好就行) 我的一段CA的conpose文件 1 services: 2 ca ...

  2. trace文件解读

    *********************************************************************示例:全表扫描的10046文件解读************** ...

  3. 附005.Docker Compose文件详解

    一 Docker Compose文件简介 compose文件使用yml格式,主要分为了四个区域: version:用于指定当前docker-compose.yml语法遵循哪个版本 services:服 ...

  4. PE文件解析 基础篇

    PE文件解析 基础篇 来源 https://bbs.pediy.com/thread-247114.htm 前言 之前学习了PE格式,为了更好的理解,决定写一个类似LoadPE的小工具. 编译器是VS ...

  5. Python Fabric ssh 配置解读

    Python Fabric ssh 配置解读 Fabric 2.4简介: Fabric is a high level Python (2.7, 3.4+) library designed to e ...

  6. Java自动化测试框架-12 - TestNG之xml文件详解篇 (详细教程)

    1.简介 现在这篇,我们来学习TestNG.xml文件,前面我们已经知道,TestNG就是运行这个文件来执行测试用例的.通过本篇,你可以进一步了解到:这个文件是配置测试用例,测试套件.简单来说,利用这 ...

  7. Docker Compose 文件讲解

    Docker Compose 是什么 官方文档: Docker Compose是定义和运行多容器 Docker 应用程序的工具.使用"Compose",您可以使用 YAML 文件来 ...

  8. 如何用区块链技术解决信任问题?Fabric 架构深度解读

    阿里妹导读:区块链技术,随着比特币的兴起而为大家所知.但是具体到技术本身,大家相对熟悉的几个词可能是“数据不可篡改”.“公开链”.“分布式数据”.“共识机制”等. 这篇文章将抛砖引玉,通过深度解读Hy ...

  9. Hyperledger Fabric相关文件解析

    1相关文件说明 这一部分涉及相关配置文件的解析, 网络的启动涉及到多个文件,本文按以下顺序进行分析: . ├── base │   ├── docker-compose-base.yaml #1 │  ...

  10. C语言读取写入CSV文件 [一]基础篇

    本系列文章目录 [一] 基础篇 [二] 进阶篇--写入CSV [三] 进阶篇--读取CSV 什么是CSV? CSV 是一种以纯文本形式存储的表格数据,具体介绍如下(来自维基百科): 逗号分隔值(Com ...

随机推荐

  1. This beta version of Typora is expired, please download and install a newer version. 实测最简单有效的方案

    This beta version of Typora is expired, please download and install a newer version. 实测最简单有效的方案 一.问题 ...

  2. 基于locust全链路压测系统

    2021年中旬就计划着搭建一套压测系统,大约9月份已经搭建完成,使用至今还是比较稳定了,分享一下搭建思路及过程: 为什么选择Locust呢,因为Locust可以仅需要执行命令就可以完成压测任务,并且集 ...

  3. 力扣571(MySQL)-给定数字的频率查询中位数(困难)

    题目: Numbers 表保存数字的值及其频率. 在此表中,数字为 0, 0, 0, 0, 0, 0, 0, 1, 2, 2, 2, 3,所以中位数是 (0 + 0) / 2 = 0. 请编写一个查询 ...

  4. 牛客网-SQL专项训练15

    ①MySQL是一种(关系型)数据库管理系统. 关系型数据库的代表包括Oracle, Sql Server, MySQL. ②小李在创建完一张数据表后,发现少创建了一列,此时需要修改表结构,应该用哪个语 ...

  5. 入门即享受!coolbpf 硬核提升 BPF 开发效率 | 龙蜥技术

    简介: 干货必备!何为享受式开发? 编者按:BPF 技术还在如火如荼的发展着,本文先通过对 BPF 知识的介绍,带领大家入门 BPF,然后介绍 coolbpf 的远程编译(原名 LCC,LibbpfC ...

  6. MaxCompute 公共云多租户设计的技术要点详解及产品实现特色

    ​简介:公共云大数据平台在多租户的设计和实现方式上有所差异.本文主要介绍在公共云大数据平台的多租实现方案中需要考虑的问题和挑战,重点介绍了MaxCompute在计算和存储多租实现上的特点.期望通过这些 ...

  7. MAE 自监督算法介绍和基于 EasyCV 的复现

    ​简介:自监督学习(Self-Supervised Learning)能利用大量无标注的数据进行表征学习,然后在特定下游任务上对参数进行微调.通过这样的方式,能够在较少有标注数据上取得优于有监督学习方 ...

  8. 阿里云CDN操控2.0版本正式发布

    ​简介: 2021年8月,阿里云边缘云CDN完成过去3年来最大的一次版本升级. 2021年8月,阿里云边缘云CDN完成过去3年来最大的一次版本升级.本次升级根据上万企业客户的使用反馈和行业应用特征,从 ...

  9. [FAQ] uni-app 如何让页面不展示返回箭头图标

    默认情况是,有历史上一页的 页面会在左上角展示返回图标. 比如登录页不想展示返回,在跳转进来时可以使用 uni.redirectTo({}),它能够关闭其它页面,这样当前页就不会有返回箭头了. Ref ...

  10. dotnet 统信 UOS 运行 UNO FrameBuffer 应用错误 Failed to open FrameBuffer device

    本文记录在 UOS 统信系统上运行 UNO 的基于 Skia 的 FrameBuffer 应用报错问题,错误提示是 Unhandled exception. System.InvalidOperati ...