V2 独立版愿景

Agent 部署

HeteroFlow 是本站的异构算力与大模型调度产品。Agent 部署。Agent 开源版部署:简明接入 HeteroFlow V2 Agent 部署在每台 GPU 计算节点上,负责 GPU 检测、任务执行、指标采集和模型扫描。 一键部署(推荐) 单向网络部署(NAT 节点接入) Agent 采用纯出站轮询架构,不监听任何端口: - NAT / 内网…

Agent 开源版部署:简明接入

HeteroFlow V2 Agent 部署在每台 GPU 计算节点上,负责 GPU 检测、任务执行、指标采集和模型扫描。

一键部署(推荐)

单向网络部署(NAT 节点接入)

Agent 采用纯出站轮询架构,不监听任何端口:

  • NAT / 内网 GPU 节点无需公网 IP、无需入站端口映射即可接入平台
  • 适用场景:办公网、实验室 NAT 环境的 GPU 机器零改造接入
  • 配合 frp 等反向隧道方案时,推理网关流量可达性与 Agent 接入相互独立

端口需要:8000,Agent 的 9100 和 8000-8099 不要对公网开放——只让 Server 访问 准备在AGENT 部署多少个模型就 开多少个8000-8099端口 理论接受99个不同模型

Linux

# 自动检测 GPU 类型并部署
curl -fsSL http://server:5173/deploy-agent-all-in-one.sh | bash

# 或指定 Server 地址
export EXTENDER_URL="http://your-server:3333"
bash auto-deploy-agent.sh

Windows

powershell -ExecutionPolicy Bypass -File auto-deploy-agent.ps1

macOS

bash auto-deploy-agent-macos.sh

一键部署检测流程

1. 操作系统检测 → Linux/Windows/macOS
2. CPU 架构检测 → x86_64 / arm64
3. GPU 品牌检测(按优先级):
   ├── 摩尔线程 MUSA (mthreads-gmi)
   ├── 海光 DCU (hy-smi)
   ├── 寒武纪 (cnmon)
   ├── 壁仞 BR (birensmi)
   ├── 华为昇腾 (npu-smi)
   ├── 百度昆仑 (xpu_smi)
   ├── 天数智芯 (ixsmi)
   ├── NVIDIA (nvidia-smi)
   ├── 沐曦 MetaX (corex-smi)
   └── 燧原 S60 (enfma-smi)
4. 下载对应版本 Agent
5. 生成配置文件 → ~/.heteroflow/agent-config.json
6. 安装为系统服务 → systemd / Windows Service / LaunchAgent
7. 启动 Agent

手动部署

1. 下载 Agent 二进制

从发布页面下载对应 GPU 类型的 Agent:

# 通用版
wget http://server:8080/heteroflow-agent-linux-amd64

# NVIDIA 专用版
wget http://server:8080/heteroflow-agent-nvidia-linux-amd64

2. 创建配置文件

mkdir -p ~/.heteroflow
cat > ~/.heteroflow/agent-config.json <<EOF
{
  "server_url": "http://your-server:3333",
  "node_id": "gpu-node-1",
  "heartbeat_interval": 10,
  "task_check_interval": 10,
  "gpu_type": "nvidia",
  "docker_mode": "native",
  "task_exec_mode": "docker",
  "agent_secret": "your-agent-secret",
  "model_cache_dir": "/data/heteroflow/model-cache",
  "model_scan_dirs": ["/data", "/root/models", "/workspace"],
  "allowed_volume_prefixes": ["/data/", "/home/", "/opt/", "/workspace/"],
  "denied_volume_prefixes": ["/etc", "/proc", "/sys", "/dev"]
}
EOF

3. 配置说明

参数说明默认值
server_urlServer 地址必填
node_id节点标识(留空使用 hostname)hostname
heartbeat_interval心跳间隔(秒)10
task_check_interval任务检查间隔(秒)10
gpu_typeGPU 类型(留空自动检测)自动
docker_modeDocker 模式native
task_exec_mode任务执行模式docker
agent_secretAgent API 密钥必填
model_cache_dir模型缓存目录/data/heteroflow/model-cache
model_scan_dirs模型扫描目录[缓存目录]

4. 启动 Agent

chmod +x heteroflow-agent
./heteroflow-agent

5. 安装为系统服务

sudo cat > /etc/systemd/system/heteroflow-agent.service <<EOF
[Unit]
Description=HeteroFlow Agent
After=network.target docker.service

[Service]
Type=simple
WorkingDirectory=/opt/heteroflow-agent
ExecStart=/opt/heteroflow-agent/heteroflow-agent
Restart=always
RestartSec=5

[Install]
WantedBy=multi-user.target
EOF

sudo systemctl enable heteroflow-agent
sudo systemctl start heteroflow-agent

环境变量

变量说明
HETEROFLOW_SERVER_URLServer 地址
HETEROFLOW_API_KEYAgent API 密钥
HETEROFLOW_NODE_ID节点 ID
HETEROFLOW_MODEL_CACHE_DIR模型缓存目录
HETEROFLOW_MODEL_SCAN_DIRS扫描目录(逗号分隔)
HETEROFLOW_ALLOWED_VOLUME_PREFIXES允许挂载的路径前缀
HETEROFLOW_DENIED_VOLUME_PREFIXES禁止挂载的路径前缀

验证 Agent 运行

# 查看服务状态
systemctl status heteroflow-agent

# 查看日志
journalctl -u heteroflow-agent --since "5 minutes ago"

# 在 Server 端验证节点注册
curl http://server:3333/api/v1/nodes

Docker 要求

Agent 需要 Docker 来执行任务容器:

# 安装 Docker
curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker $USER

# 验证
docker ps

# 安装 NVIDIA Container Toolkit(NVIDIA GPU)
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
sudo apt-get install -y nvidia-container-toolkit
sudo systemctl restart docker