节点运行快速入门
本节将演示部署一个bArtio测试网RPC归档节点,该节点包含beacond共识客户端和reth执行客户端。
注意:目前,测试网验证节点需被列入等候白名单,并在网络需要时运行。
先决条件
开始之前,请确保你的本地设备上满足以下条件:
最低硬件要求
运行执行客户端和共识客户端均需要满足以下要求。建议在同一台设备运行这两个客户端,以实现两者之间的低延迟通信。
支持的系统:Linux / MacOS
CPU架构:AMD64,ARM64或ARM64 Darwin
CPU性能:8核
内存:48GB
硬盘:1TB
如果以Docker容器运行,请确保每个Docker容器有足够的资源,以满足总需求。
源代码构建和运行
本节快速入门文档,将从源头构建共识客户端。
注意:请勿在Vscode中运行执行客户端或共识客户端,容易造成崩溃,请使用专业的Shell终端。
复制代码库并验证binary文件
首先,复制BeaconKit代码库,创建binary文件。
这将创建一个位于./build/bin/beacond的本地binary文件。
接下来,运行以下代码,测试其是否正常工作:
配置共识客户端
以下将演示配置一个BeaconKit共识客户端。
第 1 步:初始化信标节点
首先,为配置创建一个临时文件夹目录。此步骤可省略,但为了后续便利,创建临时文件夹以保存所有配置和数据库数据。
接下来,使用所有标准数据初始化节点。
现在,应该能够在./build/bin/config文件夹中看到新创建的文件。
重要提示:运行验证器节点,务必安全备份priv_validator_key.json文件。该文件包含验证器的私钥,用于验证器对区块进行签名。如果丢失该文件,无人能提供帮助,你将永远无法恢复验证器及提取资产。
第 2 步:添加配置文件
首先,通过下载到config文件夹中的文件,恢复源文件:
仔细检查源文件,确保类似于以下形式:
接下来,恢复kzg可信设置:
然后,从BeaconKit testnet repo恢复app.toml和config.toml数据:
通过添加moniker name和peers以修改配置。
如果你的设备不是MacOS系统,请将下方代码中的-i ''替换为-i 。
第 3 步:生成JWT令牌
这将创建一个JSON Web令牌,以允许BeaconKit共识客户端与EVM执行客户端通信。
运行以下代码,创建JWT令牌:
这将创建一个jwt.hex文件,可以使用-o标签指定可选路径。如果不指定输出位置,则在beacond配置目录中生成,例如/root/.beacond/config/jwt.hex。
第 4 步:下载快照 (推荐操作)
强烈建议执行此步骤,以避免后续等待较长的同步时间。
从源资源库同步节点可能需要几小时,甚至几天,具体取决于带宽速度和peers数量。
参阅此处,获取快照链接列表:Berachain bArtio V2 Snapshots
运行以下代码,创建快照文件夹并下载快照文件:
下载完成,解压快照文件并验证数据:
快照文件应包含以下beacond和reth所需内容 (或相应EVM执行客户端所需内容):
快照文件夹和快照文件验证完成后,将快照数据移入相应的配置文件夹。
第 5 步:运行Beacon
配置好config.toml和app.toml文件后,运行以下代码,启动Beacon:
现在,你的BeaconKit共识客户端已配置完成,接下来配置执行客户端。
配置执行客户端
接下来,需要将执行客户端与beacond配对。
注意:所有基于以太坊的执行客户端均受支持!
然而,有些客户端可能需要更复杂的配置和微调,才能达到出块时间要求。因此,目前最推荐以下客户端:
下述示例中,将使用Reth作为执行客户端。
首先,新建一个终端会话,下载MacOS (基于苹果电脑芯片的操作系统) 的binary文件:
警告:本快速入门演示了如何在MacOS系统上运行节点,仅用于测试目的,不建议真实生产环境中在MacOS系统上运行节点。
运行以下代码,检查reth客户端是否正常工作:
第 1 步:配置源文件
首先,从BeaconKit代码库下载eth创世源文件。
仔细检查源文件,确保类似于以下形式:
第 2 步:启动Reth
运行以下代码,完成剩余reth文件配置:
第 3 步:运行Reth客户端
检查同步状态
新建一个终端会话,并运行以下代码:
测试本地RPC节点
现在,通过以下步骤来验证当前网络是否正常运行,需要执行一些RPC请求,并部署一个合约。
先决条件:在此之前,请确保节点同步已完成。
获取当前区块高度
最后更新于