polkadot波卡鏈:驗證人節點雲部署教程

買賣虛擬貨幣
Polkadot有異構多鏈框架的願景,框架連線多個平行鏈,在一個區塊鏈x系統上實現Dapp和智慧合約,以便在其他鏈上無縫地交易資料和資產。我做的第一個練習是將Polkadot Verification Node部署為dockerized cloud例項。我稱之為“Polkadot框架的Hello World”。在Polkadot“Krumme Lenke測試網路”(這反映了專案的POC-2狀態)的連線和同步驗證器節點中,對現有150萬個塊進行數小時的同步後。

在下面的螢幕截圖中,您可以看到我的節點“clb-polkadancer”,它與24個對等節點相連,每5秒鐘處理一個新的區塊,並將其新增到其本地區塊鏈(遙測使用者介面)。

請注意,本文介紹了Docker上的polkadot驗證器節點的例項化。要將其轉換為完全受信任的polkadot驗證人節點,該節點積極參與股權證明(POS)協商過程-需要額外的步驟,並將在另一篇部落格文章中介紹。

驗證人是維護一個polkadot網路的四個基本角色之一。其他三個角色是;

收集人
提名者
漁民

白皮書中描述了4個角色及其相互作用,如下所示:

驗證人的作用取決於是否有足夠高的保證金存入,儘管我們允許其他擔保方指定一個或多個驗證人成為代理人,因此,驗證人的部分保證金可能不一定由驗證人本身擁有,而是由這些提名人擁有。

那麼驗證人的主要任務是什麼呢?

驗證器必須執行具有高可用性和頻寬的中繼鏈客戶端實現。在每個區塊,節點必須準備接受在指定的鏈上批准新區塊的角色。此過程涉及接收,驗證和重新發布候選塊。

有兩個新概念引入了“中繼鏈”和“平行鏈”,並且是polkadot中的核心概念。讓我們試著用白皮書的總結來快速解釋它們:

polkadot提供了一個基礎的“中繼鏈”,在此基礎上,可以並行承載大量可驗證的、全域性一致的動態資料結構。我們稱這些資料結構為平行鏈。

因此,我們的驗證器節點是中繼鏈的一部分,接收區塊,如果塊屬於我們的託管平行鏈,將它們驗證打包並完全同步的平行鏈資料庫中。如果塊屬於不在我們範圍內的平行鏈,那麼

驗證器節點將指定一個任務,提議給另外的平行鏈的第三方,稱為collator。

如果您希望被提名為批准的驗證節點,您必須確保以7x24的方式執行節點,以便與全域性平行鏈的發展保持同步。否則,漁民會發現這種不良行為並給予懲罰,可能會把你踢出共識驗證者的角色。

如下圖所示,大約每5秒處理一個新塊,傳播時間為502毫秒。您的節點必須準備好及時處理和傳播此類請求。

準備驗證器Dockerfile

我所有的雲專案(無論是基於Java的Bot還是基於Meteor Node.js的前端)我都在Docker容器中執行。這使我能夠標準化和自動化部署和執行時配置和調優。

Polkadot已經提供了自己的Docker Image“chevdor / polkadot”,它基於“phusion / baseimage:0.10.1”,它對映到最新的Ubuntu版本18.04。

Jelastic PaaS提供的不是Ubuntu 18.04,因此我將Dockerfile更改為基於Ubuntu 16.04版本,並透過名為“talfco / clb-polkadot”的Docker Hub支援;

配置Validator Docker例項

在Hidora PaaS中,我建立了一個新的Docker Environment“polkadotDocker”,並從Docker Hub載入了我的clb-polkadot Docker映象。

重新同步階段的初始例項配置是4-5個cloudlet,它被轉換為1.6 GHz  -  2.0 GHz之間的CPU,記憶體是512 MB到640 MB。

我將Polkadot資料庫目錄配置為在伺服器本地檔案系統上保留,以便在重新部署新的docker映象後不會丟失我們的完整平行鏈資料庫。

最後,我在入口點新增了-name'clb polkadancer'引數。

執行驗證節點

我啟動了例項,日誌檔案將顯示同步的進度。

建立平行鏈DB的副本

作為第一步,Validator節點必須在本地節點上構建完整的parachain DB。

正如可以在下面的螢幕截圖所示,鏈構建階段 大約在14:30完成,幾乎使用所有CPU。 完成後,CPU使用率降至200-250 MHz。 要建立大約500萬個區塊的完整平行鏈,需要6個小時的處理時間。 整體磁碟消耗約為5 GB。

載入了完整的平行鏈後,就可以重新配置例項了。 測試的第一個例項配置包括2個cloudlet,它們被轉換為256 MB RAM和800 MHz的CPU。

Cloudlets調整

對執行時統計資料的評估表明,我們節點的RAM上限(對於2個Cloudlets 256 MB)始終是最高的,這會導致額外的動態Cloudlets收費,這是次優的。

最後:別忘了開啟30333埠

在這個螢幕截圖中可以看到,某些節點只與一半的平行鏈節點(24)連線。

作者:Felix Kuestahler

免責聲明:

  1. 本文版權歸原作者所有,僅代表作者本人觀點,不代表鏈報觀點或立場。
  2. 如發現文章、圖片等侵權行爲,侵權責任將由作者本人承擔。
  3. 鏈報僅提供相關項目信息,不構成任何投資建議

推荐阅读

;