Tron節(jié)點(diǎn)搭建

波場(chǎng)節(jié)點(diǎn)介紹

波場(chǎng)網(wǎng)絡(luò)的節(jié)點(diǎn)主要分為兩類:超級(jí)節(jié)點(diǎn)迷殿,全節(jié)點(diǎn)

  • 超級(jí)節(jié)點(diǎn)
    包含全網(wǎng)全部區(qū)塊數(shù)據(jù)诉濒,并負(fù)責(zé)共識(shí)出塊
  • 全節(jié)點(diǎn)
    包含全網(wǎng)全部區(qū)塊數(shù)據(jù)

波場(chǎng)節(jié)點(diǎn)編譯安裝

筆者使用波場(chǎng)的master分支靶草, 官方git鏈接:https://github.com/tronprotocol/java-tron.git

  • 服務(wù)基礎(chǔ)環(huán)境
    JDK1.8
    CentOS 7.2 6CUP 16G 300G
  • 節(jié)點(diǎn)編譯安裝
創(chuàng)建代碼目錄
    mkdir -p /home/tron/
下載源碼  
    cd /home/tron/
    git clone -b master https://github.com/tronprotocol/java-tron.git
編譯源碼(本文主要將源碼編譯成jar形式)
    cd java-tron
    ./gradlew clean shadowJar
編譯結(jié)果jar文件路徑
    /home/tron/java-tron/build/libs/java-tron.jar
代碼目錄.png

編譯信息.png

結(jié)果目錄.png

運(yùn)行節(jié)點(diǎn)

  • a.) 節(jié)點(diǎn)需要的jar及配置文件
  1. java-tron.jar(/home/tron/java-tron/build/libs/java-tron.jar)
    2.config.conf(/home/tron/java-tron/src/main/resources/config.conf)
  • b.) 運(yùn)行Super Node
    目標(biāo):創(chuàng)建超級(jí)節(jié)點(diǎn)兴想,并開始創(chuàng)建區(qū)塊

創(chuàng)建節(jié)點(diǎn)目錄并拷貝相關(guān)jar包及配置文件(見a項(xiàng))

# mkdir -p /home/tron/superNode
# cp /home/tron/java-tron/build/libs/java-tron.jar /home/tron/superNode
# cp /home/tron/java-tron/src/main/resources/config.conf /home/tron/superNode

創(chuàng)建你的tron賬號(hào)

可通過https://tronscan.org/ 去創(chuàng)建你的個(gè)人賬號(hào),并保存創(chuàng)建的私鑰及地址信息

修改配置文件

  • 配置文件:/home/tron/superNode/config.conf
  • 修改genesis.block.witnesses為你個(gè)人的tron地址
    witnesses = [
    {
    address: 27PsvT28qhmUM1GHMVVJeyRskhB2pfzA1En,
    url= "http://tron.com",
    voteCount = 10000
    }
    ]
  • 修改seed.node.ip.list 為服務(wù)器的IP:PORT
    seed.node = {
    ip.list = [
    "123.207.xx.xxx:18888"
    ]
    }
  • 第一個(gè)超級(jí)節(jié)點(diǎn),則需要修改needSyncCheck =false
    block = {
    needSyncCheck = false# first node : false, other : true
    maintenanceTimeInterval = 21600000 // 1 day: 86400000(ms), 6 hours: 21600000(ms)
    }
  • 可修改p2pversion 為你自己定制的版本雄人,建議不修改該值

啟動(dòng)超級(jí)節(jié)點(diǎn):

cd /home/tron/superNode
java -jar java-tron.jar -p 個(gè)人地址的私鑰 --witness -c /home/tron/superNode/config.conf

驗(yàn)證節(jié)點(diǎn)啟動(dòng)狀態(tài):

  • 節(jié)點(diǎn)啟動(dòng)后,java-tron.jar的同級(jí)目錄上將生成 logsoutput-directory 兩個(gè)文件夾
    logs : 節(jié)點(diǎn)日志文件
    output-directory : 節(jié)點(diǎn)數(shù)據(jù)存儲(chǔ)目錄
  • 查看日志念赶,確定節(jié)點(diǎn)是否正常啟動(dòng)础钠,并在出塊

超級(jí)節(jié)點(diǎn)啟動(dòng),并創(chuàng)建創(chuàng)世塊:

15:49:34.973 INFO  [main] [o.t.c.d.Manager](Manager.java:305) create genesis block
15:49:34.975 INFO  [main] [o.t.c.d.Manager](Manager.java:311) save block: BlockCapsule
[ hash=0000000000000000318b90bda4950d183bab0031b9005d4c0be1b180c21d6fde
number=0
parentId=0000000000000000000000000000000000000000000000000000000000000000
witness address=
generated by myself=true
generate time=1970-01-01 08:00:00.0
merkle root=c5b031aa2d4a77d237f785fcc760e17839a75f414b62765fcd0d614aff96ce09
txs size=4
]

超級(jí)節(jié)點(diǎn)正常出塊:

15:55:06.008 INFO  [Thread-5] [o.t.c.d.Manager](Manager.java:1108) update solid block, num = 109
15:55:06.008 INFO  [Thread-5] [o.t.c.d.DynamicPropertiesStore](DynamicPropertiesStore.java:719) update state flag = 0
15:55:06.008 INFO  [Thread-5] [o.t.c.d.Manager](Manager.java:742) save block: BlockCapsule
[ hash=000000000000006d9b18d04237b60abb321264d2282d7a864083c32d0e3ddad9
number=109
parentId=000000000000006c7717e85f0d2db9fc089bccd9d5dc1c233a3a3bad5d557fb9
witness address=a008c7176410573e7a16bc62e5089bf25b49548ba4
generated by myself=true
generate time=2018-05-31 15:55:06.0
txs are empty
]
15:55:06.008 INFO  [Thread-5] [o.t.c.s.WitnessService](WitnessService.java:241) Produce block successfully, blockNumber:109, abSlot[509251102], blockId:000000000000006d9b18d04237b60abb321264d2282d7a864083c32d0e3ddad9, transactionSize:0, blockTime:2018-05-31T15:55:06.000+08:00, parentBlockId:000000000000006d9b18d04237b60abb321264d2282d7a864083c32d0e3ddad9
15:55:06.008 INFO  [Thread-5] [o.t.c.n.n.NodeImpl](NodeImpl.java:347) Ready to broadcast block 000000000000006d9b18d04237b60abb321264d2282d7a864083c32d0e3ddad9
  • c.) 運(yùn)行Full Node
    目標(biāo):創(chuàng)建全節(jié)點(diǎn)叉谜,并連上自建的超級(jí)節(jié)點(diǎn)同步數(shù)據(jù)

準(zhǔn)備全節(jié)點(diǎn)的jar包及配置文件:

  • 在全節(jié)點(diǎn)服務(wù)器上創(chuàng)建節(jié)點(diǎn)目錄:mkdir -p /home/tron/fullNode
  • 拷貝步驟b)的jar包及配置文件到全節(jié)點(diǎn)服務(wù)器/home/tron/fullNode目錄下

修改配置文件:

  • 將超級(jí)節(jié)點(diǎn)加入active列表
    active = [
    "123.207.xx.xxx:18888"
    ]
  • 修改needSyncCheck =true
    block = {
    needSyncCheck = true# first node : false, other : true
    maintenanceTimeInterval = 21600000 // 1 day: 86400000(ms), 6 hours: 21600000(ms)
    }

啟動(dòng)全節(jié)點(diǎn):

cd /home/tron/fullNode
java -jar java-tron.jar -c /home/tron/fullNode/config.conf

驗(yàn)證全節(jié)點(diǎn):

  • 節(jié)點(diǎn)啟動(dòng)后旗吁,java-tron.jar的同級(jí)目錄上將生成 logs 和 output-directory 兩個(gè)文件夾
    logs : 節(jié)點(diǎn)日志文件
    output-directory : 節(jié)點(diǎn)數(shù)據(jù)存儲(chǔ)目錄
  • 查看日志,確定節(jié)點(diǎn)是否正常啟動(dòng)停局,并在同步區(qū)塊

全節(jié)點(diǎn)啟動(dòng)很钓,并創(chuàng)建創(chuàng)世塊:

16:19:15.399 INFO  [main] [o.t.c.d.Manager](Manager.java:305) create genesis block
16:19:15.401 INFO  [main] [o.t.c.d.Manager](Manager.java:311) save block: BlockCapsule
[ hash=0000000000000000318b90bda4950d183bab0031b9005d4c0be1b180c21d6fde
number=0
parentId=0000000000000000000000000000000000000000000000000000000000000000
witness address=
generated by myself=true
generate time=1970-01-01 08:00:00.0
merkle root=c5b031aa2d4a77d237f785fcc760e17839a75f414b62765fcd0d614aff96ce09
txs size=4
]
16:19:15.401 INFO  [main] [o.t.c.d.DynamicPropertiesStore](DynamicPropertiesStore.java:706) update latest block header number = 0
16:19:15.401 INFO  [main] [o.t.c.d.DynamicPropertiesStore](DynamicPropertiesStore.java:714) update latest block header id = 0000000000000000318b90bda4950d183bab0031b9005d4c0be1b180c21d6fde

連接超級(jí)節(jié)點(diǎn):

16:24:52.645 INFO  [TronJClientWorker-0] [HandshakeHandler](HandshakeHandler.java:73) channel active, /123.207.xx.xxx:18888
16:24:52.652 INFO  [TronJClientWorker-0] [HandshakeHandler](HandshakeHandler.java:122) Handshake Send to /123.207.xx.xxx:18888, type: P2P_HELLO
from {
  address: "47.74.xx.xxx"
  port: 18888
  nodeId: "\344\276\257|\232\261f\370r\367\231\203\034\t\212\336\212\034\350\260\020X\324\025\233:\223\'6\311-AD\002\203\236O\034\250\367\300,\313\211\236\210\263\352\327\026\335|\223\030\356\200\356\320D\030"
}

從超級(jí)節(jié)點(diǎn)同步區(qū)塊:

16:24:53.872 INFO  [TronJClientWorker-0] [MessageQueue](MessageQueue.java:104) Receive from /123.207.xx.xxx:18888, type: BLOCK
Num:1,ID:000000000000000111033c4e558ef57e3063a949856528c368aa126c1f4e6cef, trx size: 0

16:24:53.874 INFO  [TronJClientWorker-0] [MessageQueue](MessageQueue.java:104) Receive from /123.207.xx.xxx:18888, type: BLOCK
Num:2,ID:0000000000000002f385a7ade9ef2afd9139cf4a491ddd0a4a001ce20eccf3c4, trx size: 0

16:24:53.874 INFO  [TronJClientWorker-0] [MessageQueue](MessageQueue.java:104) Receive from /123.207.xx.xxx:18888, type: BLOCK
Num:3,ID:0000000000000003bcbd41f1ee2e64dad8e61b40342561f3a3184930d8dc4959, trx size: 0

16:24:53.875 INFO  [TronJClientWorker-0] [MessageQueue](MessageQueue.java:104) Receive from /123.207.xx.xxx:18888, type: BLOCK
Num:4,ID:00000000000000046923e5cf0f999c3935d80bdeb8b4fa55b1aec58ed056a4fb, trx size: 0

小結(jié)

至此已經(jīng)在個(gè)人的私有網(wǎng)絡(luò)上搭建起波場(chǎng)網(wǎng)絡(luò),根據(jù)實(shí)際需求董栽,可以增加超級(jí)節(jié)點(diǎn)及全節(jié)點(diǎn)码倦;后續(xù)筆者則將在此構(gòu)建私有波場(chǎng)的網(wǎng)絡(luò)的基礎(chǔ)上,介紹如何接入波場(chǎng)的測(cè)試網(wǎng)絡(luò)锭碳。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末叹洲,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子工禾,更是在濱河造成了極大的恐慌运提,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,482評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件闻葵,死亡現(xiàn)場(chǎng)離奇詭異民泵,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)槽畔,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,377評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門栈妆,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人厢钧,你說我怎么就攤上這事鳞尔。” “怎么了早直?”我有些...
    開封第一講書人閱讀 152,762評(píng)論 0 342
  • 文/不壞的土叔 我叫張陵寥假,是天一觀的道長。 經(jīng)常有香客問我霞扬,道長糕韧,這世上最難降的妖魔是什么枫振? 我笑而不...
    開封第一講書人閱讀 55,273評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮萤彩,結(jié)果婚禮上粪滤,老公的妹妹穿的比我還像新娘。我一直安慰自己雀扶,他們只是感情好杖小,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,289評(píng)論 5 373
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著愚墓,像睡著了一般予权。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上转绷,一...
    開封第一講書人閱讀 49,046評(píng)論 1 285
  • 那天伟件,我揣著相機(jī)與錄音硼啤,去河邊找鬼议经。 笑死,一個(gè)胖子當(dāng)著我的面吹牛谴返,可吹牛的內(nèi)容都是我干的煞肾。 我是一名探鬼主播,決...
    沈念sama閱讀 38,351評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼嗓袱,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼籍救!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起渠抹,我...
    開封第一講書人閱讀 36,988評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤蝙昙,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后梧却,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體奇颠,經(jīng)...
    沈念sama閱讀 43,476評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,948評(píng)論 2 324
  • 正文 我和宋清朗相戀三年放航,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了烈拒。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,064評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡广鳍,死狀恐怖荆几,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情赊时,我是刑警寧澤吨铸,帶...
    沈念sama閱讀 33,712評(píng)論 4 323
  • 正文 年R本政府宣布,位于F島的核電站祖秒,受9級(jí)特大地震影響焊傅,放射性物質(zhì)發(fā)生泄漏剂陡。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,261評(píng)論 3 307
  • 文/蒙蒙 一狐胎、第九天 我趴在偏房一處隱蔽的房頂上張望鸭栖。 院中可真熱鬧,春花似錦握巢、人聲如沸晕鹊。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,264評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽溅话。三九已至,卻和暖如春歌焦,著一層夾襖步出監(jiān)牢的瞬間飞几,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,486評(píng)論 1 262
  • 我被黑心中介騙來泰國打工独撇, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留屑墨,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,511評(píng)論 2 354
  • 正文 我出身青樓纷铣,卻偏偏與公主長得像卵史,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子搜立,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,802評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理以躯,服務(wù)發(fā)現(xiàn),斷路器啄踊,智...
    卡卡羅2017閱讀 134,599評(píng)論 18 139
  • feisky云計(jì)算忧设、虛擬化與Linux技術(shù)筆記posts - 1014, comments - 298, trac...
    不排版閱讀 3,815評(píng)論 0 5
  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 46,748評(píng)論 6 342
  • 全職獵人 所謂“獵人”即是探尋重要文化遺產(chǎn)及稀少的動(dòng)植物并加以保護(hù),還要抓出重大嫌疑犯的人颠通,既是職業(yè)也是階級(jí)址晕。獵人...
    風(fēng)起時(shí)_Q閱讀 350評(píng)論 0 0
  • 若愛 請(qǐng)深愛 不愛 請(qǐng)放手 放手了應(yīng)該撕破臉 算清賬么 公司新來的前臺(tái)J 30歲 身材姣好 溫柔小女人 昨天突然告...
    桔桔子閱讀 440評(píng)論 0 1