[区块链] 搭建单群组网络

本实验虚拟机的操作系统如下:

实验环境 版本信息
操作系统 Ubuntu 18.04.6 LTS

本实验虚拟机的硬件配置如下:

配置 参数
CPU 2.0GHz
核心 ≥4核
内存 ≥8GB

实验目的

本实验将演示如何搭建 FISCO BCOS 单群组网络节点,通过在单机上使用开发部署工具部署一条单群组 4 节点的区块链网络,帮助学生熟悉和掌握开发部署工具的使用,掌握 FISCO BCOS 单群组网络区块链的搭建流程。

实验内容

  • 下载开发部署工具

  • 检查端口占用

  • 构建单群组网络节点

  • 启动节点并查看节点运行状态

实验步骤

1、下载开发部署工具

1.1 打开终端

①、在桌面空白处点击鼠标右键,选择 “在此打开终端”

②、打开终端后显示如下界面

1.2 依赖检查

开发部署工具 build_chain.sh 脚本依赖于以下库

  • openssl:用于在构建节点时生成证书

  • wget:用于下载开发部署工具

虚拟机已经提前预装了 openssl 和 wget,可在终端输入命令查看 openssl 和 wget 的版本。

①、查看 openssl 版本信息

openssl version

②、查看 wget 版本信息

wget --version

1.3 下载工具

①、创建 fisco 工作目录

在终端输入如下命令,创建 fisco 目录并进入

mkdir fisco && cd fisco

②、下载开发部署工具

在 fisco 目录下,输入如下面命令,下载开发部署工具 build_chain.sh

curl -#LO https://github.com/FISCO-BCOS/FISCO-BCOS/releases/download/v2.11.0/build_chain.sh 

③、修改脚本权限

输入如下命令,可查看刚才下载的开发部署工具 build_chain.sh,此时该文件名显示白色,无执行权限

ls

输入以下命令,修改脚本运行权限,权限修改成功后,再次输入 'ls' 命令,可看到文件名变为绿色

2、检查端口占用

2.1 检查 p2p 端口是否占用

输入如下命令,检查 p2p 端口(30300-30303)是否占用,若端口没有被占用,则不会输出任何信息

lsof -i:30300-30303

2.2 检查 channel 端口是否占用

输入如下命令,检查 channel 端口(20200-20203)是否占用,若端口没有被占用,则不会输出任何信息

lsof -i:20200-20203

2.3 检查 rpc 端口是否占用

输入如下命令,检查 rpc 端口(8545-8548)是否占用,若端口没有被占用,则不会输出任何信息

lsof -i:8545-8548

3、构建单群组网络节点

使用开发部署工具在本地构建单群组4节点的区块链网络,命令如下:

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

参数说明:

  • -l:用于指定要生成的链的 IP 列表以及每个 IP 下的节点数,以逗号分隔。

  • -p:分别指定节点的 p2p, channel, jsonrpc 端口,同一个 IP 下的不同节点所使用端口从起始端口递增。

出现 [INFO ALL completed] 信息则说明节点构建成功。

4、启动节点并查看节点运行状态

4.1 启动单群组网络节点

输入如下命令,启动所有节点

bash nodes/127.0.0.1/start_all.sh

4.2 检查节点进程

输入如下命令,查看节点进程,正常情况下会显示 4 个节点进程

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

4.3 查看节点连接数

①、输入如下命令,可查看节点 node0 的连接数,除开自身节点,应该能看到有 3 个连接数。

正常情况下,终端会不断打印日志输出,按 “ctrl + c” 可回到终端。

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

②、输入如下命令,可查看节点 node1 的连接数,除开自身节点,应该能看到有 3 个连接数。

③、输入如下命令,可查看节点 node2 的连接数,除开自身节点,应该能看到有 3 个连接数

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

④、输入如下命令,可查看节点 node3 的连接数,除开自身节点,应该能看到有 3 个连接数

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

4.4 查看节点共识

①、输入以下命令,可查看节点 node0 的共识状态,正常情况下,终端会不断输出 “[SEALER]++++++++++++++++” 信息,表示节点共识正常。共识信息会不断打印,可按 “ctrl + c” 退出。

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

②、输入以下命令,查看 node1 的共识

tail -f nodes/127.0.0.1/node1/log/log*  | grep +++

③、输入以下命令,查看 node2 的共识

tail -f nodes/127.0.0.1/node2/log/log*  | grep +++

④、输入以下命令,查看 node3 的共识

tail -f nodes/127.0.0.1/node3/log/log*  | grep +++

猜你喜欢

转载自blog.csdn.net/2301_81317994/article/details/140881817