目录
一、服务器配置二、系统环境三、节点安装部署四、启动ETH信标客户端五、启动ETH执行客户端六、节点状态监听七、注意事项
很久没写博客了,最近发生了好多好多事,好像做了一个梦… 又回到了熟悉的生活方式,希望还是从前的我,不忘初心、励志前行。
[全节点建议配置]
系统:Linux
CPU:16核
内存:128GB内存
带宽:1G以上
硬盘:大于4T 固态SSD可用空间数据盘
本次搭建使用配置系统:ubuntu22.04 CPU:32核心64线程内存:128GB内存带宽:1G上下对等硬盘:ssd4T
回到顶部
一、服务器配置
系统:Linux CPU:16核 内存:128 GB 内存 带宽:1G以上 硬盘:大于4T固态SSD可用空间数据盘
本次搭建使用配置
系统:ubuntu22.04 CPU:32核心64线程 内存:128GB 内存 带宽:1G上下对等 硬盘:ssd 4T 区域:USA
eth github地址:https://github.com/ethereum/go-ethereum
搭建eth全节点需要执行客户端和信标节点客户端都保持同步。本次搭建执行客户端使用geth,信标节点客户端使用Prysm
回到顶部
二、系统环境
更新ubuntu软件包
apt-get upgrade
安装git
apt install git
安装Golang (安装 Go 主要是为了去编译 go-ethereum 源码)
apt install golang
此命令如果安装不上,请自行度娘手动编译安装最新版本Golang,需要 Go(1.19 或更高版本)
使用go version确认安装正确
go version
如下显示则安装正确。
?
1 2 |
|
安装linux下的窗口管理器工具screen
apt install screen
回到顶部
三、节点安装部署
安装ETH版本的prysm
cd / #进入根目录 mkdir eth #创建eth文件夹 cd eth mkdir consensus mkdir execution cd consensus mkdir prysm && cd prysm curl https://raw.githubusercontent.com/prysmaticlabs/prysm/master/prysm.sh --output prysm.sh && chmod +x prysm.sh ./prysm.sh beacon-chain generate-auth-secret
安装ETH版本的geth
cd /eth #进入eth目录 git clone https://github.com/ethereum/go-ethereum.git make geth cd go-ethereum/build/bin
回到顶部
四、启动ETH信标客户端
screen -S prysm #创建prysm启动窗口 ./prysm.sh beacon-chain --execution-endpoint=http://localhost:8551 --jwt-secret=/eth/consensus/prysm/jwt.hex
然后按ctrl + shift + a + d 回到主会话即可
回到顶部
五、启动ETH执行客户端
screen -S eth #创建eth启动窗口 ./geth --cache 10240 --datadir ./node --ws --ws.port 8546 --ws.addr 0.0.0.0 --ws.origins '*' --authrpc.addr localhost --authrpc.port 8551 --authrpc.vhosts localhost --maxpeers=300 --authrpc.jwtsecret /eth/consensus/prysm/jwt.hex --state.scheme=path
参数说明: –datadir:指定ETH节点数据库和密钥存储库的数据目录(默认即可) –cache:设置最大分配给内部缓存的内存,默认:1024(设置越大,每次同步的数据越多,消耗的内存也越大) –rpc.allow-unprotected-txs:允许通过RPC提交不受保护的(非 EIP155 签名)交易 –txlookuplimit 0 : 禁用删除事务索引
回到顶部
六、节点状态监听
geth attach http://localhost:8545 #端口如果修改配置文件了,就填写配置文件的端口即可 > eth.syncing #查看当前区块情况,结果为false表示已同步最新区块
说明:
currentBlock: 14290861, #当前同步到区块高度
highestBlock: 14297354, #主网当前高度
knownStates:297473485,
pulledStates: 297473485,
startingBlock: 14270385
> net.peerCount #查看当前连接节点数量 > eth.blockNumber #当前同步到区块高度
停止执行客户端节点
打开eth窗口:
screen -x eth
然后按ctrl+c即可
停止信标客户端节点
打开prysm窗口:
screen -x prysm
然后按ctrl+c即可
回到顶部
七、注意事项
eth链主网浏览器浏览器:https://cn.etherscan.com/ 本次教程服务器配置同步到最高区块用了大概72小时左右就追到了最高区块。作者使用过很多服务器同步eth,同步过程中常见错误,如: 1 geth同步到某个区块卡着不在同步 2 prysm一直同步等待 最难受的就是同步等待,有的等待同步一周甚至更久... 一般是带宽或者硬件配置不够
如果您觉得阅读本文对您有帮助,请点一下“推荐”按钮,您的“推荐”将是我最大的写作动力!欢迎各位转载,但是未经作者本人同意,转载文章之后必须在文章页面明显位置给出作者和原文连接,否则保留追究法律责任的权利。