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. 重新整理数据结构与算法(c#)——算法套路普利姆算法[二十九]

    前言 看一个题目: 这个问题就是求最小生成树,是图转换为树的一种方式. 最小生成树概念: 最小生成树简称MST. 1.n个顶点,一定有n-1条边 2.包含全部顶点. 3.图转换为最小生成树,权重之和最 ...

  2. Vue 路由组件传参的 8 种方式

    我们在开发单页面应用时,有时需要进入某个路由后基于参数从服务器获取数据,那么我们首先要获取路由传递过来的参数,从而完成服务器请求,所以,我们需要了解路由传参的几种方式,以下方式同 vue-router ...

  3. 【开发者成长】喧哗的背后:Serverless 的挑战

    作者 | 许晓斌  阿里云高级技术专家,目前负责阿里集团 Serverless 研发运维平台建设,<Maven 实战>作者,曾经是 Maven 中央仓库的维护者. 导读:本文作者作为阿里集 ...

  4. 消息队列 RocketMQ 遇上可观测:业务核心链路可视化

    ​简介:本篇文章主要介绍 RocketMQ 的可观测性工具在线上生产环境的最佳实践.RocketMQ的可观测性能力领先业界同类产品,RocketMQ 的 Dashboard 和消息轨迹等功能为业务核心 ...

  5. 双11特刊|一站式在线数据管理平台DMS技术再升级,高效护航双11

    ​简介: 10万+企业共同选择的数据库服务平台 阿里云数据库已连续多年稳定支撑天猫双11,历经极端流量场景淬炼.除了保障稳定顺滑的基本盘,今年大促期间数据库通过全面云原生化,大幅提升用户体验,让技术帮 ...

  6. Serverless 时代下大规模微服务应用运维的最佳实践

    简介: 原来的微服务用户需要自建非常多的组件,包括 PaaS 微服务一些技术框架,运维 IaaS.K8s,还包括可观测组件等.SAE 针对这些方面都做了整体的解决方案,使用户只需要关注自己的业务系统, ...

  7. Flink + Iceberg + 对象存储,构建数据湖方案

    ​简介: 上海站 Flink Meetup 分享内容,如何基于Flink.对象存储.Iceberg 来构建数据湖生态. 本文整理自 Dell 科技集团高级软件研发经理孙伟在 4 月 17 日 上海站 ...

  8. [Docker] 镜像源配置 for Linux

    $ vi /etc/docker/daemon.json { "registry-mirrors": [ "https://docker.mirrors.ustc.edu ...

  9. [ELK] Elastic Stack 的安全性预览

    注:ELK Stack 之后的版本都叫做 Elastic Stack,增加了 Beats 等组件. 安全性保护方式: 阻止未授权的访问,通过 密码认证保护.RBAC授权.IP 过滤. 保证数据完整性, ...

  10. [Ethereum] Gas Station Network (GSN) eip-1613 与 Gas Relay Network (GRN) eip-1077

    在 Ethereum dapp 中,任何涉及状态改动的交易都需要消耗 Gas,这限制了很多没有钱包或者 ETH 的用户对 dapp 的采用. 理念 让非以太用户能够访问智能合约 (如dapps),允许 ...