看板 DigiCurrency 關於我們 聯絡資訊
感謝 @b24333666 的教學, 這兩天也用 Raspberry Pi 4(4GB) 試著建構 為了節省記憶體的使用, 再加上我喜歡 headless 的部署方式, 我沒有安裝桌面系統, 而是採用 SSH 進機器操作. ## 預設開啟 SSH Server 第一次開機前在SD卡的 system-boot 分割中, 產生一個命名為 ssh 的檔案(空的即可) 之後開機會自動叫起 SSH Server. ## Firefox/MetaMask 主要是當 Goerli ETH 的錢包, 可以直接在一般電腦上跑. 跑 Beacon Chain/Validator Client 建議可以使用 tmux 以避免斷線. PS. 記得 MetaMask 切換到 Goerli Test Network, 在右上角 ## Beacon Chain 跑 Beacon Chain 大約會花 2~3 小時做 init-sync, 這時候會吃非常多記憶體 建議可以在 SSD 上面暫時先開一個 swap 檔, init-sync 完可以關掉 作法如下 ``` # 檔名路徑可自選一個 SSD 的空間, 8x1G 可以更大沒關係 $ sudo dd if=/dev/zero of=/var/swapfile bs=1G count=8 $ sudo mkswap /var/swapfile $ sudo swapon /var/swapfile $ free total used free shared buff/cache available Mem: 3884376 2322780 47260 3916 1514336 2924320 Swap: 8388604 1024 8387580 ``` 完成 init-sync 後如不使用可以透過 `sudo swapoff /var/swapfile` 關閉 PS1.如果不使用 SWAP 的話, 有可能會遇到 Kernel Out-of-memory 的問題, beacon chain 的程式就會被 Kernel 關掉, 而且會 hang 好一段時間.. oom-kill:constraint=CONSTRAINT_NONE,nodemask=(null),cpuset=/,mems_allowed=0,global_oom,task_memcg=/,task=beacon-chain-v1,pid=2522,uid=1001 Out of memory: Killed process 2522 (beacon-chain-v1) total-vm:5812104kB, anon-rss:3570120kB, file-rss:0kB, shmem-rss:0kB, UID:1001 pgtables:7652kB oom_score_adj:0 oom_reaper: reaped process 2522 (beacon-chain-v1), now anon-rss:0kB, file-rss:0kB, shmem-rss:0kB PS2.beacon chain可以不需要以 sudo 權限執行 ## Validator Client 當 Beacon chain init-sync 跑完後, Validator 會需要一段時間等你的 deposit 被處理到..(約一個多小時) 此時 Log 訊息會有 status=DEPOSITED 的字樣, 只要等到 expectedInclusionSlot == slot 就會開始分派工作了! PS.Validator Client 可以不需要 sudo 權限執行 ## 結論 - Validator 跑了約 18 小時, 總共收到 0.008 ETH 的獎勵.. 請參閱 https://bit.ly/2WaQ2Py - SSD 共額外吃了 1GB (剛剛算錯空間了 XD) - 我的Pi4 在 init-sync 時, CPU 48度, USB 52度, 只有貼散熱片 - 離線會有 penalty, raspberry pi4 的可靠度老實說我打個問號... - 要考慮 SSD 壽命(保固?) vs 獎勵划不划算 - 路由器 13000/tcp 做 NAT 小費箱 ETH: 0xf92512467cF72b249e621DB334391F7d11FAFcB1 simpleledger:qq2c29w68qkre380j4fc9s53a9cnnmt2uvdq5l87hd -- It is better to be approximately right than exactly wrong. -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.35.97.90 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/DigiCurrency/M.1588175272.A.4A5.html
troylee: 再來要把重開機自動跑service設定好 04/29 23:50
※ 編輯: troylee (114.35.97.90 臺灣), 04/30/2020 00:06:26 ※ 編輯: troylee (114.35.97.90 臺灣), 04/30/2020 00:12:07
camellala: 推 04/30 00:19
troylee: PS.當Validator要有24/7的能力, 是不是一些設備都要有 04/30 00:32
troylee: 備品可以壞了隨時換呢? 04/30 00:32
※ 編輯: troylee (114.35.97.90 臺灣), 04/30/2020 02:05:09 ※ 編輯: troylee (114.35.97.90 臺灣), 04/30/2020 02:15:09 ※ 編輯: troylee (114.35.97.90 臺灣), 04/30/2020 02:17:10
SamuelLuo: 推 04/30 02:22
sdtty: 看起來是pos節點,但實際上是燒ssd挖礦,也算是某種pow 04/30 06:29
darkdixen: ssd用好一點有dram der 04/30 06:51
b24333666: 推 跪求詳細教學 04/30 07:18
wobooyaw: 推 04/30 08:39
leftc: proof of ssd 就是 POS 沒錯阿(? 04/30 10:03
camellala: 依吹吹的論述,BTC是PoS:Proof of sdtty信仰 04/30 10:34
troylee: Proof of SSD XDDD 04/30 11:19
sdtty: ssd保固三至五年,以後金士頓說不定會新增條款,不得商用 04/30 11:50
sdtty: 當作節點xd 04/30 11:50
ECZEMA: 別騙我 我書讀得少 PoS 不是 Proof of Steak 牛排多的贏嗎 04/30 11:52
camellala: Pork of Steak 來吃豬排啦pork steak 04/30 11:56
ECZEMA: 難怪一直覺得不通順 原來是 pork or steak 要吃豬還牛排 04/30 12:18
b24333666: 你確定不是選擇住 Park or Suite ? 04/30 12:51
goldflower: 推推 04/30 13:35
goldflower: 不過如果只有init-sync用到swap 壽命會有什麼影響嗎 04/30 13:39
SamuelLuo: 為什麼這篇梗這麼多?XD 04/30 15:45
troylee: 可能這兩天大家都賺飽飽很開心 XD 04/30 17:10
lajji: 這篇大家都好有梗XDD 04/30 22:25
troylee: 等SSD損失大於獎勵 PoS 就是 Proof of Stupidity (誤) 04/30 22:29
troylee: 第一天獎勵約 0.01 ETH, 第二天約 0.012 ETH 04/30 22:31
dennisxkimo: 記憶體夠大,一部分做ramdisk是否可以解決swap設在SS 05/01 06:36
dennisxkimo: D操的問題 05/01 06:36
troylee: 記憶體夠大應該就不需要swap, swap用意記憶體不足時可以 05/01 13:54
troylee: 系統可以把部分不常用的部分轉移swap上, 有需要存取再轉 05/01 13:55
troylee: 回記憶體中... 所以夠大應該就不需要特別設定 05/01 13:55
ECZEMA: 像我用 AWS 的 nano 在跑 記憶體只給400m 不開 swap 跑不 05/03 10:31
ECZEMA: 起來 反正用人家的機器就是貴 05/03 10:31
dennisxkimo: 弄一個跑在virtualbox的版本會不會比較好推? 05/03 14:11
ECZEMA: windows 也能裝喔~ 我網路連免費的 沒固定Ip和開port權 05/03 22:35
troylee: 不論決定在哪個平台跑, 都要先評估風險和穩定度, 出現問 05/04 02:59
troylee: 題可能會扣壓艙的 32ETH 喔. 05/04 03:01
troylee: 開 NAT Port 的問題, 我在開之前 Beacon Chain 偶爾會跳 05/04 03:02
troylee: 連不上某個GRPC的ErrorLog, 開 NAT 後改善很多.. 05/04 03:02
ECZEMA: https://is.gd/ZYe6JG 提供一個不好好開機被扣錢的反例XD 05/06 22:41
ECZEMA: 有如何退出這個 contract 不當 validator 的方法嗎? 05/06 23:08
troylee: 印象中 phase 1 才能 withdraw... 05/07 02:01
ECZEMA: T_T 啊不就還好是 goerli 測試幣而已 居然沒做退出功能 05/07 10:23
※ 編輯: troylee (114.35.97.90 臺灣), 06/20/2020 01:34:27