#Adding additional nodes

7 messages · Page 1 of 1 (latest)

jade cove
#

Has anyone been able to get an additional node to properly add? I'm trying to add a 2nd system that has a GPU vs my gateway (running on a VM) to do some additional tasks. I'm not planning on running local models for much but would like to be able to run tasks against that system to utilize the GPU. The steps that I went through are:

  1. Initial gateway fully setup 2026.4.14
  2. Install the latest package on the 2nd node
  3. ran the install node wizard which failed due to trying to check for a systemd script that doesn't exist
openclaw node install --display-name NAME --host HOST --port 18789
Node install failed: Error: systemctl enable failed: Failed to enable unit: Unit file openclaw-gateway.service does not exist

This is the error when it instantly fails node host gateway connect failed: pairing required gateway connect failed: GatewayClientRequestError: pairing required node host gateway closed (1008): pairing requiredI was able to get past this by manually enabling and starting the service but i didn't generate any pairing requests
4) manually ran the node run command with the host and port, this starts but fails saying that connecting to wss over plain text is insecure and to export OPENCLAW_ALLOW_INSECURE_PRIVATE_WS=1 to get past this. Since i'm testing all local i exported the variable.
Now its failing immediately saying that pairing is required but following the logs i don't see anything in the logs saying it even attempted.

openclaw node run --host ws://HOST --port 18789

I tried both ws:// and wss:// with the same results.
Other things i tried, added both the ws and wss entries to allowed orgins and trusted proxies, changed the binding to lan vs loopback (standard control ui exposure is via nginx with tls). I manually created the systemd service from different posts online vs using what gets generated but nothing seems to work.

mellow mauveBOT
#

I'll check the current docs/source for node setup and pairing, because this smells like a version/doc mismatch plus maybe a node install bug in 2026.4.x.

#

Yeah, a few things jump out.

  1. openclaw node install failing with openclaw-gateway.service looks like a real bug, not you.
    Current docs/source say the node service should be openclaw-node.service, so that error matches a bad systemd activation path pretty closely.

  2. For node run, --host should be just the host/IP, not ws://... or wss://....
    TLS is a separate flag.

    So use one of these shapes:

    Direct private LAN:

    export OPENCLAW_GATEWAY_TOKEN="..."
    export OPENCLAW_ALLOW_INSECURE_PRIVATE_WS=1   # only for trusted private ws://
    openclaw node run --host HOST --port 18789 --display-name "GPU Node"
    
#

Via TLS/reverse proxy:

export OPENCLAW_GATEWAY_TOKEN="..."
openclaw node run --host HOST --port 443 --tls --display-name "GPU Node"
  1. Node pairing is via devices, not pairing.
    On the gateway host, while the node is trying to connect, run:

    openclaw devices list
    openclaw devices approve <requestId>
    openclaw nodes status
    
  2. allowedOrigins / trusted proxies are probably a red herring here.
    Those are mainly Control UI / proxy auth concerns, not the node pairing flow itself.

#

So the exact flow I’d try is:

  • On both machines, paste:
    openclaw --version
    
  • On the node, run openclaw node run with bare host plus --tls if needed.
  • On the gateway, immediately run:
    openclaw devices list
    
  • Approve the pending node request.
  • Then check:
    openclaw nodes status
    
#

If devices list shows nothing at all, then the node is not reaching the gateway you think it is.

Docs:

If you want, paste these 3 outputs and I can narrow it down fast:

openclaw --version
openclaw devices list
openclaw node run --host HOST --port ... [--tls]

If you also want “has anyone done this in practice” answers, I’d ask in #users-helping-users too, since that’s better for real-world setups.

jade cove
#

I tried to connect to it via the reverse proxy as suggested above and now it seems to be connecting. I was able to accept the pairing request, will test if its working next