fabric基础知识

fabric基础知识,第1张

fabric基础知识

目录
  • 一、Fabric
    • 1. 权限系统
    • 2. 共识算法
    • 3. 模块组成
    • 3. fabric启动
  • 二、Docker
      • 三级目录

一、Fabric 1. 权限系统

MSP(Membership Service Provider):会员服务系统,基于PKI规范建立的用户证书和私钥体系

2. 共识算法

fabric支持solo和kafka两种模式

  • solo:单个节点中完成排序,安全性稳定性差
  • kafka:排序节点从kafka集群获取对应topic分区的数据,避免单点故障
3. 模块组成
  • peer:主节点,存储区块链数据,运行链码
  • orderer:对交易进行排序,将排序好的交易打包
  • cryptogen:组织和证书生成模块
  • configtxgen:区块和交易生成模块
  • configtxlator:区块和交易解析模块

开发时模块生成方法(任选一个):

  • 直接编译源代码:可以将这些模块先编译,再放到系统目录中,就可以在任何路径下运行这些模块;
  • 使用本地源代码生成fabric模块的docker镜像
  • 从docker仓库中直接下载fabric模块的docker镜像文件(e2e_cli就是这种方法)
    • baseos:基础镜像,其他镜像都在该镜像基础之上生成
    • baseimage:包含jdk、golang、nodejs等,用来生成chaincode
    • peer:peer模块镜像
    • orderer:oderer节点库镜像
    • ca:ca模块镜像
    • tools:工具镜像,包含cryptogen、configtxgen、configtxlator等工具
    • couchdb:couchdb数据库镜像
    • kafka:kafka库镜像
    • zookeeper:zookeeper库镜像
    • testenv:测试环境库镜像
    • buildenv:编译环境库镜像
    • javaenv:java链码运行镜像
    • ccenv:go链码运行镜像
3. fabric启动
  1. 生成相关证书,cryptogen模块完成,根据yaml配置文件生成证书

  2. 生成创始块

    1. 系统创始块,系统创始块是存配置信息的,configtxgen模块完成,根据configtx.yaml生成创始块文件orderer.genesis.block

    2. 账本创始块,channel的创始块,configtxgen模块完成,根据configtx.yaml生成roberttestchannel.tx,该文件生成channel,还要生成锚节点文件Org1MSPanchors.tx和Org2MSPanchors.tx

  3. 启动orderer节点,orderer模块完成,根据orderer的yaml文件(还定义了log格式等)启动orderer节点

  4. 启动peer节点,peer模块完成,根据peer的yaml文件(还定义了log格式等)启动peer节点

  5. 创建通道

    1. 创建通道,peer节点
二、Docker

docker compose:是使用docker容器分布式部署的工具,只需要定义一个多容器应用的yml文件,定义哪个容器运行哪个应用,然后用一条命令即可部署所有容器

三级目录

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5479320.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-12
下一篇 2022-12-12

发表评论

登录后才能评论

评论列表(0条)

保存