节点快照(Snapshots)
本文档介绍如何使用快照快速启动 Gate Layer 节点(全节点与归档节点),涵盖适用场景、下载与校验、替换数据目录及常见注意事项。
1. 何时使用快照
快照适用于以下场景:
- 加速同步:直接使用官方提供的数据目录,可显著缩短初次同步时间。
- 归档需求:需要执行历史追溯或完整链上数据时,可使用归档快照。
- 灾备恢复:节点故障后快速恢复至某个时间点。
说明:Gate Layer 快照由
gatelayer-reth数据目录创建。
2. 快照目录与下载链接
主网(Gate Layer Mainnet)
| 节点类型 | 下载链接 |
|---|---|
| 全节点(Full) | SNAPSHOT=$(curl -s https://gatelayer-snapshot.gatenode.cc/api/v1/snapshots/latest/full) && wget "https://gatelayer-snapshot.s3.ap-northeast-1.amazonaws.com/mainnet/full/reth/${SNAPSHOT}" |
| 归档(Archive) | SNAPSHOT=$(curl -s https://gatelayer-snapshot.gatenode.cc/api/v1/snapshots/latest/archive) && wget "https://gatelayer-snapshot.s3.ap-northeast-1.amazonaws.com/mainnet/archive/reth/${SNAPSHOT}" |
快照文件采用以下命名规则:
chaindata-YYYY-MM-DD.tar.zst
每个快照都会随附一个 xxHash128 校验和文件:
chaindata-YYYY-MM-DD.tar.zst.xxh128
3. 使用教程
3.1 下载与校验
以下示例下载的是全节点快照。
若要下载归档节点快照,请将 API 和下载 URL 中的 full 替换为 archive。
3.1.1 获取最新Snapshot名称
SNAPSHOT=$(curl -s \
https://gatelayer-snapshot.gatenode.cc/api/v1/snapshots/latest/full)
echo "${SNAPSHOT}"
3.1.2 下载Snapshot文件
wget \
"https://gatelayer-snapshot.s3.ap-northeast-1.amazonaws.com/mainnet/full/reth/${SNAPSHOT}"
3.1.3 下载xxHash128校验文件
wget \
"https://gatelayer-snapshot.s3.ap-northeast-1.amazonaws.com/mainnet/full/reth/${SNAPSHOT}.xxh128"
3.1.4 查看官方校验值
cat ${SNAPSHOT}.xxh128
3.1.5 执行完整性校验(推荐)
xxh128sum ${SNAPSHOT}
注意: 将计算结果与 .xxh128 文件中的 hash 进行对比,必须完全一致。
3.2 解压
使用以下任一方法解压快照。
# 方法 1
tar -I zstd -xf "${SNAPSHOT}"
# 方法 2
zstd -dc "${SNAPSHOT}" | tar -xf -
解压完成后,当前目录应包含:
db/
static_files/
3.3 安装快照
将 RETH_DATADIR 设置为你的 Reth 节点所使用的数据目录:
RETH_DATADIR="/path/to/reth/datadir"
使用你平时管理 Reth 的方式,完全停止 Reth 进程。
将解压出的目录移动到 RETH_DATADIR 中:
mv ./db "${RETH_DATADIR}/"
mv ./static_files "${RETH_DATADIR}/"
最终的目录结构必须为:
${RETH_DATADIR}/
├── db/
├── static_files/
├── reth.toml
└── ...
请确保运行 Reth 的用户对这两个目录都具有读写权限。
使用你平时的启动方式重新启动 Reth,并监控其日志以确认成功启动。
RETH_DATADIR必须与你的 Reth 节点所配置的--datadir值一致。
4. 常见注意事项
- 校验校验和:在解压或安装快照之前进行校验。
- 两个目录一并恢复:
db与static_files必须来自同一个快照。 - 先停止 Reth:切勿在 Reth 运行时替换数据库。
- 检查目录权限:Reth 用户必须能够读写恢复后的数据。
- 保护节点身份私密:不要分发节点密钥、发现(discovery)密钥或其他节点专属的身份文件。
- 使用正确的节点类型:全节点快照与归档节点快照包含的历史数据量不同。
- 谨慎规划磁盘容量:归档快照需要大得多的下载与存储空间。
- 使用兼容的状态方案(state scheme):快照必须与 Gate Layer 网络所使用的状态配置相匹配。
如需完整的节点部署说明,请参阅 Gate Layer Development 下的 Run L2 RPC Node。