kryvora-node
Kryvora Network 节点的官方客户端守护进程。
概述
Kryvora 是一个去中心化物理基础设施网络,专为分布式验证与工作节点协调而设计。kryvora-node 守护进程将工作硬件连接到 Kryvora Hub,执行遥测探测、验证对等节点状态,并报告可用性证明。
系统拓扑
+-------------------------------------------------------------+
| Kryvora Node Host |
| |
| +--------------------+ +--------------------+ |
| | Worker Engine | | Telemetry Daemon | |
| | (Task Execution) |<----------->| (Port 4177) | |
| +---------+----------+ IPC/Bus +---------+----------+ |
| | | |
| | Unix Socket (/var/run/node.sock) | HTTP API |
| v v |
| +-------------------------------------------------------+ |
| | Kryvora Storage Store | |
| | (State, Peer Nonces, Telemetry) | |
| +-------------------------------------------------------+ |
+------------------------------+------------------------------+
|
Mutual TLS | Heartbeat (30s)
gRPC / HTTP | Verification Probes
v
+-------------------------------------------------------------+
| Kryvora Coordination Hub |
| (Port 4188) |
+-------------------------------------------------------------+
节点许可与创世密钥要求
运营 Kryvora 验证节点需要有效的 Genesis Node Key(创世节点密钥)。 Genesis Node Key 是部署在 Arbitrum One 上的链上灵魂绑定(soulbound)验证凭证:
- 合约:
0xBCf2cD12D1D37578fA7C69805fE77788e866BE1a - 网络:Arbitrum One(Chain ID:
42161) - 入口:https://node.kryvora.network
启动守护进程之前,请先在 node.kryvora.network 连接钱包获取节点引导令牌(bootstrap token)。未持有有效引导令牌的未认证节点将被协调中心(hub.kryvora.network:4188)拒绝。
系统要求
运行标准验证工作节点的硬件规格:
- CPU:至少 2 核(x86_64 或 arm64)
- 内存:至少 2 GB RAM,建议 4 GB
- 存储:20 GB 可用 SSD 存储空间
- 网络:稳定的宽带连接,需开放入站端口 4177 以供本地遥测探测
快速开始
方式一:自动化脚本(Linux systemd)
运行安装脚本以获取二进制文件并注册 systemd 服务:
curl -sSL https://raw.githubusercontent.com/kryvora-network/kryvora-node/main/install.sh | bash
脚本会提示输入你的 Genesis Node Key 引导令牌,并注册 systemd 服务。
检查服务状态:
sudo systemctl status kryvora-node
方式二:Docker Compose
- 克隆仓库:
git clone https://github.com/kryvora-network/kryvora-node.git
cd kryvora-node
- 复制配置模板并设置你的令牌:
cp config.example.yaml config.yaml
# Edit config.yaml and insert your bootstrap_token under auth:
# Or set KRYVORA_BOOTSTRAP_TOKEN in your environment
- 启动节点容器:
KRYVORA_BOOTSTRAP_TOKEN="your_token_here" docker compose up -d
- 查看日志:
docker compose logs -f kryvora-node
方式三:从源码构建
要求:Go 1.22 或更高版本。
git clone https://github.com/kryvora-network/kryvora-node.git
cd kryvora-node
make build
./bin/kryvora-node --config config.yaml --token "your_token_here"
配置
配置从 config.yaml 加载,也可通过环境变量设置。
| 键 | 类型 | 默认值 | 描述 |
|---|---|---|---|
node.id | string | 自动生成 | 工作节点的唯一标识符 |
node.listen_addr | string | 0.0.0.0:4177 | 遥测与指标的本地监听地址 |
node.data_dir | string | /var/lib/kryvora | 本地状态与任务数据库目录 |
auth.bootstrap_token | string | "" | 必填:Genesis Node Key 激活令牌 |
hub.endpoint | string | https://hub.kryvora.network:4188 | 上游协调中心地址 |
hub.heartbeat_interval | int | 30 | 中心心跳间隔(秒) |
telemetry.enabled | bool | true | 在 /metrics 上暴露 Prometheus 指标 |
本地端点
运行时,守护进程会在端口 4177 上暴露以下端点:
GET /health:以 JSON 响应指示守护进程生命周期状态GET /status:对等节点连接情况、当前区块高度与同步状态GET /metrics:兼容 Prometheus 的遥测计数器
查询示例:
curl -s http://127.0.0.1:4177/status
安全
如发现漏洞,请直接通过 security@kryvora.network 报告,而非提交公开 issue。
许可证
Apache License 2.0。详情参见 LICENSE。