作者troylee (troylee)
看板DigiCurrency
標題Re: [挖礦] ETH 2.0 Testnet in Raspberry pi4 4GB 教學
時間Wed Apr 29 23:47:48 2020
感謝
@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://webptt.com/m.aspx?n=bbs/DigiCurrency/M.1588175272.A.4A5.html
1F:→ 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
2F:推 camellala: 推 04/30 00:19
3F:→ troylee: PS.當Validator要有24/7的能力, 是不是一些設備都要有 04/30 00:32
4F:→ 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
5F:推 SamuelLuo: 推 04/30 02:22
6F:推 sdtty: 看起來是pos節點,但實際上是燒ssd挖礦,也算是某種pow 04/30 06:29
7F:→ darkdixen: ssd用好一點有dram der 04/30 06:51
8F:推 b24333666: 推 跪求詳細教學 04/30 07:18
9F:推 wobooyaw: 推 04/30 08:39
10F:推 leftc: proof of ssd 就是 POS 沒錯阿(? 04/30 10:03
11F:推 camellala: 依吹吹的論述,BTC是PoS:Proof of sdtty信仰 04/30 10:34
12F:→ troylee: Proof of SSD XDDD 04/30 11:19
13F:推 sdtty: ssd保固三至五年,以後金士頓說不定會新增條款,不得商用 04/30 11:50
14F:→ sdtty: 當作節點xd 04/30 11:50
15F:→ ECZEMA: 別騙我 我書讀得少 PoS 不是 Proof of Steak 牛排多的贏嗎 04/30 11:52
16F:推 camellala: Pork of Steak 來吃豬排啦pork steak 04/30 11:56
17F:→ ECZEMA: 難怪一直覺得不通順 原來是 pork or steak 要吃豬還牛排 04/30 12:18
18F:推 b24333666: 你確定不是選擇住 Park or Suite ? 04/30 12:51
19F:推 goldflower: 推推 04/30 13:35
20F:推 goldflower: 不過如果只有init-sync用到swap 壽命會有什麼影響嗎 04/30 13:39
21F:推 SamuelLuo: 為什麼這篇梗這麼多?XD 04/30 15:45
22F:→ troylee: 可能這兩天大家都賺飽飽很開心 XD 04/30 17:10
23F:推 lajji: 這篇大家都好有梗XDD 04/30 22:25
24F:→ troylee: 等SSD損失大於獎勵 PoS 就是 Proof of Stupidity (誤) 04/30 22:29
25F:→ troylee: 第一天獎勵約 0.01 ETH, 第二天約 0.012 ETH 04/30 22:31
26F:→ dennisxkimo: 記憶體夠大,一部分做ramdisk是否可以解決swap設在SS 05/01 06:36
27F:→ dennisxkimo: D操的問題 05/01 06:36
28F:→ troylee: 記憶體夠大應該就不需要swap, swap用意記憶體不足時可以 05/01 13:54
29F:→ troylee: 系統可以把部分不常用的部分轉移swap上, 有需要存取再轉 05/01 13:55
30F:→ troylee: 回記憶體中... 所以夠大應該就不需要特別設定 05/01 13:55
31F:推 ECZEMA: 像我用 AWS 的 nano 在跑 記憶體只給400m 不開 swap 跑不 05/03 10:31
32F:→ ECZEMA: 起來 反正用人家的機器就是貴 05/03 10:31
33F:→ dennisxkimo: 弄一個跑在virtualbox的版本會不會比較好推? 05/03 14:11
34F:推 ECZEMA: windows 也能裝喔~ 我網路連免費的 沒固定Ip和開port權 05/03 22:35
35F:→ troylee: 不論決定在哪個平台跑, 都要先評估風險和穩定度, 出現問 05/04 02:59
36F:→ troylee: 題可能會扣壓艙的 32ETH 喔. 05/04 03:01
37F:→ troylee: 開 NAT Port 的問題, 我在開之前 Beacon Chain 偶爾會跳 05/04 03:02
38F:→ troylee: 連不上某個GRPC的ErrorLog, 開 NAT 後改善很多.. 05/04 03:02
40F:推 ECZEMA: 有如何退出這個 contract 不當 validator 的方法嗎? 05/06 23:08
41F:→ troylee: 印象中 phase 1 才能 withdraw... 05/07 02:01
42F:推 ECZEMA: T_T 啊不就還好是 goerli 測試幣而已 居然沒做退出功能 05/07 10:23
※ 編輯: troylee (114.35.97.90 臺灣), 06/20/2020 01:34:27