比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads

金色觀察 | 實操:從硬件到軟件 如何在家中運行一個以太坊節點_以太坊

Author:

Time:1900/1/1 0:00:00

文/Alex R. Mead,CoinMetrics

在消費級硬件上輕松設置并運行以太坊節點的能力是以太坊網絡去中心化特性的一個關鍵賣點。但是對于一般人來說,在家里設置并運行一個節點到底有多大實用性?隨著合并的完成,這個問題在加密社區中被頻繁提及。在Coin Metrics,我們向來都是直接探索節點,獲得一手體驗。

在本周“網絡狀態”系列文章中,我們將介紹在家里設置和運行以太坊節點所需的步驟。 我們將從基本硬件和網絡需求開始,接著介紹軟件下載/編譯/安裝,最后介紹節點操作步驟和維護。 在整個過程中,我們將提供從運行Geth/Lighthouse節點中獲得的經驗見解,Coin Metrics團隊自2022年6月以來一直在持續運行該節點。

請注意,本文不構成Coin Metrics對任何特定硬件、互聯網服務提供商或以太坊客戶端的背書,也不構成任何工程或財務建議。 所討論的節點獨立于Coin Metrics基礎設施運行,與Coin Metrics并無關聯,純粹是出于實驗和研究目的,與Coin Metrics服務沒有任何交互。本文所提供的信息單純是為了讓我們講得清楚,讓你看得明白。所以,開始吧!

計算機

要開始設置和運行你自己的以太坊節點,你需要一臺計算機及互聯網連接。 計算機需要滿足兩個一般要求,足夠的RAM和足夠的硬盤空間。

每個節點客戶端都有特定的RAM要求(見下文),但任何一臺16GB RAM的現代計算機基本都夠用。節點也可以運行在8GB的RAM上;然而,如果你想使用該節點做點什么,而不只是口頭上說說“我要運行一個以太坊節點”而已,那么你可能會希望你有一臺16GB RAM的計算機。 建議在專用的計算機上運行以太坊節點,也就是說該計算機的唯一用途就是運行以太坊節點。 沒有流媒體Netflix,不編輯視頻,也不處理其他前端/后端進程,只用于運行你的節點。

BTC減半倒計時|金色財經挖礦收益播報:金色財經報道,據OKEx礦池數據顯示,下一次BTC減半日期預計為2020年5月12日,今天距此還有13天。BTC當前塊高628084,下一次減半塊高630000。

今日全網算力約112.03EH/s,全網難度約15.96T,預測下次難度16.25T(1.80%),距離調整還剩還有6天,今日BTC收益:0.00001576BTC/T/天。[2020/4/29]

然后,你需要確保你的計算機有足夠的硬盤空間來存儲當前的以太坊區塊鏈(記住,合并后,以太坊區塊鏈現在有兩個部分:執行層和共識層信標鏈),而且還要有合理的空間來維持鏈的增長。就目前而言,一個比較好的經驗就是使用2TB的固態硬盤(SSD)。固態硬盤是必不可少的,因為它支持足夠快的讀寫行為,因此節點可以本地同步當前鏈,并在鏈持續增長時維護鏈。

至于我們的節點,我們運行的是裝有16GB RAM的Dell OptiPlex 5080和英特爾酷睿i7處理器。 這臺設備是直接從戴爾的網站上購買的“現貨”。此外,為了擴充內置硬盤空間,我們還使用USB-C Type 3連接器(這款USB連接器是藍色的)連接了一個2TB的三星T7便攜式固態硬盤。

以太坊節點:Dell OptiPlex 5080,有線以太網連接,2TB固態硬盤

網絡連接

要與以太坊網絡同步,你需要至少每秒25MB的下載速度,這是大多數家用互聯網都能滿足的規格。 對于我們的節點,我們使用美國中西部可用的標準的Comcast計劃,據稱下載速度為250MB/秒,總數據下載上限為每月1.2TB(超出后將收取額外費用)。這個服務包,或類似的服務,通常面向位于發達經濟體大都市地區的用戶。

金色晨訊 | Coinbase:ETC遭雙花攻擊 日本或將批準加密貨幣交易基金(ETF):1.Coinbase:ETC遭攻擊包含近50萬美元雙重支付。

2.支付寶小程序開放的能力包括區塊鏈技術。

3.日本或將批準加密貨幣交易基金(ETF)。

4.山西省區塊鏈研究會啟動區塊鏈溯源技術平臺。

5.國內首個基于區塊鏈石油銷售項目落地。

6.原中國銀行副行長王永利:法幣數字化是必然方向 比特幣只是商圈幣。

7.科羅拉多州為加密貨幣推出證券法豁免法案。

8.不足1%的地址持有近620億美元比特幣。

9.工信部周平:中國正就區塊鏈國際標準爭取更多話語權。[2019/1/8]

合并后,所有以太坊節點必須同時運行兩個軟件,一個共識層節點和一個執行層節點。 Ethereum.org列出了以下執行層節點:Geth、Nethermind、Besu、Erigon和Akula。對于共識層節點,則列出了:Lighthouse、Lodestar、Nimbus、Prysm和Teku。

對這些不同軟件的分析本文不做贅述。不用說,我們決定分別為我們的執行層和共識層運行一直可靠的Geth和受人尊敬的Lighthouse。

操作系統(OS)

在深入研究運行以太坊協議的軟件之前,先簡單介紹一下操作系統的選擇。我們決定運行Ubuntu 22.04 LTS,裸金屬版。 裸金屬意味著操作系統直接運行在處理器的硅片上。 沒有虛擬機,沒有Docker容器,只有計算機上的“老式”操作系統。 在裸金屬上運行可對硬件資源進行最佳利用,不需要虛擬化的“開銷”。Ubuntu 22.04 LTS可免費下載,之所以選擇它還有部分原因是因為加密技術和Linux社區都具有獨立性,其中,Ubuntu是若干“Linux風格”系統之一。

要在戴爾電腦上安裝Ubuntu操作系統,我們必須對運行Windows 10的現有硬盤進行開箱分區。 這個過程的詳細說明可在Ubuntu的網頁上找到,需要一個USB驅動器在新分區上加載新的操作系統。 安裝操作系統可能很棘手,可能是非技術節點操作者要克服的第一個真正的“瓶頸”。應該注意的是,可以在Windows 10上運行相同的系統,因此這不是真正必要的步驟。 此外,互聯網上有很多資源可以解決這個問題,所以我們認為,一個有動力并有良好計算機技能的用戶要完成這個任務仍然是合理的。

分析 | 金色盤面:各國貨幣的BTC交易量中USD占比為51.49%:金色盤面綜合分析:根據coinhills.com的統計數據來看,BTC/USD占比排在第一位,為51.49%,其次是BTC/JPY,占比為42.10%,BTC/KRW占比降至第三,占比為4.74%,說明美元地區交易量已經占據主導。[2018/8/27]

執行層:Geth

根據clientdiversity.org的數據顯示,Geth是目前使用最多的以太坊節點,約占所有以太坊客戶端的80%。 雖然這對于網絡來說并不理想,但這是我們的節點正在運行的客戶端。 至于我們的客戶端可執行程序(例如,當你啟動節點時我們的操作系統實際運行的程序)——以一種真正的“不輕信,去驗證”的方式——我們想要確定軟件的組成。因此,我們使用Git從官方的Go Ethereum源碼庫下載了源代碼。 在代碼庫完全本地化的情況下,我們使用GNU Make構建Geth客戶端,還使用了來自Go Ethereum的其他幾個支持軟件,包括使用clef為節點創建和管理key-pair對。Go Ethereum的網頁對每一步操作都有詳細說明。

下載源代碼,并對其進行編譯,再將它安裝到你的設備上,這是真正的軟件工程師類型的工作。 很可能,這對普通計算機用戶來說是一個難以達到的提升。因此,如果從源代碼編譯太過困難,Geth還提供了預構建的二進制文件,你可以從他們的網頁下載。 但是,請注意,雖然這些二進制文件非常值得信任,但實際上你信任的是它們的組成。使用源代碼方法,可以單獨分析每一行代碼,因此不需要信任。

共識層:Lighthouse

本著與Geth相同的精神,對于節點,我們從官方Lighthouse庫下載了Lighthouse,它是從源代碼編譯的。與Geth類似,如果沒有軟件經驗,編譯Lighthouse可能非常棘手。 因此,預構建的二進制文件也可用于Lighthouse。

分析 | 金色盤面:NEO/USDT需要突破22.50才能打開上行空間:金色盤面綜合分析:NEO/USDT短線反彈,目前屬于第三次測試22.50阻力,只有突破此位置才能繼續打開上行空間,否則只能作為下跌過程中的中繼調整。[2018/8/9]

運行節點

在實際運行節點時,請記住操作者必須在同一臺機器上運行兩個程序(執行客戶端、共識客戶端)——在我們的例子中分別是Geth和Lighthouse。 此外,每個客戶端都需要向硬盤寫入大量數據,這就引出了我們的第一步,為文件系統安裝固態硬盤。

安裝固態硬盤

與編譯源代碼類似,定位物理固態硬盤驅動器然后進行“安裝”對普通計算機用戶來說并不容易。需要使用終端程序并具有在計算機的層層文件夾結構中暢通無阻的能力。 對于我們的節點,我們選擇將固態硬盤安裝到主目錄文件夾~/ethereum下。在這個文件夾中(請記住,它實際上位于固態硬盤上!)我們創建了另外兩個文件夾,~/ethereum/execution_layer和~/Ethereum/consensus_layer。這些文件夾(或者程序員稱之為目錄)將保存節點所需的所有文件,包括區塊鏈本身。

運行節點軟件

有了節點運行的文件位置,我們現在可以運行節點軟件了。我們首先遵循Go Ethereum網頁上的步驟,包括使用clef設置一個用戶帳戶((EOA -- 外部擁有的帳戶),然后使用幾個參數啟動geth,最重要的是將datadir設置為我們在固態硬盤上的~/ethereum/execution_layer文件夾(即目錄)。請注意,chainid為“1”(不帶引號)表示主網(即我們所知道和熱愛的真正的以太坊,而不是測試網)。此外,現在geth必須連接到共識層客戶端(在我們的例子中是Lighthouse),必須配置一些額外的參數,Go Ethereum在他們的網頁中相應的“Connecting to Consensus Clients”(連接到共識客戶端)內容中對這些參數進行了解釋。

分析 | 金色盤面:ZLA/BTC短期內快速上漲回落:金色盤面分析師表示:ZLA/BTC短期內快速上漲回落,振幅較大,注意風險,上方壓力位0.00001140,下方支撐位0.00000919。[2018/8/6]

該命令將啟動主網區塊鏈的同步進程,到目前為止,有超過600GB的資源(2022年10月)。當我們在2022年6月啟動最初的節點同步時,這個過程用了大約5天時間。

共識層客戶端Lighthouse的運行方式與上述Geth相同。 同樣,請確保向固態硬盤正確指定datadir,以確保有足夠的硬盤空間來存儲所有所需的數據。此外,Lighthouse需要與Geth進行通信,因為他們都支持合并后的以太坊。關于連接到執行引擎,Lighthouse文檔提供了關于此連接過程的具體說明。 我們的節點同步信標鏈花費了大約兩天時間。 請注意,我們首先同步了主網鏈(即Geth),然后啟動了信標鏈(即Lighthouse)同步。

以太坊節點:左屏為Lighthouse STDOUT,右屏為Geth STDOUT。

當節點同步時,會下載大量數據。實際上是以太坊的整個區塊鏈歷史被復制到你的本地計算機上,包括信標鏈。這些信息完全下載結束后,你可以查詢本地節點的任何信息,并且不要信任任何人來驗證該以太坊系統。有了這樣的設置,當涉及到以太坊網絡和所有與之相關的DAapp時,你就可以真正做到“不輕信,去驗證”了。

連接到你的節點很簡單,可以為Geth或Lighthouse節點組件使用本地托管的RPC。這些API在執行層和共識層都有很好的文檔記錄。對于Python用戶來說,使用開源的Web3.py模塊是一個很好的選擇,有很多博客文章和問題論壇的回答免費提供了許多示例,比如Stack Overflow。如果你對API并不熟悉,你會經歷一個學習曲線;然而,有了Python和這個生態系統可用的大量資源,有動力的用戶當然也可以在網上找到資源來學習他們需要的一切知識技能。

節點表現

隨著權益證明(PoS)成為共識機制,以太坊的區塊時間的可預測性大為提高。出塊時間高度一致,為每12秒產生一個區塊(對于漏塊來說則為24秒、36秒,等等),其他通信(例如,證明)在區塊傳播中為每6秒一次。運行一個專用節點(即,計算機只運行以太坊),這在下面顯示的CPU和網絡活動監視器中都非常清楚。這正是我們所期望的,而且系統的“理論”與觀測到的數據相匹配總是一個令人安心的跡象。回想一下我們自己的節點,是從源代碼編譯的,并使用所有基本構建塊進行設置。

以太坊節點:標準操作的CPU負載百分比和網絡數據速率。

為了進一步顯示正在運行的節點,我們為共識層調用一個端點來返回所有驗證節點的集合(例如,/eth/v1/beacon/states/{state_id}/validators),這是在編寫本文時超過400,000個驗證節點的結果。該查詢的運行時間為幾分鐘,如下所示,在請求處理期間,CPU的使用率明顯增加,然后在請求得到回復后又回落到“正常”狀態。

以太坊節點:信標節點響應API調用,然后恢復正常的節點操作負載。

持續節點運行

與所有軟件系統一樣,會不斷開發新的版本。對于Geth和Lighthouse來說,也是如此——而且,你必須時不時地更新節點軟件。對我們來說,這包括從Github庫中提取最新版本,編譯新的可執行文件,并使用最新的穩定版本重新啟動Geth和Lighthouse。對于我們的簡單節點,我們只需重新編譯并重新啟動。對于面向生產的節點來說,更適合部署一個開發、分階段和完全監控的生產環境。如果你不親自編譯,可以下載最新的預編譯二進制文件,并使用它們重新啟動節點。此外,操作系統也有必須下載和安裝的更新。這對于避免操作系統級別的安全問題尤其重要。

對于我們的節點來說,首先需要一個學習曲線來讓節點連續運行。管理每個進程的RAM利用率是第一個障礙,因為在沒有足夠RAM的情況下,計算機會“隨機”關閉。此外,最初節點使用的是WiFi,無線路由器由于數據過載而崩潰。解決了這些問題(即緩存限制和有線以太網)后,該節點已經連續運行了幾個月沒有停機了。

使用消費級計算機硬件和家庭互聯網連接,可以運行自己的本地以太坊節點。雖然運行從源代碼本地編譯的客戶端(共識層和執行層)對大多數用戶來說可能很困難,但對于最常用的客戶端來說,可以使用預編譯的可執行程序。此外,安裝一個固態硬盤來存儲區塊鏈并運行操作系統(OS)對大多數用戶來說是一個挑戰;但一個有動力、有耐心、愿意學習的用戶是完全有能力做到這些的。

節點操作者的下一步是決定是否成為驗證者。為此,節點必須在本地運行第三個客戶端(Lighthouse還附帶一個驗證者客戶端),并且必須質押32個ETH。這比節點設置要稍微復雜一些。此外,人們應該對離線懲罰以及搞砸質押的以太幣私鑰可能帶來的風險有所了解。因此,用戶應該在運行驗證者節點之前了解自己在做什么。我們還沒有自己運行驗證者節點,但是鑒于我們運行自己節點的復雜性,你最好至少在運行自己節點的一個月后,再決定是否運行你自己的驗證者節點。

寧哥的web3筆記

金色財經 龐鄴

DoraFactory

金色財經Maxwell

新浪VR-

Foresight News

Footprint

元宇宙之道

Beosin

SmartDeerCareer

Tags:ETH以太坊GHTGETETHYS以太坊幣最高價格是多少錢Reserve Rightstogetherbnb全部劇情攻略

火幣APP下載
人永遠賺不到認知以外的錢 數字藏品更是如此_LABS

NFT 世界中從來不缺少機會,唯一缺少的就是發現價值的眼睛。某數字藏品“共識群”中,曾經所有人都將這句話奉為信仰。所謂“共識群”,即持有某款數藏的用戶們為維系價格的抱團.

1900/1/1 0:00:00
以太坊二層網絡的最終猜想:跨 Layer2協議 zkTube啟動映射_TUB

基于以太坊擴容方案ZK Rollup技術路線打造而來的zkTube協議,在過去近半年的測試網絡運行中取得了穩定性、安全性與高效性兼具的良好測試反饋.

1900/1/1 0:00:00
孫宇晨:將與FTX一起尋求解決方案_FTX

11月10日,波場TRON創始人、Huobi Global全球顧問委員會委員孫宇晨通過個人推特賬號表示,會與FTX一起找到解決方案,讓事態朝著積極的方向發展.

1900/1/1 0:00:00
淺談:跨鏈通信的發展_MOC

跨鏈通信正在成為Web3領域的熱門話題,特別是每當有人談到Web3生態系統的現實效用,以及不同的鏈聚集在一起時,解決當前復雜的銀行、跨境交易、數字資產等基礎設施時尤為激烈.

1900/1/1 0:00:00
Bankless:Cosmos會是區塊鏈的終極形態嗎?_MOS

原文作者:Stevie Woofwoof、Sunny Aggarwal 、Zaki Manian原文編譯:aididiaojp.eth在 4.2 億年前志留紀末期.

1900/1/1 0:00:00
關注:DeFi 堆棧中的風險_EFI

去中心化金融(DeFi)是一種基于區塊鏈的金融形式,在沒有任何中心化的中介的情況下提供金融服務.

1900/1/1 0:00:00
ads