区块链大学区块链研习社

Ulord主节点专题:共识主节点搭建教程

2019-01-21  本文已影响3人  Ulord优壹

Ulord共识主节点为Ulord的侧链UOS提供记账服务,UOS采用DPOS共识机制,类似董事会投票,持币者投票选出代理节点,进行验证和记账,大幅缩小参与验证和记账节点的数量,提高速度达到秒级的共识验证,此部分节点称为共识主节点。

共识主节点将为UOS网络提供算力和带宽支持,主要任务就是收集UOS侧链的交易信息将其打包进区块,并将区块广播给其他节点,通过验证后再将区块上传至Ulord主链。同时,共识主节点还拥有UOS生态中参数的投票权,链上决策(提案)生效需2/3以上的共识主节点投票通过。

本文档我们将讲述如何搭建共识主节点。

说明:

本教程适用于搭建共识主节点。

第一部分:前期准备工作

一、主节点服务器需求

1、操作系统:

需为ubuntu16.04 64位操作系统。

2、硬件要求:

成为共识主节点必须成功运行主节点服务器,服务器的需求跟主节点种类有关。主节点需要企业级服务器,具有公网IP,最低硬件配置需求如下:

1台服务器:4核 >32G内存  数据磁盘>200G SSD系统硬盘 100G 2M带宽;(不需要公网IP)

1台服务器: 4核 >32G内存  数据磁盘>200G SSD系统硬盘 100G 网络 5Mbps ;公网IP

二、UT押金

申请共识主节点必须得抵押100000UT。 

第二部分:如何进行共识主节点部署?

1.从网站上下载安装文件(该文档中下载文件存放在当前用户根目录)

wget ftp://tools.ulord.one/UOS_Testnet.tar.gz

2.解压下载的文件

tar -zxvf ~/UOS_Testnet.tar.gz

3.修改文件执行权限

chmod +x ~/uos/noduos ~/uos/cluos ~/uos/kuosd ~/uos/install.sh ~/uos/uninstall.sh ~/uos/mongodb/bin/mongod 

4.安装uos程序

sudo ~/uos/install.sh

5.修改noduos配置文件

配置文件路径:~/uos/cfg/config.ini

(1)修改状态数据库大小,使用free -m 查看当前系统可用内存,最好大于16G可用,下面是把状态数据库配置为20G大小:

chain-state-db-size-mb = 20480

(2)修改http服务地址,假如您的计算机私网ip为10.186.14.20,启用9008端口,如下配置:

http-server-address = 10.186.14.20:9008

(3)修改端口映射,即映射(2)中的服务端口。假如您的公网ip为114.61.17.245,如下配置:

http-alias = 114.61.17.245:9008

如果只有一个公网ip地址,此项与http-server-address填写一致,即:

http-alias = 10.186.14.20:9008

(4)修改p2p服务地址。假如您的计算机私网ip为10.186.14.20,启用12008端口做为数据同步端口,如下设置:

p2p-listen-endpoint = 10.186.14.20:12008

(5)修改p2p服务端口地址映射,即映射(4)中的服务端口。假如您的公网ip为114.61.17.245,如下配置:

p2p-server-address = 114.61.17.245:12008

如果只有一个公网ip地址,此项与p2p-listen-endpoint填写一致,即:

p2p-server-address = 10.186.14.20:12008

(6)增加p2p peer地址。这里是指其它机器的服务地址。如想与公网为114.67.37.2,端口为20581的节点同步数据,如下设置:

p2p-peer-address = 114.67.37.2:20581

这里可以指定多个地址:

p2p-peer-address = 114.67.37.245:12008

p2p-peer-address = 124.232.156.101:12008

p2p-peer-address = 124.232.147.65:12008

(7)修改节点名称

agent-name = "myname"

(8)设置节点名称(假设您的账户名为uosgenesuser)

producer-name = uosgenesuser

(9)设置签名私钥(您的账户的active公私钥对)

signature-provider = UOS6K6EJq8WXrK1nQ92rw7GfuGh9VvBquqSkKw7zLCJEjbZvPNPsE=KEY:5HxmNvuR7fPbRKU87j39B3CoJ5e2zYnuYFLXvukqQt3EARvbnLU

(10)修改加载插件(节点加载以下4个插件即可)

plugin = uosio::chain_api_plugin

plugin = uosio::chain_plugin

plugin = uosio::net_plugin

plugin = uosio::net_api_plugin

6.打开上面服务器的配置的端口

sudo ufw allow 9008 12008

7.运行noduos程序

前台运行命令:

noduos --genesis-json ~/uos/cfg/genesis.json --config-dir ~/uos/cfg/ --data-dir ~/uos/data 

后台运行命令:

nohup noduos --genesis-json ~/uos/cfg/genesis.json --config-dir ~/uos/cfg/ --data-dir ~/uos/data &

第三部分:如何申请抵押UT?

1.抵押

一个UOS节点若想申请成为共识主节点,除了服务器的硬件条件外,还需要抵押100000 UOS。因此,该账户需要抵押足够的UOS。命令如下:

cluos system delegatebw uosgenesuser uosgenesuser "50000.0000 UOS" "50000.0000 UOS"

查看该命令的帮助说明,命令如下:

cluos system delegatebw -h

查看抵押是否成功:

cluos get account uosgenesuser

说明:普通用户抵押UOS获取net或cpu资源也是通过该命令实现,普通用户的cpu抵押可用于对共识主节点投票,而net抵押不能用于投票。

2.申请

申请的账户抵押UOS之后,发起申请,命令如下(最后一个参数为ulord地址):

cluos system regproducer uosgenesuser UOS6K6EJq8WXrK1nQ92rw7GfuGh9VvBquqSkKw7zLCJEjbZvPNPsE https://uosgenesuser.com/chain uPmEkuRuq36TvYHYWcNZYJwdVYWc79Z22w

查看该命令的帮助说明,命令如下:

cluos system regproducer -h

查看申请是否成功:

cluos get table uosio uosio producers -l 100

在显示的列表中查看是否已有自己的节点的名称。

上一篇下一篇

猜你喜欢

热点阅读