fabric

Fabric v1.0 block结构与修改

人走茶凉 提交于 2020-04-15 09:48:46
【推荐阅读】微服务还能火多久?>>> fabric v1.0 区块数据结构: 详细结构 Fabric 打开blockfile 1.docker exec -it peer节点名 bash , 比如:sudo docker exec -it peer0.org3.wisedu.com bash 2.cd /var/hyperledger/production/ledgersData/chains/chains/mychannel 3.注:里面的文件比如blockfile_000000可以删除: rm blockfile_000000 4.将blockfile拷贝出来: #exit #sudo docker cp 31bf8b2e6374:/var/hyperledger/production/ledgersData/chains/chains/mychannel/blockfile_000000 /home/shirly/projects 其中,b81a1d1d8064是对应peer0.org3.wisedu.com的容器ID,可根据root@31bf8b2e6374:获得 那么是不是可以先把blockfile文件拷贝出来进行修改,将/var/hyperledger/production/ledgersData/chains/chains

自动化运维工具Ansible-基础介绍(一)

走远了吗. 提交于 2020-04-13 11:54:16
【今日推荐】:为什么一到面试就懵逼!>>> 自动化运维工具Ansible-基础介绍 1、简介 ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet、cfengine、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。ansible是基于模块工作的,本身没有批量部署的能力。真正具有批量部署的是ansible所运行的模块,ansible只是提供一种框架。主要包括: (1)、连接插件connection plugins:负责和被监控端实现通信; (2)、host inventory:指定操作的主机,是一个配置文件里面定义监控的主机; (3)、各种模块核心模块、command模块、自定义模块; (4)、借助于插件完成记录日志邮件等功能; (5)、playbook:剧本执行多个任务时,非必需可以让节点一次性运行多个任务。 2、特性 (1)、no agents:不需要在被管控主机上安装任何客户端; (2)、no server:无服务器端,使用时直接运行命令即可; (3)、modules in any languages:基于模块工作,可使用任意语言开发模块; (4)、yaml not code:使用yaml语言定制剧本playbook; (5)、ssh by default:基于SSH工作; (6)

你还在贴发票吗?区块链带你玩点不一样的

▼魔方 西西 提交于 2020-04-11 01:36:32
本文作者:HelloDeveloper 报销是不是你每个月最头疼的事情?除了贴一大堆票之外,还要等财务人员一张张审核、录入系统、统一打款。如果有差错,还会告诉你所有一切重新来过。 如果你是财务人员,那么恭喜你。因为你可能会成为焦点所在,公司所有人都在等你的消息,等你审核,等你打款。 好消息是,随着电子发票的落地,实现了一次跨越性的进展,对普通消费者和企业来说,开票更迅速,还能重复下载、永久存储。节约成本的同时提高了办事效率。对政府部门来说,信息化程度升级,提高了政务服务的水平。 如此看来,电子发票似乎有百利而无一害。不过,有了区块链加持之后,电子发票会出现新的特性,更加便利和安全,让“贴发票”这件事永久成为过去,让“开票即报销”成为可能。 电子发票推广究竟有何障碍 ◆ ◆ ◆ 电子发票虽然好处多多,但同任何一个新生事物一样,在推广的过程中总会遇到一些阻碍,存在着勘验环节繁琐、入账环节不可控、打印成本转移给消费者等痛点,直接影响了电子发票的普及。 举个例子,目前大部分财务报销过程仍要求纸质发票,要想完成报销还得将电子发票打印出来。而对于财务人员来说,由于电子发票可以无限次重复打印或复印,辨别真伪又要花费大量时间和成本。 区块链的出现,为解决电子发票的难题提供了一条路径。通过搭建一个财税业务联盟链,个人、企业、税务机关,甚至于审计所和银行等众多参与者都可以被纳入到一个公共管理系统中

什么是Virtual Fabric?

好久不见. 提交于 2020-04-08 11:48:25
Virtual Fabric利用一种技术手段把一个公用的物理SAN fabric划分成多个虚拟的“工作域”,这种技术可以增加端口的使用效率,降低SAN Fabric物理互连时产生的资源损耗。使用Virtual Fabrics,客户可以将一个物理交换机划分为若干个逻辑交换机。而每个逻辑交换机均可独立地建立或从属于一个逻辑Fabric(逻辑SAN网),由此而构成的任意逻辑Fabric拥有独立的数据路径、Fabric架构配置(分区、服务质量(QoS)、互操作模式等)和管理。 由于不需要在存储区域网(SAN)中的每台交换机上启用逻辑交换机,因此可在现有环境中实现简单而无中断的部署。如图1所示,每个逻辑交换机分别属于一个逻辑Fabric。逻辑Fabric包括分配给它的所有逻辑交换机,而且还可能包括不支持Virtual Fabrics的物理交换机。多个逻辑Fabric内的数据传输可以通过共用 一种被称为“XISL”的特殊交换机间级联链路(ISL)来实现,XISL可以在同一条物理链路上传输多个逻辑Fabric的数据流,同时保持各个Fabric架构间彼此的相互隔离。 此外,逻辑Fabric还能够支持基于3层的集成路由(IR)。基于这一特性,由部分或一个或多个物理交换机所创建出的逻辑交换机即可创建或被指定成为一个骨干Fabric(BackboneFabric)

【fabric实战指南二】Fabric v1.0 部署过程原理详解

巧了我就是萌 提交于 2020-04-07 10:43:41
区块链兄弟社区,区块链技术专业问答先行者,中国区块链技术爱好者聚集地 作者:吴寿鹤 来源: 区块链兄弟 原文链接: http://www.blockchainbrother.com/article/18 著权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 编 译fabric tools 我们会编译以下几个工具: github.com/hyperledger/fabric/common/configtx/tool/configtxgen github.com/hyperledger/fabric/common/tools/cryptogen github.com/hyperledger/fabric/common/tools/configtxlator github.com/hyperledger/fabric/peer 以上每个工具都需要读取一个yaml文件配置,在配置文件中我们指明网络的拓扑结构,证书地址等。 cd $GOPATH/ src /github. com /hyperledger/fabric make release ls -rtl release/linux-amd64/bin -rwxrwxr- x 1 shouhewu shouhewu 15124356 Jul 17 13 : 58 configtxgen -rwxrwxr- x 1

HyperLedger Fabric 1.4 智能合约 Helloworld运行(9)

こ雲淡風輕ζ 提交于 2020-04-07 06:58:47
网易云课堂视频在线教学,地址: https://study.163.com/course/introduction/1209401942.htm 9.1 Helloworld案例简介 通过执行官方End-2-End案例,初始了解Fabric网络的运行流程及yaml配置,官方End-2-End案例把执行过程集成,通过一条命令即可完成全部操作,对于初学者只能了解Fabric网络搭建是否成功,对于Fabric网络的执行细节还是迷惑。 为了能让初学者全面了解Fabric网络的执行细节,本章通过手动方式搭建一个orderer、一个组织和一个peer的SOLO排序的Fabric网络,把配置独立出来,形成orderer和peer配置等单个yaml文件,通过手动执行orderer和peer搭建Fabric网络。 编写最简单的智能合约,初始化时在区块中存储Hello world字符串,然后通过智能合约可以查询出Hello world字符串,初步了解智能合约编写。 9.2 Helloworld链码编写 Helloworld链码实现Init和Invoke两个接口,通过stub.PutState和stub.GetState保存和获取链值对数据。 Init(stub shim.ChaincodeStubInterface):用于智能合约初始化及升级初始化,实现初始化时保存链值对; Invoke(stub

Python fabric实践操作

风流意气都作罢 提交于 2020-03-28 16:49:36
前面学习了理论,下面该练练手了。两台机器:10.1.6.186、10.1.6.159。fabric部署在10.1.6.186上面。 1 执行一个简单的task任务,显示两台机器的/home/guol/目录下的文件 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 #!/usr/bin/python from fabric.api import * from fabric.context_managers import * env.hosts = [ '10.1.6.186' , '10.1.6.159' ] env.password = 'xxxxxx' def task1(): with cd( '/home/guol' ): run( 'ls -l' ) ##结果 root@vm11: / tmp # fab task1 [ 10.1 . 6.186 ] Executing task 'task1' [ 10.1 . 6.186 ] run: ls - l [ 10.1 . 6.186 ] out: total 0 [ 10.1 . 6.186 ] out: - rw - r - - r - - 1 root root 0 Dec 21 13 : 32 186 -

Tungsten Fabric入门宝典丨首次启动和运行指南

社会主义新天地 提交于 2020-03-27 18:34:45
Tungsten Fabric入门宝典系列文章,来自技术大牛倾囊相授的实践经验,由TF中文社区为您编译呈现,旨在帮助新手深入理解TF的运行、安装、集成、调试等全流程。如果您有相关经验或疑问,欢迎与我们互动,并与社区极客们进一步交流。更多TF技术文章,请点击公号底部按钮>学习>文章合集。 作者:Tatsuya Naganawa 译者:TF编译组 两年来,我在Tungsten Fabric的旅程中学到了不少知识,接下来,我会用几篇文章来简要介绍一下。 1为什么要用Tungsten Fabric? 首先,让我们来看一个重要的问题,SDN/Neutron/CNI都有很多不错的实现案例,为什么还要再尝试另一个呢?据我所知,Tungsten Fabric具有两个关键的差异化特征,这使它变得如此与众不同。 I. 与ASIC的互操作性 尽管有很多技术使Linux软件成为生产路由器/交换机的理想选择,但ASIC仍然是这一行业的重要组成部分。为了与它们进行互操作,SDN平台需要使用路由协议,例如BGP或OVSDB。 许多服务提供商和云服务商使用VRF来终结和分离每个客户的网络连接,这使得路由器和SDN之间的连接变得很复杂。 通常,它们之间可以使用VLAN,但是SDN平台上的终结点可能会成为瓶颈 此外,每个SDN终结点(类似于OpenStack中的网络节点)需要为每个客户进行单独的配置,这使配置更加复杂

快速搭建fabric1.3

萝らか妹 提交于 2020-03-24 07:49:29
需要的软件版本参考 fabric源码中的文档:fabric/docs/source/prereqs.rst 我使用的版本: Ubuntu16.04 go1.10.5 linux/amd64 pip 1.8 docker 18.09.0 docker-compose 1.18.0, node v8.5.0 搭建过程: 1. sudo apt install cURL 2.安装golang $home下新建文件夹gopath 在gopath下新建三个文件夹 pkg,bin,src 在src下建立目录github.com/hyperledger 将fabric源码放到该目录下 下载golang源码包 1.10.x 解压 移动到/usr/local/ 编辑/etc/profile 将下面四行粘贴到文件末尾 export GOROOT=/usr/local/go export GOBIN=$GOROOT/bin export PATH=$PATH:$GOBIN export GOPATH=$HOME/gopath 关闭文件,执行 source /etc/profile 执行 go env 查看go的环境信息 3.安装pip sudo apt install python-pip sudo pip install --upgrade pip 4.安装docker curl -fsSL

Hyperledger Fabric1.0环境搭建

╄→гoц情女王★ 提交于 2020-03-24 07:46:00
一、准备CentOS系统,本文使用的是CentOS7.0 二、安装Docker   执行命令   yum -y install docker   验证是否安装成功   docker --version    三、安装Docker-compose   执行命令   curl -L https://github.com/docker/compose/releases/download/1.9.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose   赋予执行权限   chmod +x /usr/local/bin/docker-compose   拷贝的系统目录   cp /usr/local/bin/docker-compose /usr/bin   验证是否安装成功   docker-compose --version    四、安装go语言编译器   yum install golang   验证是否安装成功   go version      配置go工作空间的环境变量   GOPATH=/opt/go 五、安装git   yum install git   验证是否安装成功    六、下载fabric源码   go get github.com/hyperledger/fabric