快速安装

快速安装是为了方便用户搭建开发和测试环境,在单台机器上快速部署WeEvent服务。提供Docker镜像、Bash脚本两种安装方式。

如果是第一次安装WeEvent,参见这里的系统要求 。以下安装过程以Centos 7.2为例。

Docker镜像安装

  1. $ docker pull weevent/weevent:1.0.0; docker run -d -p 8080:8080 weevent/weevent:1.0.0 /root/run.sh

WeEvent的镜像里包括了FISCO-BCOS网络,WeEvent服务的子模块BrokerGovernance,以及各种依赖。

Bash安装

需要的一些基础工具yum install wget tree tar dos2unix lsof gcc openssl-devel pcre-devel

  • 获取安装包

github下载安装包weevent-1.0.0.tar.gz,并且解压到/tmp/

  1. $ cd /tmp/
  2. $ wget https://github.com/WeBankFinTech/WeEvent/releases/download/v1.0.0/weevent-1.0.0.tar.gz
  3. $ tar -zxf weevent-1.0.0.tar.gz

如果github下载速度慢,可以尝试国内下载链接。解压后目录结构如下:

  1. $ cd weevent-1.0.0/
  2. $ tree -L 2
  3. .
  4. ├── bin
  5. ├── check-service.sh
  6. ├── start-all.sh
  7. ├── stop-all.sh
  8. └── uninstall-all.sh
  9. ├── config.properties
  10. ├── install-all.sh
  11. ├── modules
  12. ├── broker
  13. ├── governance
  14. └── nginx
  15. └── third-packages
  16. └── nginx-1.14.2.tar.gz
  • 修改配置

默认配置文件./config.properties如下:

  1. # Required module
  2. # support 2.0 and 1.3
  3. fisco-bcos.version=2.0
  4. # FISCO-BCOS node channel, eg: 127.0.0.1:20200;127.0.0.2:20200
  5. fisco-bcos.channel=127.0.0.1:20200
  6. # The path of FISCO-BCOS 2.0 that contain certificate file ca.crt/node.crt/node.key,
  7. # OR FISCO-BCOS 1.3 that contain ca.crt/client.keystore
  8. fisco-bcos.node_path=~/FISCO-BCOS/127.0.0.1/node0/conf
  9.  
  10. # Required module
  11. nginx.port=8080
  12.  
  13. # Required module
  14. broker.port=8090
  15.  
  16. # Optional module
  17. governance.enable=false
  18. governance.governance.port=8099
  19. governance.mysql.ip=127.0.0.1
  20. governance.mysql.port=3306
  21. governance.mysql.user=xxx
  22. governance.mysql.password=yyy

配置说明 :

  • 区块链FISCO-BCOS

    • fisco-bcos.version

FISCO-BCOS 2.01.3版本都支持,推荐使用2.0及以上版本。

  1. -

fisco-bcos.channel

区块链节点的channel访问入口。配置多个节点时用;分割,如127.0.0.1:8821;127.0.0.2:8821

  1. -

fisco-bcos.node_path

区块链节点的访问证书、私钥存放目录。FISCO-BCOS 2.0的证书文件为ca.crtnode.crtnode.key1.3版本的证书文件为ca.crtclient.keystore。如果WeEvent服务和区块链节点不在同一台机器上,需要把证书文件拷贝到WeEvent机器的当前目录,修改fisco-bcos.node_path=./

  • Nginx监听端口nginx.port

  • Broker监听端口broker.port

  • Governance模块配置

    • governance.enable是否安装Governance模块,默认为false不安装
    • 监听端口governance.port
    • Mysql配置governance.mysql.*
    • 一键安装

以安装到目录/usr/local/weevent/为例。

  1. $ ./install-all.sh -p /usr/local/weevent/

正常安装后,输出有如下关键字:

  1. 8081 port is okay
  2. 8080 port is okay
  3. param ok
  4. install module broker
  5. install broker success
  6. install module nginx
  7. install nginx success

如果安装失败,可以在安装日志./install.log中查看更多细节。

目标安装路径/usr/local/weevent/的结构如下

  1. $ cd /usr/local/weevent/
  2. $ tree -L 2
  3. .
  4. |-- broker
  5. | |-- apps
  6. | |-- broker.sh
  7. | |-- check-service.sh
  8. | |-- conf
  9. | |-- deploy-topic-control.sh
  10. | |-- lib
  11. | `-- logs
  12. |-- check-service.sh
  13. |-- nginx
  14. | |-- conf
  15. | |-- html
  16. | |-- logs
  17. | |-- nginx.sh
  18. | |-- nginx_temp
  19. | `-- sbin
  20. |-- start-all.sh
  21. |-- stop-all.sh
  22. `-- uninstall-all.sh
  • 启停服务

    • 启动服务

在服务安装目录下/usr/local/weevent,通过start-all.sh命令启动所有服务 ,正常启动如下:

  1. $ ./start-all.sh
  2. start broker success (PID=3642)
  3. add the crontab job success
  4. start nginx success (PID=3643)
  5. add the crontab job success
  • 停止所有服务的命令./stop-all.sh
  • 检查是否安装成功
  1. $ ./check-service.sh
  2. check broker service
  3. broker service is ok
  • 卸载服务

执行如下脚本,卸载所有服务:

  1. $ ./uninstall-all.sh
  2. WeEvent is running, stop it first? [Y/N]Y
  3. stop broker success
  4. remove the crontab job success
  5. stop nginx success
  6. remove the crontab job success
  7. really want to uninstall WeEvent? [Y/N]Y
  8. uninstall WeEvent success

快速安装作为一种简易安装方式,所有子模块都是单实例的。生产环境中建议对BrokerGovernance进行多实例部署。各子模块详细部署参见Broker模块部署Governance模块部署