搭建BSC Fullnode
January 4th, 2022

要运行BSC全节点,首先需要有服务器,币安官方推荐服务器配置

  • VPS running recent versions of Mac OS X or Linux.
  • IMPORTANT 2T GB of free disk space, solid-state drive(SSD), gp3, 8k IOPS, 250MB/S throughput, read latency <1ms. (if start with snap/fast sync, it will need NVMe SSD)
  • 16 cores of CPU and 64 gigabytes of memory (RAM).
  • Suggest m5zn.3xlarge instance type on AWS, c2-standard-16 on Google cloud.
  • A broadband Internet connection with upload/download speeds of 5 megabyte per second

我是在aliyun买的VPS,配置是16核64G,系统盘40G,数据盘3000G ESSD云盘 PL1,带宽20M,VPS实例启动后,需要先挂载数据盘

fdisk -l

查看系统磁盘,可以看到有一块硬盘还未使用

fdisk /dev/vdb

进行硬盘分区,根据提示输入参数进行下一步

mkfs.ext3 /dev/vdb

格式化分区,接着vim打开/etc/fstab,在末尾添加下面一行,开机自动将/dev/vdb1挂载到/home目录

/dev/vdb1 /home                   ext4    defaults        0 2

重启系统后,运行df -h,可以看到已经挂载成功

接着开始进行部署环节,我采用Sync From Snapshot方式。目前BSC的geth是v1.1.7版本,先下载到本地

wget https://github.com/binance-chain/bsc/releases/download/v1.1.7/geth_linux

同时下载配置文件,并解压

wget https://github.com/binance-chain/bsc/releases/download/v1.1.7/mainnet.zip
unzip mainnet.zip

然后下载快照文件,这个快照文件有几百G,因此采用后台运行下载,下载速度根据网速而不同,我自己大概下载了22小时

nohup wget -O geth.tar.gz "https://tf-dex-prod-public-snapshot-site3.s3-accelerate.amazonaws.com/geth-20220103.tar.lz4?AWSAccessKeyId=AKIAYINE6SBQPUZDDRRO&Signature=fRDVa8tXBuGbw5NCe32V92LXuf4%3D&Expires=1643809389" &

下载完成后,解压快照,如果没有lz4,需要先安装lz4

lz4 -d geth.tar.lz4 | tar -xv

至此,geth和快照都已准备好,下一步开始运行节点,运行前需要给geth_linux执行权限

chmod +x geth_linux

运行geth_linux

 ./geth_linux --config ./config.toml --datadir ./server/data-seed --diffsync --cache 8000 --rpc.allow-unprotected-txs --txlookuplimit 0 --ws --ws.origins localhost

config.toml是配置文件,server/data-seed是下载下来的快照目录,同时打开了服务,方便连接。刚开始运行时,会继续同步新增加的块,需要一段时间后才会跟bsc完全同步。

可以调用RPC查看最新同步情况

 ./geth_linux --config ./config.toml --datadir ./server/data-seed --diffsync --cache 8000 --rpc.allow-unprotected-txs --txlookuplimit 0 --ws --ws.origins localhost

上述命令会返回本地最新块高度,跟bscscan上对比一下就知道同步到哪里了。

Subscribe to franx.eth
Receive the latest updates directly to your inbox.
Verification
This entry has been permanently stored onchain and signed by its creator.
More from franx.eth

Skeleton

Skeleton

Skeleton