參考資料:https://webasedoc.readthedocs.io/zh_CN/latest/docs/WeBASE/install.html#id8html
Java jdk1.8
MySQL MySQL-5.6
Python 2.7
MySQL-python 1.2.5java
java 查詢版本:java -version node
MySQL: mysql -vpython
python :python2 --versionmysql
sudo passwd
輸入兩次新密碼linux
su root
輸入root的密碼nginx
sudo service mysql restart
要在root 用戶下操做git
受權訪問和添加用戶
使用root用戶登陸,密碼爲初始化設置的密碼github
mysql -uroot -p -h localhost -P 3306
受權root用戶遠程訪問web
mysql > GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION; mysql > flush PRIVILEGES;
備註:因爲root 不適合對外,建議使用test用戶。
建立test用戶並受權本地訪問
mysql > GRANT ALL PRIVILEGES ON *.* TO 'test'@localhost IDENTIFIED BY '123456' WITH GRANT OPTION; mysql > flush PRIVILEGES;
測試鏈接和建立數據庫
登陸數據庫
mysql -utest -p123456 -h localhost -P 3306
建立數據庫
mysql > create database db_mgr;
獲取部署安裝包:
wget https://github.com/WeBankFinTech/WeBASELargeFiles/releases/download/V1.0.1/webase-deploy.zip
unzip webase-deploy.zip
cd webase-deploy
Traceback (most recent call last):
...
ImportError: No module named MySQLdb
sudo apt-get install -y python-pip sudo pip install MySQL-python
遇到問題,試試:解決 Command "python setup.py egg_info" failed with error code 1 問題
在執行 pip install -r requirements.txt 時遇到錯誤:
Command "python setup.py egg_info" failed with error code 1
解決方法是更新 setuptools 和 pip:
pip install --upgrade setuptools
python -m pip install --upgrade pip
針對該問題:提的github pr https://github.com/WeBankFinTech/WeBASE/pull/26
opensdk 和oracle sdk差異(作一些瞭解)
https://blog.csdn.net/weilin705/article/details/88950522
下載地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
sudo tar -zxvf jdk-8u212-linux-x64.tar.gz
tar -zxvf jdk-8u211-linux-x64.tar.gz
JAVA_HOME=/home/ubuntu/software/jdk1.8.0_212 PATH=$PATH:$JAVA_HOME/bin CLASSPATH==.:$JAVA_HOME/lib export JAVA_HOME CLASSPATH PATH
在本步驟操做,修改完成,查看java -version 依然是opensdk 版本
ubuntu@VM-16-14-ubuntu:~$ which java /usr/bin/java
mv /usr/bin/java /home/ubuntu/software
source /etc/profile
root@VM-16-14-ubuntu:/usr/bin# java -version java version "1.8.0_212" Java(TM) SE Runtime Environment (build 1.8.0_212-b10) Java HotSpot(TM) 64-Bit Server VM (build 25.212-b10, mixed mode)
修改 common.properties
[common] # 下載連接,默認不修改 web.package.url=https://www.fisco.com.cn/cdn/WeBASE/release/download/V1.0.1/webase-web.zip mgr.package.url=https://www.fisco.com.cn/cdn/WeBASE/release/download/V1.0.1/webase-node-mgr.zip front.package.url=https://www.fisco.com.cn/cdn/WeBASE/release/download/V1.0.1/webase-front.zip # 數據庫配置 mysql.ip=localhost//本地mysql 地址 mysql.port=3306 mysql.user=root mysql.password=123qwe mysql.database=db_mgr # 各個服務的端口 web.port=8096//改成不會衝突的 mgr.port=8081 front.port=8082 # 節點端口配置 node.p2pPort=30300 node.channelPort=20200 node.rpcPort=8545 # 是否使用已有的鏈 if.exist.fisco=yes # 使用已有鏈時需配置(已有鏈的路徑,start_all.sh腳本所在路徑) fisco.dir=/home/ubuntu/generator/nodeA/ # 搭建新鏈時需配置 fisco.version=2.0.0 node.counts=4
備註:8080 端口nginx 佔用,因此端口也要改一下,改成8096 只要不衝突就行了
保存,並從新啓動部署
python deploy.py installAll
須要將/generator/nodeA 中config.ini 節點配置修改
把rpc的listen_ip改爲127.0.0.1重啓一下,只改一個節點
因爲webase 部署須要用到sdk 證書等,因此必須在這裏生成。
./generator --generate_sdk_certificate ./nodeA ./dir_agency_ca/agencyA/
./generator --generate_sdk_certificate ./nodeB ./dir_agency_ca/agencyB/
bash ./nodeA/stop_all.sh
python deploy.py installAll
備註:若是此時有些端口占用問題出現,使用以下命令去查找,並將其kill
sudo lsof -i:[port]
sudo kill [PID]
簡單查看一下目錄結構
log是一鍵安裝的日誌,webase-*是webase的三個組件
寫入官方的默認帳號和密碼
admin/Abcd1234
參考資料:https://webasedoc.readthedocs.io/zh_CN/latest/docs/WeBASE-Console-Suit/index.html#id5
一開始發現 數據庫異常,原來是mysql root 權限問題,
進入目錄::/home/ubuntu/webase-deploy/webase-node-mgr/conf
vim application.yml
將對應的mysql 的用戶 改成test的
這個時候配置發現沒法鏈接。
問題定位:一、證書驗證不經過
二、ssl 和節點的鏈接失敗
修改 application.yml文件的配置
spring: datasource: url: jdbc:h2:file:~/.h2/front_db;DB_CLOSE_ON_EXIT=FALSE databaseName: db driverClassName: org.h2.Driver serverName: username: password: jpa: database-platform: org.hibernate.dialect.H2Dialect database: H2 openInView: false show_sql: false generate-ddl: true hibernate: ddl-auto: update naming-strategy: org.hibernate.cfg.EJB3NamingStrategy session: events: log: false properties: hibernate.cache.use_query_cache: false hibernate.generate_statistics: false h2: console: enabled: true path: /console settings: web-allow-others: false trace: true server: port: 8082 context-path: /WeBASE-Front sdk: orgName: orgTest corePoolSize: 50 maxPoolSize: 100 queueCapacity: 100 timeout: 10000 keepAlive: 60 ip: 127.0.0.1//這裏的ip 要和nodeA對應節點的rpc 監聽ip 同樣 channelPort: 20200 logging: config: classpath:log4j2.xml constant: keyServer: 127.0.0.1:8081 transMaxWait: 30 monitorDisk: /home/ubuntu/generator/nodeA/ aesKey: EfdsW23D23d3df43
配置成功,登陸,修改密碼
控制檯展現
節點管理
節點監控
至此,完成部署。
輔助操做權限等,可使用的命令
權限修改
經常使用方法以下:
sudo chmod 600 ××× (只有全部者有讀和寫的權限)
sudo chmod 644 ××× (全部者有讀和寫的權限,組用戶只有讀的權限)
sudo chmod 700 ××× (只有全部者有讀和寫以及執行的權限)
sudo chmod 666 ××× (每一個人都有讀和寫的權限)
sudo chmod 777 ××× (每一個人都有讀和寫以及執行的權限)
設置ubuntu 帳戶擁有當前文件夾變動擁有者 sudo chown -R ubuntu:users ./