在上一篇教程中已经介绍了开启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即可查看当前状态和历史收益。

使用云主机服务提供商的的监控看板

大部分云主机服务提供商都提供了主机性能监控和告警的功能。如果在云主机上进行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如下:
# my global config
global:scrape_interval:     15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.# scrape_timeout is set to the global default (10s).# Alertmanager configuration
alerting:alertmanagers:- static_configs:- targets:# - alertmanager:9093# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
rule_files:# - "first_rules.yml"# - "second_rules.yml"# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:# The job name is added as a label `job=<job_name>` 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.ymlSUCCESS: 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:

    回到prometheus
    点击Endpoint中的链接可看到看到该target中的所有指标。
    进入validator的Endpoint(http://localhost:8081/metrics),可在页面底部看到验证者相关指标:

    选取其中的指标输入到Graph页面即可。例如想观测验证者的ETH余额增长情况,只需要点击菜单的Graph,输入validator_balance后点击Execute,并在下方切换到Graph标签即可查看走势(我这里有2个验证者,所以有2条曲线):

    点击下方的Add Graph可添加任意数量的图表,实现多个图表的看板。

优缺点

以上不同的监控方式各有优劣。对比如下:

区块链浏览器 云主机监控告警 prometheus
监控维度 验证者节点状态和余额变动 主机性能指标波动 信标链和验证者的多项指标
指标丰富程度 一般 丰富
上手难度 简单 中等 较为复杂
是否需要信任第三方的区块链信息? -
是否直接监控验证者?
主机断电或网络断开时是否有效?
风险点 网站数据有误、网站无法访问时无法监控 进程运行但执行异常时无法监控到 主机断电或网络断开时无法监测;
prometheus进程终止或出现异常时监测功能失效。

综上,较为保险的做法是主机性能指标监控+prometheus,另外亦可将prometheus部署在另一台机器上,这样当主机宕机或网络断开时也能观测到异常指标。

监控有了,告警呢?

说了这么多,难道需要一个人啥事不干整天盯着指标吗?当然不是啦,下一篇就会介绍如何对异常进行告警。不要错过哦。

以太坊2.0 POS挖矿(ETH2 Staking)教程(二)Topaz测试网-监控篇相关推荐

  1. 以太坊2.0 POS挖矿(ETH2 Staking)教程(一)Topaz测试网

    引言 由以太坊2.0客户端构建团队之一的Prysmatic Labs发布的以太坊2.0的第一个主网配置的测试网Topaz终于在4.15正式启动了.该测试网针对的是以太坊2.0第0阶段的测试,即实现信标 ...

  2. 以太坊2.0怎么挖矿_以太坊2.0即将上线 现在正是挖矿红利期 普通人如何参与挖矿?...

    以太坊2.0 吹响牛市号角!以太坊从诞生至今,共经历了四个阶段,分别是Frontier.Homestead.Metropolis和Serenity,此次以太坊升级疏于第四阶段Serenity,其中最核 ...

  3. 一文读懂以太坊2.0及其影响

    以太坊 2.0 与以太坊经典? 以太坊 2.0,又名 Eth2 和 Serenity,是对现有以太坊经典区块链的首次升级,旨在提高以太坊网络的速度.效率和可扩展性,同时提高安全性并使网络更具可持续性. ...

  4. V神说,解释以太坊2.0最好的文章就是这篇了

    翻译 | 王国玺 编辑 | 波波 今天,V 神在 Twitter 上表示,君士坦丁堡升级的再度延迟完全不会影响以太坊 2.0 的 Casper/分片/宁静 的研发团队和研发进度: V 神是在转推以太坊 ...

  5. 以太坊核心开发者正在制定ETH2.0合并最低技术规范

    在3月11日的Eth2开发者电话会议上,以太坊基金会研究员及开发者Danny Ryan表示,其和以太坊2.0客户端Teku的Mikhail Kalinin,正在探索创建一个可交付产品,以保存一些功能供 ...

  6. 币安选择InfStones作为以太坊2.0 Staking基础设施服务商

    据官方消息,区块链基础设施提供商InfStones与数字货币交易所币安合作,为以太坊2.0服务提供核心基础设施支持. 作为合作的一部分,InfStones为币安提供包括以太坊2.0验证人节点在内的基础 ...

  7. 以太坊2.0将至,蕴藏着哪些投资机会?

    以太坊2.0距离正式发布更近一步,这是整个加密行业期待已久的大事件. ETH开发者Superphiz在推特上透露,合并计划在9月19日进行,目前还没有最终确定.尽管这个可能不是最终的合并时间,但是这也 ...

  8. eos和以太坊有什么关系_以太坊 2.0是什么?

    ETH2.0 是以太坊的计划升级方案.在接下来的几年里,ETH2.0 的设计者们计划完全革新以太坊的共识系统,并引入以太坊现有的世界状态.由于涉及面极广,我们也无法准确地说明 ETH2.0 将包括或者 ...

  9. V神演讲干货全送上!关于以太坊2.0,你想知道的都在这里!

    编辑 | 晋兆雨.Carol 8月8日 ,「2020以太坊技术及应用大会·中国」顺利举行.CSDN 创始人&董事长.极客邦创投创始人蒋涛.以太坊创始人Vitalik Buterin .Unit ...

最新文章

  1. 中方控股的Arm合资公司开始运营,还要在国内IPO
  2. 包含Tomcat 9的JBoss Web Server 5已发布
  3. android 顺序执行任务
  4. 阿里云异构计算产品家族亮相 覆盖全场景AI和高性能计算需求
  5. 基于CAN总线的家居安防系统设计
  6. 在 .NET Core 中如何让 Entity Framework Core 在日志中记录由 LINQ 生成的SQL语句
  7. Machine Learning from Start to Finish with Scikit-Learn
  8. 洛谷P1901 发射站
  9. CentOS7——安装JDK和Tomcat
  10. presto安装及入门
  11. 【Android】怎样烧写qcn文件
  12. 基于STM32的超声波传感器测距(含代码)
  13. python 断言详细讲解用法及其案例_python断言_python 断言_python断言案例 - 云+社区 - 腾讯云...
  14. 小程序计算当前定位与店铺距离
  15. 团队的英文翻译缩写_公司部门英文缩写简称大全
  16. 改善网页性能的5种方法
  17. kuwo.php采集,PHP获取酷我音乐MP3外链
  18. Seaweeds配置部署
  19. HTMl账号密码登录跳转下一个页面问题/网页输入正确的账号面膜登录下一个界面/PHP网页禁止某个链接直链访问
  20. 经营性ICP与非经营性ICP有什么区别?

热门文章

  1. dell系统重装后无法进入系统_教你戴尔无法开机怎么重装win10系统
  2. 如何成为资深软件工程师(JAVA方向)
  3. C++调用python,并抓取每日一句名言
  4. UED交互设计DMEO
  5. 搜索引擎UA和对应的蜘蛛IP段,百度,搜狗,so,360搜索,神马
  6. codeforces_#242 (Div. 2)
  7. 教师资格证报名网页兼容问题
  8. 一个正经的前端学习 开源 仓库(阶段十七-440)
  9. 小米手机多功能计算机都怎么使用方法,MIUI12.5手机电脑如何同步使用-小米11MIUI12.5新功能miui+使用方法...
  10. spark-测试模式-在windows中连接虚拟机中cdh集群的hdfs和hive和linux单机模式