您现在的位置是:首页 > 编程 > 

fiscoBcos运维部署工具单机搭链

2025-07-26 16:26:42
fiscoBcos运维部署工具单机搭链 使用运维部署工具搭建多节点多组区块链在home目录下新建fisco11文件夹并进入到fisco11文件夹下: mkdir fisco11 && cd fisco11 img下载安装 下载:git clone .git image-6 安装:cd ./generator && bash ./

fiscoBcos运维部署工具单机搭链

使用运维部署工具搭建多节点多组区块链

在home目录下新建fisco11文件夹并进入到fisco11文件夹下:

mkdir fisco11 && cd fisco11

img
下载安装

下载:git clone .git

image-20241226160720526

安装:cd ./generator && bash ./scripts/install.sh

image-20241226160742279
img

检查是否安装成功,若成功,输出 usage: generator xxx

输入以下指令:./generator -h

image-202412261608025

获取节点二进制

拉取最新fisco-bcos二进制文件到meta中,如果网络较差,可以尝试通过其他方式下载fisco-bcos,或使用–cdn选项,并将下载好的二进制放置于meta文件夹下

./generator --download_fisco ./meta

官方给的下载链接太慢了,我这里是将下载好的二进制文件放入到meta 中

二进制fisco下载地址:.11.0/gz

检查二进制版本

输入以下命令:./meta/fisco-bcos -v

img
节点组网拓扑结构

一个如图所示的6节点机构2组的组网模式。机构B和机构C分别位于组1和组2中。机构A同属于组1和组2中。

img
机器环境

每个节点的IP,端口号为如下:

机构

节点

所属组

P2P地址

RPC监听地址

Channel监听地址

机构A

节点0

组1、2

127.0.0.1:000

127.0.0.1:8545

0.0.0.0:20200

节点1

组1、2

127.0.0.1:001

127.0.0.1:8546

0.0.0.0:20201

机构B

节点2

组1

127.0.0.1:002

127.0.0.1:8547

0.0.0.0:20202

节点

组1

127.0.0.1:00

127.0.0.1:8548

0.0.0.0:2020

机构C

节点4

组2

127.0.0.1:004

127.0.0.1:8549

0.0.0.0:20204

节点5

组2

127.0.0.1:005

127.0.0.1:8550

0.0.0.0:20205

注解

  • 云主机的公网IP均为虚拟IP,若rpc_ip/_ip/channel_ip填写外网IP,会绑定失败,须填写0.0.0.0
  • RPC/P2P/Channel监听端口必须位于1024-6555范围内,且不能与机器上其他应用监听端口冲突
  • 出于安全性和易用性考虑,FISCO BCOS v2..0版本最新节点config.ini配置将listen_ip拆分成jsonrpc_listen_ip和channel_listen_ip,但仍保留对listen_ip的解析功能,详细请参考 这里
  • 为便于开发和体验,channel_listen_ip参考配置是 0.0.0.0 ,出于安全考虑,请根据实际业务网络情况,修改为安全的监听地址,如:内网IP或特定的外网IP
机构初始化

在/home/fisco11目录下初始化机构A

cp -r ./generator ./generator-A

img

在/home/fisco11目录下初始化机构B

cp -r ./generator ./generator-B

img
初始化链证书

在证书颁发机构上进行操作,一条联盟链拥有唯一的链证书

用 --generate_chain_certificate 命令生成链证书

在证书生成机构目录下操作:

cd ./generator

img

生成链证书文件到dir_chain_ca:

./generator --generate_chain_certificate ./dir_chain_ca

img

查看链证书和私钥:

ls ./dir_chain_ca

img

为链证书,ca.key为链私钥

初始化机构A

在/home/fisco11/generator目录下进行操作。

生成机构A证书:

./generator --generate_agency_certificate ./dir_agency_ca ./dir_chain_ca agencyA

img

查看机构证书及私钥:

ls dir_agency_ca/agencyA/

img

为机构证书、agency.key是机构私钥、为链证书

发送链证书、机构证书、机构私钥至机构A,示例是通过文件拷贝的方式,从证书授权机构将机构证书发送给对应的机构,放到机构的工作目录的meta子目录下

cp ./dir_agency_ca/agencyA/* …/generator-A/meta/

img
初始化机构B

在home/fisco11/generator目录下操作:

生成机构B证书:

./generator --generate_agency_certificate ./dir_agency_ca ./dir_chain_ca agencyB

img

发送链证书、机构证书、机构私钥至机构B,示例是通过文件拷贝的方式,从证书授权机构将机构证书发送给对应的机构,放到机构的工作目录的meta子目录下

cp ./dir_agency_ca/agencyB/* …/generator-B/meta/

img
img
机构A修改配置文件

node_deployment.ini为节点配置文件,运维部署工具会根据node_deployment.ini下的配置生成相关节点证书,及生成节点配置文件夹等。

机构A修改conf文件夹下的node_deployment.ini如下图所示:

在/home/fisco11/generator-A目录下进行操作

vim conf/node_deployment.ini

img
机构B修改配置文件

在/home/fisco11/generator-B目录下进行操做

vim conf/node_deployment.ini

img
机构A生成并发送节点信息

在/home/fisco11/generator-A目录下操作

机构A生成节点证书及P2P连接信息文件,此步需要用到上述配置的node_deployment.ini,及机构meta文件夹下的机构证书与私钥,机构A生成节点证书及P2P连接信息文件

./generator --generate_all_certificates ./agencyA_node_info

img

查看生成文件:

ls ./agencyA_node_info

img

cert_127.0.0.1_ cert_127.0.0.1_需要交互给机构A的节点证书 为节点P2P连接地址文件

机构生成节点时需要指定其他节点的节点P2P连接地址,因此,A机构需将节点P2P连接地址文件发送至机构B

cp ./agencyA_node_info/ …/generator-B/meta/

img
机构B生成并发送节点信息

在/home/fisco11/generator-B目录下进行操作

机构B生成节点证书及P2P连接信息文件:

./generator --generate_all_certificates ./agencyB_node_info

img

生成创世区块的机构需要节点证书,示例中由A机构生成创世区块,因此B机构除了发送节点P2P连接地址文件外,还需发送节点证书至机构A

发送证书:

cp ./agencyB_node_info/cert*.crt …/generator-A/meta/

img

发送节点P2P连接地址文件:

cp ./agencyB_node_info/ …/generator-A/meta/

img
img
机构A生成组1创世区块

在home/fisco11/generator-A目录下进行操作

vim conf/group_genesis.ini

img

这里填写的是节点连接地址,是构成组所需要连接的地址都放入进来

此步会根据机构A的meta文件夹下配置的节点证书,生成group_genesis.ini配置的组创世区块,教程中需要机构A的meta下有名为cert_127.0.0.1_,cert_127.0.0.1_,cert_127.0.0.1_,cert_127.0.0.1_的节点证书,此步需要用到机构B的节点证书。

./generator --create_group_genesis ./group

img

ls group

img

分发组1创世区块至机构B

cp ./group/group.1.genesis …/generator-B/meta

img
img
机构A生成所属节点

在home/fisco11/generator-A目录下进行操作

生成机构A所属节点,此命令会根据用户配置的node_deployment.ini文件生成相应的节点配置文件夹:

注意,此步指定的节点P2P连接信息为组内其他节点的连接信息,多个机构组网的情况下需要将其合并。

./generator --build_install_package ./meta/ ./nodeA

img

查看生成节点配置文件夹:

ls ./nodeA

img

机构A启动节点:

bash ./nodeA/start_all.sh

img

查看节点进程:

ps -ef | grep fisco

img
机构B生成所属节点

当前操作都在/home/fisco11/generator-B下进行操作

./generator --build_install_package ./meta/ ./nodeB

img

ls nodeB/

img

机构B启动节点:

bash ./nodeB/start_all.sh

img

查看节点进程:

ps -ef | grep fisco

img
查看组1节点运行状态

查看进程:

ps -ef | grep fisco

img

查看节点log:

tail -f ./node*/node*/log/log* | grep +++

img
img

至此,我们完成了如图所示机构A、机构B搭建组1的操作

img
证书授权机构初始化机构C

下面的操作在/home/fisco11目录下进行

初始化机构C,请注意,此时generator目录下有链证书及私钥,实际环境中机构C无法获取链证书及私钥。

img

生成机构C证书

这里要在home/fisco11/generator目录下进行

./generator --generate_agency_certificate ./dir_agency_ca ./dir_chain_ca agencyC

img

查看机构证书及私钥:

ls dir_agency_ca/agencyC/

img

发送链证书、机构证书、机构私钥至机构C,示例是通过文件拷贝的方式,从证书授权机构将机构证书发送给对应的机构,放到机构的工作目录的meta子目录下

cp ./dir_agency_ca/agencyC/* …/generator-C/meta/

img
机构A、C构建组2

接下来,机构C需要与A进行新组建立操作,示例中以C生成创世区块为例

机构A发送节点信息

当前操作路径在home/fisco11/generator-A目录下进行操作

由于机构A已经生成过节点证书及peers文件,只需将之前生成的节点P2P连接信息以及节点证书发送至机构C,操作如下:

示例中由机构C生成组创世区块,因此需要机构A的节点证书和节点P2P连接地址文件,将上述文件发送至机构C

发送证书:

cp ./agencyA_node_info/cert*.crt …/generator-C/meta/

img

发送节点P2P连接地址文件:

cp ./agencyA_node_info/ …/generator-C/meta/

img
img

机构C修改配置文件

在home/fisco11/generator-C目录下进行操作

vim conf/node_deployment.ini

img
机构C生成并发送节点信息

在home/fisco11/generator-C目录下进行操作

机构C生成节点证书及P2P连接信息文件:

./generator --generate_all_certificates ./agencyC_node_info

img

查看生成文件:

ls ./agencyC_node_info

img

机构生成节点时需要指定其他节点的节点P2P连接地址,因此,C机构需将节点P2P连接地址文件发送至机构A

cp ./agencyC_node_info/ …/generator-A/meta/

img
img
机构C生成组2创世区块

在home/fisco11/generator-C目录下进行操作

机构C修改conf文件夹下的group_genesis.ini如下图所示

vim conf/group_genesis.ini

img

此步会根据机构C的meta文件夹下配置的节点证书,生成group_genesis.ini配置的组创世区块。

./generator --create_group_genesis ./group ls group

img
img

分发组2创世区块至机构A

cp ./group/group.2.genesis …/generator-A/meta/

img
机构C生成所属节点

在home/fisco11/generator-C目录下进行操作

img

机构C启动节点:

bash ./nodeC/start_all.sh

img

查看节点进程:

ps -ef | grep fisco

img
机构A为现有节点初始化组2

在home/fisao11/generator-A目录下执行

添加组2配置文件至已有节点,此步将组2创世区块group.2.genesis添加至./nodeA下的所有节点内

./generator --add_group ./meta/group.2.genesis ./nodeA

img

添加机构C节点连接文件peers至已有节点,此步将的节点P2P连接地址添加至./nodeA下的所有节点内:

./generator --add_peers ./meta/ ./nodeA

img

重启机构A节点:

bash ./nodeA/stop_all.sh

bash ./nodeA/start_all.sh

img
查看组2节点运行状态

在home/fisco11/generator-C目录下进行操作

查看节点进程:

ps -ef | grep fisco

img

查看节点log:

tail -f ./node*/node*/log/log* | grep +++

img

至此,我们完成了如图所示的机构A、C搭建组2构建

img
扩展–机构C节点加入组1

将节点加入已有组需要用户使用控制台发送指令,将节点加入组

在home/fisco11/generator-A目录下进行操作

发送组1配置文件至机构C节点

./generator --add_group ./group/group.1.genesis …/generator-C/nodeC

img

重启机构C节点

bash …/generator-C/nodeC/stop_all.sh

bash …/generator-C/nodeC/start_all.sh

img

查看节点C的

cat nodeC/node_127.0.0.1_00*/conf/

img
配置控制台

在home/fisco11/generator目录下生成机构Asdk文件

./generator --generate_sdk_certificate ./dir_sdk_caA ./dir_agency_ca/agencyA/

img

在home/fisco11/generator-A目录下进行操作

下载控制台curl -#LO [.9.2/download_cole.sh && bash download_cole.sh](.9.2/download_cole.sh && bash download_cole.sh)

img
img

将sdk证书和链证书拷贝到cole/conf目录下

cp …/…/generator/dir_sdk_caA/sdk/ conf

cp …/…/generator/dir_sdk_caA/sdk/sdk.* conf

img
img

拷贝模板文件为

cp -r conf/ conf/

img

修改文件,将节点A的信息填入

vim conf/

img

启动控制台 :

bash start.sh

img

使用控制台将机构C的节点4注册为观察节点

addObserver d4aa774b8f88001a5f9fc27bb976728501ed59f401a6a8efec4a892761e7faddf645d7a2e4bd196b68adbba071942d6b041ca28c6c24edef98079fe6bd

img

使用控制台将机构C的节点5注册为共识节点

addSealer 70bcfaeabeac920c01fc20a90687df856a24566546175eb02027bf2cafa2655fbc68c760eda4ebee00f7db42d9a87a70706b257f02fb6db8ce749221cdd

img

退出控制台:

exit

img
查看节点

在home/fisco11/generator-C/nodeC目录下进行操作

查看节点node_127.0.0.1_004/log内组1信息:

cat log_202412050.00.log | grep g:1 | grep Report

img

查看节点node_127.0.0.1_005/log内组1信息

cat log_202412050.00.log | grep g:1 | grep Report

img

至此已经完成了机构C加入组1的操作

img
扩展–机构A扩容节点加入组1

我们将会为机构A新增节点6,IP、端口号如下:

机构

节点

所属组

P2P地址

RPC监听地址

Channel监听地址

机构A

节点6

组1

127.0.0.1:006

127.0.0.1:8551

0.0.0.0:20206

在上述过程中,机构A已经生成了自己所属的机构证书及私钥,并且拥有了组1的创世区块,扩容节点需要进行的操作如下。

将节点加入已有组需要用户使用控制台发送指令,将节点加入组,示例如下:

机构A修改配置文件

node_deployment.ini为节点配置文件,运维部署工具会根据node_deployment.ini下的配置生成相关节点证书,及生成节点配置文件夹等。

机构A修改conf文件夹下的node_deployment.ini如下图所示:

在home/fisco11/generator-A目录下进行操作

vim conf/node_deployment.ini

img

机构A生成节点证书及P2P连接信息文件,此步需要用到上述配置的node_deployment.ini,及机构meta文件夹下的机构证书与私钥,机构A生成节点证书及P2P连接信息文件

./generator --generate_all_certificates ./agencyA_node_info_new

img

查看生成文件:

ls ./agencyA_node_info_new

img
机构A生成新增节点

生成机构A所属节点,此命令会根据用户配置的node_deployment.ini文件生成相应的节点配置文件夹:

注意,此步指定的节点P2P连接信息为组内其他节点的连接信息,多个机构组网的情况下需要将其合并。

合并当前节点的

cat ./agencyA_node_info/ >> ./meta/

img

生成新增节点:

./generator --build_install_package ./meta/ ./nodeA_new

img

查看新增节点配置文件:

ls ./nodeA_new

img

机构A启动节点:

bash ./nodeA_new/start_all.sh

img

查看节点进程:

ps -ef | grep fisco

img

查看节点6的节点id

cat nodeA_new/node_127.0.0.1_006/conf/

img
使用控制台注册共识节点

在home/fisco11/generator-A/cole目录下进行操作

启动控制台:

bash start.sh

img

添加共识节点:

addSealer 2bd016805da51bc5fd7e5a48c79a69150d7e079888c41be925d0badc2f6f141d6dc12fac4405e1158b64c8e4e2cef2dbde0c6bf7fee9aa1af0228c6

img

查看节点共识列表

getSealerList

img

退出控制台

查看机构A新增节点

在home/fisco11/generator-A内进行操作

查看节点log内group1信息

cat nodeA_new/node_127.0.0.1_006/log/log* | grep g:1 | grep Report

img

至此新增节点已经加入组内

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:2025-01-02,如有侵权请联系 cloudcommunity@tencent 删除工具连接配置运维部署

#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格

本文地址:http://www.dnpztj.cn/biancheng/1202958.html

相关标签:无
上传时间: 2025-07-24 03:26:59
留言与评论(共有 13 条评论)
本站网友 陕西男科医院
18分钟前 发表
示例是通过文件拷贝的方式
本站网友 添丁进口
19分钟前 发表
示例是通过文件拷贝的方式
本站网友 联创电子
29分钟前 发表
原始发表:2025-01-02
本站网友 贵阳房交会
1分钟前 发表
00127.0.0.1
本站网友 淡水租房
14分钟前 发表
请注意
本站网友 新星星知我心
26分钟前 发表
原始发表:2025-01-02
本站网友 第一步
23分钟前 发表
此步需要用到上述配置的node_deployment.ini
本站网友 东兴饭局
18分钟前 发表
ls dir_agency_ca/agencyA/ img为机构证书
本站网友 吻戏多的电影
9分钟前 发表
img机器环境每个节点的IP
本站网友 高龄产妇
15分钟前 发表
我们完成了如图所示机构A
本站网友 梅花村二手房
18分钟前 发表
cert_127.0.0.1_
本站网友 津南区地图
28分钟前 发表
1 | grep Report img至此新增节点已经加入组内本文参与 腾讯云自媒体同步曝光计划