Fisco 多机多环境部署

环境

(1)两台虚拟机:

bigdata444
bigdata555

(2)并设置ssh免密登录

https://blog.csdn.net/qq_45335413/article/details/107810990

(3)安装java环境

(4)安装Python环境与对应的pip

一、执行下载命令

bigdata444与bigdata555两台主机都要进行

mkdir  ~/fisco && cd fisco
git clone https://github.com/FISCO-BCOS/generator.git && cd ./generator

会生成generate脚本,这个脚本会生成链证书,机构证书,节点等信息,其中生成这些信息的配置都放在meta这个文件下。

二、安装

bigdata444与bigdata555两台主机都要进行

cd ~/generator && bash ./scripts/install.sh

四、获取二进制文件

bigdata444与bigdata555两台主机都要进行

./generator --download_fisco ./meta

可以查看二进制版本

/meta/fisco-bcos -v

五、初始化链证书

在主机bigdata444上进行,并将dir_chain_ca拷贝到bigdata55对应的位置。

./generator --generate_chain_certificate ../dir_chain_ca
scp  dir_chain_ca root@bigdata555:/usr/local/fisco

六、初始化机构 A 和 B

(1)初始化机构A

需要指定链证书的存放位置,与生成的机构证书的存放位置。

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

查看机构证书及私钥

ls dir_agency_ca/agencyA/

发送链证书、机构证书、机构私钥至机构 A

cp ../dir_agency_ca/agencyA/* ~/generator/meta/

(2)初始化机构B

需要指定链证书的存放位置,与生成的机构证书的存放位置。

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

查看机构证书及私钥

ls dir_agency_ca/agencyA/

发送链证书、机构证书、机构私钥至机构 B

cp ../dir_agency_ca/agencyB/* ~/generator/meta/

七、修改配置文件

bigdata444与bigdata555两台主机都要进行
手动的方式修改 generate\conf 文件夹下面 node_deployment.ini

p2p_ip 修改为对应的主机IP地址,节点间进行通信
rpc_ip 浏览器监听的端口与IP地址
channel_ip SDK 与console监听的端口与IP地址

按自己的需求进行修改
详细参考
https://mp.weixin.qq.com/s/IiHsPlxmvEEBTC84n27I9A

八、生成节点信息

(1)、机构 A 生成节点证书

./generator --generate_all_certificates ../agencyA_node_info

(2)、机构 B 生成节点证书

./generator --generate_all_certificates ../agencyB_node_info

假如机构 B 这一步操作失误,需要删除 agencyB_node_info 文件夹,以及 meta 文件夹
下生成的节点文件和信息,只保留如下内容

在这里插入图片描述

九、创建创世区块

当节点证书生成之后,我们可以先创建创世区块,再进行生成节点

(1)、生成创世区块的机构需要节点证书,

示例中由 A 机构生成创世区块,因此 B 机构需发送节点证书至机构 A,将机构 B 节点 agencyB_node_info 文件夹 cert_*.crt 文件 copy 到机构 A 的 meta 文
件夹中
在这里插入图片描述

(2)各机构节点连接信息 相互收集

比如:机构 A 的 meta 文件夹下多了 peersB,txt,机构 B 的 meta 文件夹下多了 peersA,txt
里面是对方的节点连接信息。
在这里插入图片描述
也需要包含自身peers.txt信息。

(3)、配置群组1创世区块

配置generate\conf\group_genesis.ini

[group]
group_id=1
[nodes]
node0=服务器B的 IP:30300
node1=服务器B的 IP:30301
node2=服务器A的IP:30300
node3=服务器 A 的 IP:30301

(4)、执行命令 生成 group_genesis.ini 配置的群组创世区块

./generator --create_group_genesis ../group

分发群组 1 创世区块至机构 B
手动复制 机构 A ./group/group.1.genesis 文件到机构 B 的 meta 文件夹下

十、生成节点

(1)、机构 A 生成所属节点

./generator --build_install_package ./meta/peersB.txt ../nodeA

(2)、机构 B 生成所属节点

./generator --build_install_package ./meta/peersB.txt ../nodeA

(3)、启动各自机构节点

bash ./nodeA/start_all.sh

可能报错

在这里插入图片描述

根据端口查找进程
sudo lsof -i:[port]
.根据PID杀掉进程
sudo kill [PID]

然后再次启动

十一、搭建控制台

由于控制台需要 java 环境,所以先要搭建 java

(1)、国内用户推荐使用 cdn 下载,如果访问 github 较快,可以去掉–cdn 选项:

./generator --download_console ./ --cdn

已经默认生成SDK证书

(2)、生成SDK证书

./generator --generate_sdk_certificate ./dir_sdk_ca ./dir_agency_ca/agencyA

生成SDK证书是为了java-SDK开发用的

./start.sh
控制台发布合约
[group:1]> deploy HelloWorld.sol
contract address: 0x3a784b42c58cb36e4c5306d43ce0075e1eef4b84
[group:1]> getBlockNumber
1
控制台说明操作命令
https://fisco-bcosdocumentation.readthedocs.io/zh_CN/latest/docs/manual/console.html#id2
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值