一键部署webase平台
一键部署可以在同机快速搭建WeBASE管理台环境,方便用户快速体验WeBASE管理平台
一键部署会搭建:节点(FISCO-BCOS 2.0+)、管理平台(WeBASE-Web)、节点管理子系统(WeBASE-Node-Manager)、节点前置子系统(WeBASE-Front)、签名服务(WeBASE-Sign)。
我在下面的实验是在unbuntu内进行的
前提条件
环境 | 版本 |
Java | Oracle JDK 8 至 14 |
MySQL | MySQL-5.6及以上 |
Python | Python3.6及以上 |
PyMySQL |
检查环境
推荐使用CentOS 7.2+, Ubuntu 16.04及以上版本, 一键部署脚本将自动安装openssl, curl, wget, git, nginx, dos2unix相关依赖项。
其余系统可能导致安装依赖失败,可自行安装openssl, curl, wget, git, nginx, dos2unix依赖项后重试
若使用Docker模式一键部署,可只安装Docker、Docker-Compose,无需配置Mysql与Java环境
检查java
推荐JDK8-JDK13版本
使用以下命令:
java -version
检查mysql
MySQL-5.6或以上版本
使用以下命令:
mysql --version
检查python
使用Python3.6或以上版本
使用以下命令:
python3 –version
检查服务器网络策略
网络策略检查:
- 开放WeBASE管理平台端口:检查webase-web管理平台页面的端口webPort(默认为5000)在服务器的网络安全组中是否设置为开放。如,云服务厂商如腾讯云,查看安全组设置,为webase-web开放5000端口。若端口未开放,将导致浏览器无法访问WeBASE服务页面
- 开放节点前置端口:如果希望通过浏览器直接访问webase-front节点前置的页面,则需要开放节点前置端口frontPort(默认5002);由于节点前置直连节点,不建议对公网开放节点前置端口,建议按需开放
拉取部署脚本
接下来的操作我都在/home/test下进行
wget https://github.com/WeBankBlockchain/WeBASELargeFiles/releases/download/v1.5.5/webase-deploy.zip
解压安装包
unzip webase-deploy.zip
进入目录
cd webase-deploy
修改配置文件
vim common.properties
主要修改配置文件中的用户名和密码,修改为自己数据库中的用户名和密码
如果要使用自己创建的链就要把这里的no修改为yes
已有链的路径,start_all脚本所在路径,路径下要存在sdk目录(sdk目录中包含了SSL所需的证书,即ca.crt、sdk.crt、sdk.key和gm目录(包含国密SSL证书,gmca.crt、gmsdk.crt、gmsdk.key、gmensdk.crt和gmensdk.key)
前置所连接节点,在127.0.0.1目录中的节点中的一个
节点路径下要存在conf文件夹,conf里存放节点证书(ca.crt、node.crt和node.key)
部署
执行installAll命令,部署服务将自动部署FISCO BCOS节点,并部署 WeBASE 中间件服务,包括签名服务(sign)、节点前置(front)、节点管理服务(node-mgr)、节点管理前端(web)
PS: 部署脚本会拉取相关安装包进行部署,需保持网络畅通
首次部署需要下载编译包和初始化数据库,重复部署时可以根据提示不重复操作
部署过程中出现报错时,可根据错误提示进行操作
不要用sudo执行脚本,例如sudo python3 deploy.py installAll(sudo会导致无法获取当前用户的环境变量如JAVA_HOME)
由于下载网速过慢,我手动将包下载下来,直接传输到webase-deploy文件夹中
在当前目录下执行: python3 deploy.py installAll
启动服务成功
检测状态
通过ps命令,检查各子系统的进程是否存在
在当前路径下检查:
ps -ef | grep node
检查节点前置webase-front的进程
ps -ef | grep webase.front
检查节点管理服务webase-node-manager的进程
ps -ef | grep webase.node.mgr
检查webase-web对应的nginx进程
ps -ef | grep nginx
检查签名服务webase-sign的进程
ps -ef | grep webase.sign
检查进程端口
通过netstat命令,检查各子系统进程的端口监听情况。
检查方法如下,若无输出,则代表进程端口监听异常,需要到该子系统的日志中检查日志错误信息
检查节点channel端口(默认为20200)是否已监听
在当前目录下输入:
netstat -anlp | grep 20200
检查webase-front端口(默认为5002)是否已监听
在当前目录下输入:
netstat -anlp | grep 5002
检查webase-node-mgr端口(默认为5001)是否已监听
在当前目录下输入:
netstat -anlp | grep 5001
检查webase-web端口(默认为5000)在nginx是否已监听
在当前目录下输入:
netstat -anlp | grep 5000
检查webase-sign端口(默认为5004)是否已监听
在当前目录下输入:
netstat -anlp | grep 5004
访问
一键部署完成后,打开浏览器(Chrome Safari或Firefox)访问
http://{部署主机的ip地址}:{webPort}
我这里主机地址为192.168.200.134,webPort为5000
http://192.168.200.134:5000/#/login
初始账户为 admin ,密码为Abcd1234
常见问题
如果出现问题,可以参考官网给的常见问题处理方法,下面我放入文档的链接
https://webasedoc.readthedocs.io/zh-cn/latest/docs/WeBASE/install.html#id23