以太坊2.0 POS挖矿教程:手把手教你在Topaz测试网进行Staking(监控篇)
在上一篇教程中已经介绍了开启Staking的方法:以太坊2.0 POS挖矿(ETH2 Staking)教程(一)Topaz测试网
由于Staking要求验证着24/7保持在线才能持续获得收益,如果验证者离线一小段时间,将会有少量的惩罚;如果长时间离线,惩罚金额会随着时间大幅上升。关于该机制的简单介绍,可见这篇文章中的“验证者激励措施”部分。
因此,有必要对Staking进行实时监控,以便在出现问题时接收到告警并及时处理,避免损失扩大。
本文将从简单到复杂,介绍几种监控的方法。
准备工作——获取验证者public key
1. 从存款交易获取
打开metamask,找到那笔32ETH的存款交易,然后点击“通过etherscan浏览”。可看到那笔交易对应的验证者public key。
2. 从验证者密钥目录查看
进入密钥目录后查看validatorprivate****的文件,找到"publickey"部分即可。
# 进入目录 cd ~/.eth2validators # 打开validatorprivate开头的文件 vim validatorprivatekey***** # 打开后找到"publickey"部分即可
区块链浏览器查看验证者状态
最简单的方式就是通过访问区块链浏览器网站监控验证者状态。https://beaconcha.in或者https://beacon.etherscan.io,输入Public Key即可查看当前状态和历史收益。
验证者状态——beaconcha.in为例
使用云主机服务提供商的的监控看板
大部分云主机服务提供商都提供了主机性能监控和告警的功能。如果在云主机上进行Staking,可使用云服务上提供的资源监控告警功能。 信标链客户端占用内存大约在2.5GB-3.5GB之间,进程如果终止内存会导致内存骤降,可通过内存使用率/使用量的异常进行侧面监控。 同时可对网络流量、机器是否正常运行设置更多维度的监控。
通过prometheus监控
Prometheus是一款流行的实时监控工具。按照要求开发服务并设置监听端口后,可通过prometheus访问端口获取数据进行监控。 prysm已经内置了针对prometheus的监听服务,因此可以只需对prometheus进行简单的配置即可对信标链和验证者客户端进行监控。 如果想自行研究,可参考官方教程。以下是简要步骤:
下载相应的prometheus安装包到本地:Download the latest release
解压并进入目录:
tar xvfz prometheus-*.tar.gz cd prometheus-*
用screen新建一个session并启动prometheus:
# 新建一个session screen -S prometheusETH2 # 启动prometheus ./prometheus --config.file=prometheus.yml # 启动完成后按住CTRL+A+D退出session
修改配置文件prometheus.yml 默认的配置文件底部可看到- targets: ['localhost:9090'],表示进程会从本机9090端口抓取数据。9090是prometheus提供的监控自己运行指标的端口。prysm的信标链和验证者的指标端口分别是8080和8081,将两个端口加入到配置文件的targets即可。完成后的prometheus.yml的scrape_configs部分如下:
scrape_configs: # The job name is added as a label `job=` to any timeseries scraped from this config. - job_name: 'prometheus'# metrics_path defaults to '/metrics' # scheme defaults to 'http'.static_configs: - targets: ['localhost:9090']# 添加以下targets以监控信标链和验证者 - job_name: 'beacon-chain' static_configs: - targets: ['localhost:8080']- job_name: 'validator' static_configs: - targets: ['localhost:8081']
修改完成后,通过promtool检查配置文件正确性:
./promtool check config prometheus.yml
验证无误后可以看到如下信息:
Checking prometheus.yml SUCCESS: 0 rule files found
使prometheus重新载入配置文件 通过ps -aux | grep prometheus找到prometheus运行的进程号(PID),并通过以下命令通知该进程重新载入配置文档:
kill -HUP PID
查看监控指标 通过本机访问http://localhost:9090即可看到prometheus的图形化监控页面。如果使用linux云主机,则需要开放9090,8080,8081三个端口并通过浏览器访问服务器。 点击菜单栏的Status >> Targets可看到配置文件中设置的targets:
点击Endpoint中的链接可看到看到该target中的所有指标。 进入validator的Endpoint(http://localhost:8081/metrics),可在页面底部看到验证者相关指标:
选取其中的指标输入到Graph页面即可。例如想观测验证者的ETH余额增长情况,只需要点击菜单的Graph,输入validator_balance后点击Execute,并在下方切换到Graph标签即可查看走势(我这里有2个验证者,所以有2条曲线):
点击下方的Add Graph可添加任意数量的图表,实现多个图表的看板。
优缺点
以上不同的监控方式各有优劣。对比如下:
区块链浏览器 | 云主机监控告警 | prometheus | |
---|---|---|---|
监控维度 | 验证者节点状态和余额变动 | 主机性能指标波动 | 信标链和验证者的多项指标 |
指标丰富程度 | 少 | 一般 | 丰富 |
上手难度 | 简单 | 中等 | 较为复杂 |
是否需要信任第三方的区块链信息? | 是 | - | 否 |
是否直接监控验证者? | 是 | 否 | 是 |
主机断电或网络断开时是否有效? | 是 | 是 | 否 |
风险点 | 网站数据有误、网站无法访问时无法监控 | 进程运行但执行异常时无法监控到 | 主机断电或网络断开时无法监测; prometheus进程终止或出现异常时监测功能失效。 |
综上,较为保险的做法是主机性能指标监控+prometheus,另外亦可将prometheus部署在另一台机器上,这样当主机宕机或网络断开时也能观测到异常指标。
监控有了,告警呢?
说了这么多,难道需要一个人啥事不干整天盯着指标吗?当然不是啦,下一篇就会介绍如何对异常进行告警。不要错过哦。
本文链接:https://www.8btc.com/media/594563
转载请注明文章出处
声明:此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。本网站所提供的信息,只供参考之用。
-
自由开放透明的矿机革命 - 新一代DOGE矿机VOLCMINER D1发布
2024-10-17 -
Coin Metrics:2024年Q3比特币矿业报告
2024-10-10 -
Aleo 主网上线天王变“天亡”?矿工直呼被坑惨
2024-09-22 -
预挖矿与去中心化:Fractal给我们带来的思考
2024-09-19 -
俄罗斯加密合法化:怎么运作 能让它避开西方制裁吗
2024-09-10
更多 推荐专栏
- 吴说区块链
- 知名自媒体,作者曾获中国新闻奖。为您提供加密行业、科技公司独家可靠的信息与观点。
- 挖币网评测
- 挖币网专业测评
- 区块鲁班
- 元宇宙工程师——区块鲁班,是一个具备全球化服务能力的公司品牌。提供矿机采购、维修、测试、托管、运维、出口等一站式服务。我们与比特大陆、比特微、嘉楠国际、芯动科技等全球头部矿机生产厂家建立了良好的合作关系,共同开创矿机国际化服务标准,并携手在全球布局矿机服务中心,为全球加密货币行业参与者提供专业、高效、全面的解决方案。
- HashPool
- 多币种数字货币矿池,关注最新最有潜力币种 HashPool 链接每一个算力
- 巴比特资讯
- 巴比特是国内领先的区块链信息服务商,以价值投资为导向,为区块链创新者服务。 我们以论坛启锚远征,让资讯为瞭望景观,聚集区块链技术和应用弄潮儿。目前已发展成集资讯内容、线下活动、培训、孵化器、投资和区块链技术落地应用于一体的生态体平台。全网覆盖用户超100万人,遍及中国大陆、韩国,日本,美国,香港等国家和地区。