qingcloud配置
评论(0) 浏览量(134)

ChainSQL是一个基于区块链网络的数据库平台,先要创建区块链网络,再去进行数据库表的相关设置。


img-1.png

部署准备

登录QingCloud平台,按步骤创建系统运行需要的相关资源:
1.创建私有网络
在QingCloud “计算机和网络”中,创建私有网络。
2.申请公网IP
在QingCloud “计算机和网络”中,根据自己的需求申请公网IP。本应用不需要使用80端口,带宽建议4M以上。
3.配置防火墙
1)找到要配置的防火墙
在QingCloud “安全”-“防火墙”中,点击要使用的防火墙。
2)配置下行规则
在防火墙的配置页面点击“创建”按钮,分别添加6006、9696、5123端口的下行规则,设置行为:接受,协议:TCP。  
3)配置上行规则
在防火墙的配置页面点击“创建”按钮,分别添加6006、9696、5123端口的上行规则,设置行为:接受,协议:TCP。  
4)应用修改
在防火墙的配置页面点击“应用修改”按钮。  
4.负载均衡器
1)创建负载均衡器
在QingCloud “计算机和网络”-“负载均衡器”中,通过“创建”功能来创建负载均衡器,负载均衡器的类型使用公网,绑定已经申请好的公网IP及在第3步中配置好的防火墙。其他信息根据需要填写,直至创建完成。
2)创建负载均衡器
创建完负载均衡器后,在负载均衡器的列表界面,点击负载均衡器的ID打开详细界面,通过“创建监听器”创建三个监听器。三个监听器的要求如下:
a)监听器名称:根据自己需要填写
b)监听协议:TCP
c)负载方式:源地址
d)端口:一个监听器使用5123端口;一个监听器使用6006端口;一个监听器使用9696端口;三个监听器分别对应ChainSQL的三种类型的节点,请确保一定正确设置。
本说明文档中的创建了3个监听器,为了方便展示,将端口号作为了监听器名字的末尾部分,方便识别。
img-2.png

系统部署

1.基本设置
输入应用的名称、描述等信息。
2.主节点设置
配置节点的资源:CPU、内存、挂载卷大小等信息。
3.验证节点设置
添加负载均衡器并进行节点资源配置:
1)添加负载均衡器
2)选择负载均衡器
3)监听器选择validation-node-5123,该监听器使用的端口为5123
4)该节点端口号固定为5123,不可更改
5)转发策略:请勿选择,否则影响网络端口无法连接!
6)配置节点的资源:CPU、内存、节点数量等信息
4.非验证节点设置
添加负载均衡器并进行节点资源配置:
1)添加负载均衡器
2)选择负载均衡器
3)监听器选择novalidation-node-6006,该监听器使用的端口为6006
4)该节点端口号固定为6006,不可更改
5)转发策略:请勿选择,否则影响网络端口无法连接!
6)配置节点的资源:CPU、内存、节点数量等信息
5.代理节点设置
添加负载均衡器并进行节点资源配置:
1)添加负载均衡器
2)选择负载均衡器
3)监听器选择chainsql-proxy-9696,该监听器使用的端口为9696
4)该节点端口号固定为9696,不可更改
5)转发策略:请勿选择,否则影响网络端口无法连接!
6)配置节点的资源:CPU、内存、节点数量等信息
6.网络设置
选择自己的私有网络。
7.服务环境参数设置
添加负载均衡器并进行节点资源配置:
1)ChainSQL代理用户名和ChainSQL代理密码:为mysql数据的用户名和密码,也即API验证数据库有效的数据库用户信息。
2)ChainSQL 根账户地址:根账户为系统的管理账户。生成方法如下:
a)复制描述信息中URL:http://chainsql.net/generateAddress,在浏览器中打开
b)产生输出结果:
以下为举例输出结果,请勿直接使用!
"secret":"shSFFkjWLLBCLhXyYc4kh89cbvuZ","address":"rJRQNyV1FAxdJ4PtNuXTirTCaTdp6ZbMR"}
secret为根账户私钥;address输出值为根账户地址。请将address输出值复制到ChainSQL 根账户地址。
注:根账户私钥和地址信息均为管理账号的相关信息,请牢记! 根账户地址。
img-3.png

修改配置

1)通过新增节点和删除节点功能增加和删除节点,需要注意的是要验证节点(validation-node-5123)不能小于3个。
2)新增验证节点后,请勿在短时间内(10分钟)删除原验证节点的数量小于2,因为涉及到账本同步问题,如果需要删除,请在10分钟后再进行删除操作。
img-4.png

使用指南

ChainSQl部署完成后,使用者通过调用系统提供的API接口来将自己的数据进行区块链存储和管理。系统提供JSON-RPC、JAVA API、Node.js API、Mysql JDBC API类型的接口。各类型的接口命令请参考:http://chainsql.net/api_java.html
本文针对几种类型进行一些实例展示:
1.JAVA API 调用实例
现ChainSQL 支持JAVA 1.6及其以上版本。
1)获取依赖jar包
a.如果本地有maven环境,将以下代码加入本地开发环境pom.xml文件进行jar包下载。
<dependency>
<groupId>com.peersafe</groupId>
<artifactId>chainsql</artifactId>
<version>1.0.0</version>
</dependency>
b.如果本地没有maven环境,直接下载项目依赖的jar包,在“buildPath”中选择“libraries”,再Add External Jars 添加相应的jar包。
项目依赖的jar包下载:libs.zip
2)实例实现的操作为,创建表T_BBPS_LEDGER_ONCHAIN、插入数据和查询数据。具体实例请参考测试程序《java实例》
3)实例封装jar下载:TestChainsql.jar
4)使用方法:需要jdk1.6及其以上版本;需要设置好java环境变量
a)运行cmd命令,命令符切换到jar包目录。
b)运行命令:java -jar TestChainsql.jar [ip:port] [table_name] [address] [secret],参数[ip:port]:公网IP及非验证节点使用的监听器端口,port为空时默认为6006;[table_name]:表名;[address]:根账户地址 [secret]:根账户私钥,需要替换为QingCloud部署的ChainSQL应用信息。
c)运行命令:java -jar TestChainsql.jar -h,可查询参数相关说明。
2.Js API调用实例
1)ChainSQL的操作对象
a.使用前首先在package.json文件中引入"chainsql":"^0.6.5"; 然后执行npm install命令
b.直接执行npm install chainsql --save命令
2)实例实现的操作为,创建表base、插入数据和查询数据。具体实例请参考测试程序《nodejs实例》
3.Mysql JDBC API调用实例
基于开源项目kingshard,我们支持通过native SQL语句形式向ChainSQL链写入交易数据(创建表交易数据除外,后期开发)。
具体实例请参考mysqlAPI接口http://chainsql.net/api_mysql
没有登录不能评论