您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關如何理解Hyperledger Cello,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
Hyperledger Cello是超級賬本項目下面的一個子項目,提供按需部署的功能,可以將區塊鏈部署在各種裸機、虛擬機、容器等環境中。該項目最初由IBM發起,目前得到了Soramitsu, 華為,和Intel的贊助。
該項目目前還在孵化中,未來可能還存在較大變化,這里我們將對這個工具進行快速概覽。
Cello可以容易的幫助用戶實現:
從頭開始快速構建一個區塊鏈即平臺(BaaS)的服務
支持可定制的區塊鏈,如 Hyperledger fabric network v1.0.
可以在裸機、虛擬云端(如虛擬機,vsphere Clouds等),或容器集群(如Docker, Swarm, Kubernates等)中管理一個區塊鏈網絡資源
從dashboard中就可以完成檢查系統狀態,調整區塊鏈數量,擴展資源等功能
典型的應用場景如下:
整個Cello的架構圖如下所示:
Cello采取了一主多從的部署模式,Cello Service部署在Master節點上,提供宿主資源的裸機或虛擬環境稱為Host,被Cello管理的區塊鏈服務單元稱為Worker。整套環境部署要求至少一個Master與一個Worker。
Master安裝部署
Master節點提供Cello Service的宿主環境,通常提供web管理界面。官方建議Master使用Linux運行環境,推薦Ubuntu 16.04操作系統。
Master環境要求如下:
Hardware: 8c16g100g
Docker engine: 1.10.0~1.13.0 (Docker 17.0+ support is experimental)
docker-compose: 1.8.0~1.12.0
Docker的環境安裝就略過了,直接按照Docker官方文檔的來就好了。
$ sudo aptitude install git make -y $ git clone http://gerrit.hyperledger.org/r/cello && cd cello $ make setup-master
之后腳本便會安裝一些依賴,以及下載所需要的Docker鏡像
使用make start/stop/restart等命令就可以,此外,還可以通過添加環境變量控制啟動行為,具體可以參考官方文檔
此時就可以訪問http://ip:8080打開web管理界面了,默認的用戶名密碼分別為admin和pass
Worker安裝部署
當前Cello只支持Docker和Swarm做Worker node,未來會支持更多Worker node類型。部署Worker node除了支持Docker和Swarm方式本身之外,還支持kubernates和ansible方式(實際就是在客戶機上部署Docker+k8s那一套,然后做了下自動化配置)。
本篇內容我們以最基礎的Docker部署Worker node方式演示。為了演示我們用了同一臺PC機,產品環境請務必將Master和Worker分布式部署。
由于Master管理Worker上的Docker是通過tcp端口訪問的,而Docker默認配置是監聽unix domain socket,不監聽TCP端口,因此我們需要修改Docker的默認配置,以監聽TCP端口。編輯/etc/docker/daemon.json文件(默認不存在此文件,可以自行創建一個):
{ "registry-mirrors": ["https://registry.docker-cn.com"], "hosts": ["tcp://0.0.0.0:2375", "unix:///var/run/docker.sock"], "api-cors-header": "*" }
特別注意如果你的操作系統使用的Systemd管理的docker服務(比如Ubuntu 16.04, CentOS7, Debian 8及以上版本操作系統均采用Systemd管理服務),由于Systemd的配置腳本中已經在docker的啟動參數中指定了-H參數,會和daemon.json中的hosts配置產生沖突。所以對于這種情況下,需要在daemon.json配置中刪除hosts配置項,改到systemd的配置文件中:
$ sudo mkdir -p /etc/systemd/system/docker.service.d $ sudo cat > /etc/systemd/system/docker.service.d/override.conf <<EOF [Service] ExecStart=ExecStart=/usr/bin/dockerd -H fd:// -H tcp://0.0.0.0:2375EOF $ sudo systemctl damon-reload $ sudo systemctl restart docker
之后docker便會監聽0.0.0.0:2375這個tcp端口了。注意這個端口沒有安全防護,因此請限定運行在受保護的網絡環境中,不要暴露在互聯網。
WORKDER_TYPE=docker MASTER_NODE=127.0.0.1 make setup-worker
這樣便設置好了worker環境。
配置完畢之后,登錄Master的web界面即可完成管理Host與添加chain的操作了。
最終一番配置之后,就可以在dashboard上看到主機與區塊鏈的狀態了:
盡管Cello目前還在孵化中,部署上也不如其他產品級的軟件部署方便(沒有repo,沒有service manager,需要clone源碼使用腳本手動管理),并且未來可能還有變數。但是對于管理fabirc這里確實非常方便,利用docker部署的靈活性,可以方便的部署和管理多個版本的fabric(當前支持1.0, 1.1, 1.2三種版本網絡)。相信這個項目在未來還是有不錯的發展的。
以上就是如何理解Hyperledger Cello,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。