Mina Docs|区块生产者 Sidecar
为了维持各种赠款和基金会委托项目的资格,您必须使用守护进程运行一个 Sidecar 来报告节点正常运行时间。
如果一个授权或特定的程序要求您保持节点在线,您必须运行一个小的 Sidecar 程序,它将报告守护进程的正常运行时间。本教程将带领您完成 Sidecar 程序的安装、配置和运行过程。
安装
Sidecar 是一个可以单独安装在 Debian/Ubuntu 上的包,也可以与 Docker 解决方案一起运行。
Debian / Ubuntu
sudo apt-get install -y mina-bp-stats-sidecar=1.1.6-386c5ac
这将安装以下文件:
/usr/local/bin/mina-bp-stats-sidecar (mina Sidecar 程序)
/etc/mina-sidecar.json (mina Sidecar 的配置文件)
/etc/systemd/system/mina-bp-stats-sidecar.service (systemd 配置将其作为服务运行)
我们将需要用正确的参数更新配置文件。因此,请使用您喜欢的编辑器来替换 /etc/mina-sidecar.json 中如下内容:
{
"uploadURL": "https://us-central1-mina-mainnet-303900.cloudfunctions.net/block-producer-stats-ingest/?token=72941420a9595e1f4006e2f3565881b5",
"nodeURL": "http://127.0.0.1:3095"
}
Docker
如果您正在使用 Docker,您可以拉取我们将在下一节中运行的最新映像。
docker pull minaprotocol/mina-bp-stats-sidecar:latest
接下来,我们将需要设置配置文件,在本教程中,我们将假设您使用的是 Linux 系统。
我们需要创建一个带有正确参数的配置文件。因此,请替换 ~/mina-sidecar-config.json 中如下内容:
{
"uploadURL": "https://us-central1-mina-mainnet-303900.cloudfunctions.net/block-producer-stats-ingest/?token=72941420a9595e1f4006e2f3565881b5",
"nodeURL": "http://mina:3095"
}
我们将在下一步中把这个文件传递到 Docker 容器中。
使用
这个 Sidecar 将需要与正在运行的守护进程进行交互,所以您首先需要启动守护进程。您将需要使用 --limited-graphql-port 3095 参数去运行守护进程,以便 Sidecar 能够与守护进程交流。更多的说明可以在连接页面上找到。
Debian / Ubuntu
首先,确保守护进程运行在同一台机器上,参数是 --limited-graphql-port 3095 。
(可选) 在重启时启用 Sidecar 服务,您可以使用:
sudo systemctl enable mina-bp-stats-sidecar
然后手动启动 Sidecar 服务,使用以下命令:
sudo service mina-bp-stats-sidecar start
您可以检查它是否正在运行,并使用 service mina-bp-stats-sidecar status 查看最新的日志。
如果您想从 Sidecar 服务中获取日志,您可以使用 journalctl :
journalctl -f -u mina-bp-stats-sidecar.service
Docker
首先,您需要为守护进程和 Sidecar 容器创建一个网络:
docker network create mina-network
接下来,您需要使用传递给 docker 的 --network mina-network 区开启守护进程以及将的一些新标记 --open-limited-graphql-port --limited-graphql-port 3095 传递给守护进程。
使用以下命令,启动 docker 容器:
docker run \
--name mina-sidecar \
--network mina-network \
--restart=always -d \
-v $(pwd)/mina-sidecar-config.json:/etc/mina-sidecar.json \
minaprotocol/mina-bp-stats-sidecar:latest
可以使用 docker logs 命令查看日志:
docker logs -f mina-sidecar
故障排除
如果您在运行 sidecar 的时候得到了 400:
INFO:root:Fetching block 2136...
INFO:root:Got block data
ERROR:root:HTTP Error 400: Bad Request
-- TRACEBACK --
ERROR:root:Sleeping for 30s and trying again
这很可能意味着您将数据发送到了接收管道,而没有在您的 Mina 节点上配置任何区块生产者密钥-因为您的 BP 密钥是您的身份,所以我们不能接受节点数据,因为我们不知道谁提交了它!
全球最轻量区块链 人人皆可参与
公众号|Mina Protocol Official
微 博|Mina_Protocol