区块链单组群多节点部署

区块链单组群多节点部署

环境配置

配置 最低配置 推荐配置
CPU 1.5GHz 2.4GHz
内存 1GB 8GB
核心 1核 8核
带宽 1Mb 10Mb
  • 本次试验使用Ubuntu16.04版本,内存4G

Ubuntu16.04版本镜像下载地址

VMware官网

区块链的分类

  • 公有链-公有云

无官方组织机构,无中心服务器,参与的节点按照系统规则自由介入网络,不受控制,节点间基于共识机制开展工作.

  • 私有链-私有云

建立在某个企业内部,系统的运作根据企业要求进行设定,修改甚至是读取权限仅限于少数节点,同时仍保留着区块链的真实性,和部分去中心化特性.

  • 联盟链-混合云

由若干机构联合泛起,基于公有和私有链之间,兼具部分去中心化的特性

部署

按照上一篇博客安装好Ubuntu虚拟机,这次登录用户

在桌面上点击鼠标右键,出现Open Terminal打开终端选项

小声哔哔:把本篇博客代码高亮的地方依次复制到你的命令里,应该不会有什么大问题,遇到问题随机应变,看看错误提示。这篇向面向不同基础的人,所以有些地方会带命令的解释

安装依赖

本次使用的是FISCO BCOS平台,由于接下来要安装它的开发部署工具build_chain.sh,依赖于OpenSSLcurl,所以需要先安装依赖

sudo命令是linux系统的管理指令,允许系统管理员让普通用户执行一些或者全部的root命令。

apt-get,是一条linux命令,适用于deb包管理式的操作系统,主要用于自动从互联网的软件仓库中搜索、安装、升级、卸载软件或操作系统。

install安装

后面三个是依赖的名称,

OpenSSL 是一个安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。

curl是利用URL语法在命令行方式下工作的开源文件传输工具。它被广泛应用在Unix、多种Linux发行版中,并且有DOS和Win32、Win64下的移植版本。

vim是一个类似于Vi的著名的功能强大、高度可定制的文本编辑器。使用方法通常是vim (文件路径)

sudo apt-get install -y openssl curl vim

创建操作目录

mkdir是新建文件夹命令

mkdir -p fisco
cd fisco/

下载脚本

用的是GitHub上的FISCO开源脚本,如果使用的是公共网络可能会有连接不上GitHub的可能,这时可以把网络改为个人热点或私有网络

这条命令的意思是先用curl下载GitHub上的脚本,chmod命令用来执行build_chain.sh脚本,u代表user用户权限,x代表eXecute执行权限值为1,&&前后的命令也可以分成两句来写

user@ubuntu:~/fisco$ curl -#LO https://github.com/FISCO-BCOS/FISCO-BCOS/releases/download/v2.7.2/build_chain.sh

user@ubuntu:~/fisco$ chmod u+x build_chain.sh

这样的两行和下面高亮的代码效果是一样的

 curl -#LO https://github.com/FISCO-BCOS/FISCO-BCOS/releases/download/v2.7.2/build_chain.sh && chmod u+x build_chain.sh

查看端口情况

下载完脚本之后,我们需要生成一条但群组4节点的FISCO链

在生成链之前,需要确保机器的30300~30303,20200~20203,8545~8548这三个范围的端口没有被占用

lsof命令可以查看端口情况

sudo lsof -i:30300-30303
sudo lsof -i:20200-20203
sudo lsof -i:8545-8548
sudo lsof -i

搭建联盟链

注意搭建的时候需要在fisco目录下进行(命令:cd fosco/)

bash build_chain.sh -l 127.0.0.1:4 -p 30300,20200,8545

成功搭建后,启动所有节点

bash nodes/127.0.0.1/start_all.sh 

检查进程是否有启动

ps -ef | grep -v grep | grep fisco-bcos

查看节点的连接信息,可以看到node0跟其他3个绩点都会有连接

tail -f nodes/127.0.0.1/node0/log/log* | grep connected

上一个命令通过Ctrl+C结束运行

查看节点的共识,若输出信息带有+++++ Generating seal表示共识正常,同样Ctrl+C结束运行

 tail -f nodes/127.0.0.1/node0/log/log* | grep +++
就是下边这个流程:
user@ubuntu:~/fisco$ bash nodes/127.0.0.1/start_all.sh 
try to start node0
try to start node1
try to start node2
try to start node3
 node0 start successfully
 node2 start successfully
 node3 start successfully
 node1 start successfully
user@ubuntu:~/fisco$ ps -ef | grep -v grep | grep fisco-bcos
user       7555   4336  0 19:41 pts/1    00:00:00 /home/user/fisco/nodes/127.0.0.1/node0/../fisco-bcos -c config.ini
user       7557   4336  1 19:41 pts/1    00:00:00 /home/user/fisco/nodes/127.0.0.1/node2/../fisco-bcos -c config.ini
user       7559   4336  0 19:41 pts/1    00:00:00 /home/user/fisco/nodes/127.0.0.1/node1/../fisco-bcos -c config.ini
user       7562   4336  0 19:41 pts/1    00:00:00 /home/user/fisco/nodes/127.0.0.1/node3/../fisco-bcos -c config.ini
user@ubuntu:~/fisco$ tail -f nodes/127.0.0.1/node0/log/log* | grep connected
info|2021-03-17 19:44:16.305073|[P2P][Service] heartBeat,connected count=3
info|2021-03-17 19:44:26.305560|[P2P][Service] 
^C
user@ubuntu:~/fisco$ tail -f nodes/127.0.0.1/node0/log/log* | grep +++
info|2021-03-17 19:45:32.883210|[g:1][CONSENSUS][SEALER]++++++++++++++++ Generating seal on,blkNum=1,tx=0,nodeIdx=2,hash=5776f212...
^C

猜你喜欢

转载自blog.csdn.net/ZYJ_OvO/article/details/114950082
今日推荐