作者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/cn.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