其他:二、一键部署区块链网络(ubuntu18.04)-JAVA

其他:二、一键部署区块链网络(ubuntu18.04)-JAVA,第1张

one_click_generator.sh脚本为根据用户填写的节点配置,一键部署联盟链的脚本。脚本会根据用户指定文件夹下配置的node_deployment.ini,在文件夹下生成相应的节点。

!!!一键部署脚本使用时需要确保当前meta文件夹下不含节点证书信息,请清空meta文件夹。

一、下载安装

1.1、下载(第一条如果失败,就使用第二条)

第一条:

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

第二条:

cd ~
git clone https://gitee.com/FISCO-BCOS/generator.git

1.2、安装

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

1.3、检查

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

cd ~/generator && ./generator -h

1.4、获取节点二进制

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

cd ~/generator && ./generator --download_fisco ./meta

1.5、检查二进制版本

若成功,输出 FISCO-BCOS Version : x.x.x-x

cd ~/generator && ./meta/fisco-bcos -v
二、生成节点
cd ~/generator && bash ./one_click_generator.sh -b ./tmp_one_click

执行完毕后,./tmp_one_click文件夹结构如下:

查看执行后的一键部署模板文件夹:

├── agencyA # A机构文件夹
│   ├── agency_cert # A机构证书及私钥
│   ├── generator-agency # 自动代替A机构进行 *** 作的generator文件夹
│   ├── node # A机构生成的节点,多机部署时推送至对应服务器即可
│   ├── node_deployment.ini # A机构的节点配置信息
│   └── sdk # A机构的sdk或控制台配置文件
├── agencyB
|   ├── agency_cert
|   ├── generator-agency
|   ├── node
|   ├── node_deployment.ini
|   └── sdk
|── ca.crt # 链证书
|── ca.key # 链私钥
|── group.1.genesis # 群组1创世区块
|── peers.txt # 节点的peers.txt信息
 三、启动节点
cd ~/generator && bash ./tmp_one_click/agencyA/node/start_all.sh && \
cd ~/generator && bash ./tmp_one_click/agencyB/node/start_all.sh 

3.1、查看节点进程

ps -ef | grep fisco

3.2、查看节点运行状态

tail -f ~/generator/tmp_one_click/agency*/node/node*/log/log*  | grep +++
四、新增节点(扩容新节点)

为机构A和机构C增加新节点

4.1、初始化扩容配置

创建扩容文件夹,示例中tmp_one_click_expand可以为任意名称,请每次扩容使用新的文件夹

mkdir ~/generator/tmp_one_click_expand/

4.2、拷贝链证书及私钥至扩容文件夹

cp  ~/generator/tmp_one_click/ca.* ~/generator/tmp_one_click_expand/

4.3、拷贝群组1创世区块group.1.genesis至扩容文件夹

cp  ~/generator/tmp_one_click/group.1.genesis ~/generator/tmp_one_click_expand/

4.4、拷贝群组1节点P2P连接文件peers.txt至扩容文件夹

cp  ~/generator/tmp_one_click/peers.txt ~/generator/tmp_one_click_expand/
五、机构A配置节点信息

5.1、创建机构A扩容节点所在目录

mkdir ~/generator/tmp_one_click_expand/agencyA

5.2、拷贝机构A证书、私钥至对应文件夹

cp -r ~/generator/tmp_one_click/agencyA/agency_cert ~/generator/tmp_one_click_expand/agencyA

5.3、机构A填写节点配置信息

cat > ~/generator/tmp_one_click_expand/agencyA/node_deployment.ini << EOF
[group]
group_id=1

[node0]
; Host IP for the communication among peers.
; Please use your ssh login IP.
p2p_ip=127.0.0.1
; listening IP for the communication between SDK clients.
; This IP is the same as p2p_ip for the physical host.
; But for virtual host e.g., VPS servers, it is usually different from p2p_ip.
; You can check accessible addresses of your network card.
; Please see https://tecadmin.net/check-ip-address-ubuntu-18-04-desktop/
; for more instructions.
rpc_ip=127.0.0.1
channel_ip=0.0.0.0
p2p_listen_port=30304
channel_listen_port=20204
jsonrpc_listen_port=8549
EOF
六、机构C配置节点信息(因为机构C是)

6.1、创建机构C扩容节点所在目录

mkdir ~/generator/tmp_one_click_expand/agencyC

6.2、机构C填写节点配置信息

cat > ~/generator/tmp_one_click_expand/agencyC/node_deployment.ini << EOF
[group]
group_id=1

[node0]
; Host IP for the communication among peers.
; Please use your ssh login IP.
p2p_ip=127.0.0.1
; listening IP for the communication between SDK clients.
; This IP is the same as p2p_ip for the physical host.
; But for virtual host e.g., VPS servers, it is usually different from p2p_ip.
; You can check accessible addresses of your network card.
; Please see https://tecadmin.net/check-ip-address-ubuntu-18-04-desktop/
; for more instructions.
rpc_ip=127.0.0.1
channel_ip=0.0.0.0
p2p_listen_port=30305
channel_listen_port=20205
jsonrpc_listen_port=8550
EOF
七、生成扩容节点
cd ~/generator && bash ./one_click_generator.sh -e ./tmp_one_click_expand
八、启动新节点
cd ~/generator && bash ./tmp_one_click_expand/agencyA/node/start_all.sh && \
bash ./tmp_one_click_expand/agencyC/node/start_all.sh

8.1、查看节点进程

ps -ef | grep fisco
九、使用控制台注册节点

9.1、下载控制台

获取控制台,可能需要较长时间,国内用户可以使用--cdn命令:

以机构A使用控制台为例,此步需要切换到机构A对应的generator-agency文件夹

cd ~/generator/tmp_one_click/agencyA/generator-agency
./generator --download_console ./ --cdn

9.2、查看节点nodeid

cat ~/generator/tmp_one_click_expand/agencyA/node/node_127.0.0.1_30304/conf/node.nodeid

9.3、启动控制台

cd ~/generator/tmp_one_click/agencyA/generator-agency/console && bash ./start.sh 1

9.4、注册共识节点

使用控制台addSealer命令将节点注册为共识节点,此步需要用到cat命令查看得到机构A节点的node.nodeid

查看A nodeid

cat ~/generator/tmp_one_click_expand/agencyA/node/node_127.0.0.1_30304/conf/node.nodeid

 注册节点A

addSealer 1790aa786e048e2cbb90e02e799f652bc41d9da70aa3fc3f8b6f8b02b350989f44b7bd6fb43aa66c5bc237be5888440e8dfbbc1e1c8ff0caa04411e10acdbe70

 查看C nodeid

cat ~/generator/tmp_one_click_expand/agencyC/node/node_127.0.0.1_30305/conf/node.nodeid

注册节点C

addSealer 129196749f01cafd947b3da224e72a97c3a8812271f6c3c5e054437620313b9979a84e1c357e3916427344bc03e4deffabcbcd9057430efd90313a85c34d8050
十、注册观察节点(我们将机构C节点选定为观察节点)

10.1、查看机构C nodeid

cat ~/generator/tmp_one_click_expand/agencyC/node/node_127.0.0.1_30305/conf/node.nodeid

10.2、注册观察节点

addObserver 129196749f01cafd947b3da224e72a97c3a8812271f6c3c5e054437620313b9979a84e1c357e3916427344bc03e4deffabcbcd9057430efd90313a85c34d8050

到此完成,新增节点到现有群组的 *** 作。

十一、

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/1298635.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-10
下一篇 2022-06-10

发表评论

登录后才能评论

评论列表(0条)

保存