为主网上线做准备:一文速览Libra节点运行指南

区块链资讯牛市来了2019-11-02 13:56:16  阅读 -评论 0
本文作者为Libra协会成员之一区块链架构公司Bison Trails。在这篇文章中,Bison Trails分享了Libra节点运作者可以为运行验证者和全节点所做的准备,并给出了三个建议。
为主网上线做准备:一文速览Libra节点运行指南

作为Libra协会的成员,Bison Trails获得了在Libra测试网上运行首个非Calibra验证者节点的深入体验。在这篇文章中,我们详细介绍了从实践中获得的经验教训,并就如何优化节点性能为其他验证节点运作者提供了建议。

为运行验证节点做准备(简化版)

在详细介绍我们学到的一些经验之前,我们建议你下载并运行Libra网络软件。Libra项目团队在GitHub上提供了这个开源软件,并在Libra项目开发人员的站点上提供了优秀的文档。文档内容是Libra区块链的指南,对Move编程语言进行了介绍,详细说明了如何构建和运行验证节点。在这篇文章中,我们不会深入讨论,但是通过Docker运行一个节点的简化版就像检查源代码一样简单,可以参照以下两种形式:

1. 参考Libra core测试网分类中"Docker"目录的说明,通过Docker在本地运行

2. 使用Terraform在AWS上运行网络,同样的,可以参考Libra core测试网分类中"Terraform"目录的说明

无论是哪一种情况,你都应该使用代码的测试网分类,因为这更稳定,而且是Libra区块链开发者文档推荐的。

使用上述任何一种方法运行验证节点都比较简单。我们建议你首先通过Docker在本地运行,了解节点的配置,使用Docker logs命令查看其日志,并了解验证节点是如何发现彼此的。一旦你适应了本地环境,Terraform部署将启动一个更逼真的验证者网络,这些验证节点可以通过互联网相互通信。

对于那些已经尝试过使用这两种方法来运行软件的人来说,我们下面的建议将很有意义。

为主网做准备,有这三个方法

接下来,我们将根据我们运行Libra节点的经验和我们之前使用其他区块链网络的经验,给出三个建议。

1. 持久化区块链

当Libra网络启动时,随着账户数量的增加,账本状态将随时间增长,验证交易的执行将创建新的账本状态。存储账本状态的数据库也将相应地增长。重要的是,验证者和全节点能够在重新启动验证者进程的情况下快速恢复——无论出于何种原因。在最坏的情况下,从理论上讲,一个节点总是可以从创世区块开始重新同步整个历史记录,但是这种昂贵且耗时的同步可以通过将区块链存储在一个持久化卷(persistent volume)上来避免。

按照惯例,Libra验证者通常配置为将区块链数据存储在目录"/opt/ Libra /data"中;你可以通过更改/opt/libra/etc/node.config.toml的存储部分来在其他地方存储区块链数据。但是我们建议你使用默认位置。

图1. 推荐的存储配置来自node.config.toml

dir = "/opt/libra/data" 为主网上线做准备:一文速览Libra节点运行指南

无论你的节点使用哪个系统目录来存储区块链,你都需要在目录树中的特定位置挂载(mount)一个持久化卷。当通过Docker运行时(我们推荐使用Docker),这就像使用—volume(卷)或—mount(挂载)标记来指定挂载细节一样简单。例如,假设你在主机/data上挂载了几个T的持久卷,并且你的配置文件在一个安全卷/libra-config上可用,你可以调用Docker来使用该卷,如下所示:

图2. 使用卷标志进行持久化

$ docker run -v /data:/opt/libra/data -v /config:/opt/libra/etc libra_e2e 为主网上线做准备:一文速览Libra节点运行指南

实际上,Libra区块链源代码中提供的Terraform模板使用这样的配置将Libra区块链数据存储在一个EBS(弹性块存储)卷中。

在Bison Trails,我们也有专门的系统定期快照区块链数据,如果我们失去了一个卷或者一个特定的数据中心变得不可用(在全世界运行着成千上万的区块链节点,这并不罕见),我们可以快速地用一个新卷启动一个新节点或在一个不同的位置启动一个新节点。也就是说,我们自己的Libra验证节点所做的第一件事就是将区块链目录存储在一个持久的位置,它与这些高级设置的系统是分离的。

2. 指标和警报

在Bison Trails,我们习惯了在运行区块链软件的同时添加一个监控层,这样我们就可以预见并采取网络正常发展所需的任何行动,并可以对所有预料之外的事件做出反应。

以Libra区块链为例,核心开发团队为所有验证者提供了一个有利的开端,他们已经通过Prometheus(普罗米修斯)发布了非常有用的标准。Prometheus是一个非常好的时间序列数据解决方案,正在成为开发团队的黄金度量标准,并可以发出警报。体验这些指标的最佳方法是在开始运行验证者时,通过上面描述的Terraform方法运行验证者网络。正如以下截图所示,它提供了一个即开即用的仪表板,其中包含许多针对个人和网络节点的关键指标。

图3. 附带运作指标和示例仪表板的Libra core

为主网上线做准备:一文速览Libra节点运行指南

通过在很多网络上运行节点的经验,我们建立了一个相当全面和严格的方法来监控我们的节点。我们在三个大概分类中查看度量指标:

  • 系统指标,例如CPU/内存/磁盘利用率
  • 区块链节点,例如进程健康状态、节点连接状况、数据传输
  • 区块链应用,例如出块速度、交易速率以及验证数据
我们跟踪的每个指标都有警报通知,大致可以分为重要和非重要。由于Libra主网还没有发布,核心开发正快速进行,如果验证节点进程停止,Bison Trails不会收到警报。然而,随着发布的临近,我们将收紧警报阈值和严重程度,我们建议由所有运行节点的Libra协会成员监控关键性能指标,并在适当的地方设置警报。

3. 保护你的密钥

我们给出的最后一个建议和Libra节点的密钥管理有关。首先,要注意的是:验证者密钥管理的操作在不断演变,所以我们在这里所指出的并不能直接用于主网,而是为协会成员和其他节点运作者提供密钥管理的思路。下述方法肯定会变,因为一些关于密钥、密钥循环(key rotation)、HSMs和其他安全问题的操作问题将在未来几个月解决。

Libra验证者目前运行的三个密钥对存储在两个配置文件中:

  • 一个存储在/opt/libra/etc/consensus_keypair.config.toml的共识密钥
  • 存储在/opt/libra/etc/network_keypair.config.toml的网络身份和签名密钥
在Bison Trails,我们使用分层的方法来确保能使用密钥。因为Libra验证者需要从文件中读取密钥,所以有以下两个建议:

1. 限制密钥文件权限:无论用户是谁,验证者进程是唯一需要读取这些文件的进程,并且没有进程需要对它们进行写入,所以我们建议将权限模式设置为"400",这意味着用户可以读取,而其他人不能读取或写入。

2. 不要接触磁盘:我们建议您至少为Docker图像使用tmpfs卷,并包含引导代码以使配置文件在tmpfs卷上可用。

如果你只是在本地测试验证节点,那么就不需要保护密钥,但是一定要注意区分开发模式和你在生产环境中的活动,以便为启动主网做好准备。

发文时比特币价格: ¥64258.98特别声明

原文:https://developers.libra.org/blog/2019/10/29/a-guide-to-running-libra-validators#three-ways-to-prepare-for-mainnet
作者:Bison Trails
编译:Wendy
稿源(译):巴比特资讯(https://www.8btc.com/article/506035)

免责声明:本文不代表巴比特立场,且不构成投资建议,请谨慎对待。

声明:链世界登载此文仅出于分享区块链知识,并不意味着赞同其观点或证实其描述。文章内容仅供参考,不构成投资建议。投资者据此操作,风险自担。此文如侵犯到您的合法权益,请联系我们kefu@lianshijie.com

参与讨论 (0 人参与讨论)

相关推荐

如何设置与配置全尔格节点

本教程将解释如何安装与运行全尔格节点。其不涉及采矿相关的内容。 节点安全 · 节点的使用涉及几个重要方面的内容,你的钱包和钱的安全性取决于以下方面: · 尔格节点需要在配置文件中存储安全关键参数。你永远不应把这个文件公开。 · 尔格节点提供用于与内置钱包互动的REST API。敏感的API方法需要一个安全令牌,你永远不要通过不可靠的渠道发送该令牌。 访问尔格REST API必须限制在认识的主机上。

Libra (天秤币) 会实现最初的雄心吗?

不过,Libra的确提到,在这种情况下,要与各国的央行展开对话。这已经在Libra最初的布局中提过了。它由Libra协会理事会管理,每个协会成员有一名代表。

Ontology Layer 2链下扩容技术上线测试网,率先构建公链平台完整体系

在 Layer 2交易中心,用户进行转账或执行合约请求并进行签名。如何体验目前,Ontology Layer 2已上线测试网,开发者可抢先进行体验。这要求 Challenger 从 Operator 或者链上同步 Layer 2交易,维护完整的全局状态。

外媒:基于 TON 的操作系统TON OS 或将上线谷歌及苹果应用商店

消息人士称,有了 TON OS,用户可以创建与区块链平台自动兼容的应用程序。但是对于上述消息,记者向谷歌及苹果征求真实性,均未得到回复。

Libra协会新成员Checkout.com是什么公司?

2020 年 4 月 28 日,英国支付行业初创公司 Checkout.com 宣布加入 Libra 协会。Libra 协会政策与传播主管 Dante Disparte 对 Checkout.com 加入 Libra 协会表示欢迎。

加密合成资产平台UMA代币将于今晚11点在Uniswap上线

律动 BlockBeats 消息,加密合成资产平台 UMA代币将于 4 月 29 日晚上 11:00在 Uniswap 上线,在 Uniswap 市场存入 200 万 UMA 代币,初始价格为 0.26 美元。

UMA上线 Uniswap 暴涨 5 倍,但多位大 V 却对此展开抨击

UMA上线 Uniswap 暴涨 5 倍,但多位大 V 却对此展开抨击

律动BlockBeats 消息,加密合成资产平台 UMA代币上线 Uniswap 四小时后,价格从最初始的 0.26 美元左右已经涨到了 1.2 美元左右。

TON上线日期延迟至2021年4月,Gram投资者可将资金借给Telegram获取利息

律动BlockBeats 消息,即时通讯应用 Telegram 第二次推迟了区块链项目 TON 的发布,将新的上线日期推迟到 2021 年 4 月,Telegram 将返还投资者 72% 的投资回报。选择继续等待的投资者则有一个新的选择,他们可以把投资资金贷款给 Telegram。

麦妖榜
更新日期 2019-09-03
排名用户贡献值
1牛市来了30910
2BitettFan24187
3等待的宿命23810
4区块大康20369
5六叶树20310
6linjm122719429
7天下无双16192
8lizhen00215280
9让时间淡忘14586
10yelanyi050511349
返回顶部 ↑