首页 > 区块链 > 如何用K8s实现Fabric区块链即服务的实践
媒体链  

如何用K8s实现Fabric区块链即服务的实践

摘要:fabric区块链超级账本(hyperledger)是Linux基金会于2015年发起的推进区块链数字技术和交易验证的开源项目,目标是让成员共同合作,共建开放平台,满足来自多个不同行业各种用户案例,并简化业务流程。由于点对点网络的特性,分布式账本技术是完全共享、透明和去中心化的,故非常适合于在金融行

超级账本(hyperledger)是Linux基金会于2015年发起的推进区块链数字技术和交易验证的开源项目,目标是让成员共同合作,共建开放平台,满足来自多个不同行业各种用户案例,并简化业务流程。

由于点对点网络的特性,分布式账本技术是完全共享、透明和去中心化的,故非常适合于在金融行业的应用,以及其他的例如制造、银行、保险、物联网等无数个其他行业。通过创建分布式账本的公开标准,实现虚拟和数字形式的价值交换,例如资产合约、能源交易、结婚证书、能够安全和高效低成本的进行追踪和交易。

在千呼万唤之后,超级账本Fabric1.0发布了。VMware先进技术中心技术总监张海宁在SACC大会上谈到,Hyperledger Fabric 1.0的特点包括:提供了交易的机密性、权限管理和控制、分离了共识和记账职能、节点数动态伸缩、吞吐量有望提升、可升级的智能合约,以及成员服务的高可用等。一时间,让社区欢呼雀跃。

然而在激动过后,回归平静之时,人们却往往发现,搭建Fabric平台是个相当披荆斩棘的历程。因为不仅要具备密码学、分布式计算、共识算法等区块链理论基础,而且要熟悉容器、Golang / Node.js 这些企业用户不常用的工程技术,这常常是很多人把区块链放弃在起跑线的原因。

除此之外,Fabric的应用还面临这几个问题:大量配置文件、繁琐且容易出错、开发人员无法专注于应用开发、基于Fabric身份管理的设计、网络中节点增减的步骤繁多、节点的状态不易监控,节点宕机后需要手动重启。降低使用门槛,提高易用性称为区块链应用落地的首要条件。

如何用K8s实现Fabric区块链即服务的实践

当然这些并不能阻挡聪明的开发人员,他们把眼光放到了Kubernetes上,作为目前最主流的云原生应用平台,Kubernetes可以灵活地部署、监控和运维容器应用,基于容器技术开发的Fabric项目,可以很好的结合Kubernetes,实现区块链即服务的能力。

Kubernetes集群包含一个overlay网络(flannel),容器(Pod)都接入到这个网络。Kubernetes的namespace与Fabric的organization做映射,org通过域名进行区分。

另外,在 Kubernetes 中,Namespace 是一个很重要的概念,它用于划分不同的虚拟集群,而 Fabric 中 organization 基于证书签发机构划分,把 K8S 的 namespace 与 Fabric 的 organization 对应,既使得 organization 之间相互独立,又充分利用了 K8S 的 DNS 服务,各个 organization 可以通过域名区分。采用 namespace 分隔各个组织的组件,还可实现网络策略来隔离不同组织,实现多租户的能力。

如何用K8s实现Fabric区块链即服务的实践

对于生成Pod、namespace配置,每个节点需要相应的配置文件,通过模版自动生成各个节点的配置文件,遍历目录结构修改模板,并把修改后的文件放置到相应的目录下。在启动集群时,按照一定顺序启动,已经生成一套相对完整的启动文件,放置在共享存储NFS上,通过PV和PVC控制容器对文件的访问权限。

基于Kubernetes容器云平台初步实现BaaS的基础部署步骤。在此之上,增加更多的区块链层运维管理功能,图形化运维界面,使得开发人员投入更多的精力到应用的业务逻辑上。

如何用K8s实现Fabric区块链即服务的实践

▲更多信息尽在IT168现场报道专题

免责声明
世链财经作为开放的信息发布平台,所有资讯仅代表作者个人观点,与世链财经无关。如文章、图片、音频或视频出现侵权、违规及其他不当言论,请提供相关材料,发送到:2785592653@qq.com。
风险提示:本站所提供的资讯不代表任何投资暗示。投资有风险,入市须谨慎。
世链粉丝群:提供最新热点新闻,空投糖果、红包等福利,微信:juu3644。