I’m trying to replicate the edge node architecture depicted in the Nomad 1.3 blog post using Nomad 1.2.6.
I’m able to successfully join my client node in region A to the server node in region B. I can see all the servers by running nomad server members
on the client node. However, when I try to run nomad node status
, I get the following error:
Error querying node status: Unexpected response code: 500 (rpc error: No path to region)
The client and servers can access port 4647 on each other.
The server nodes have Consul installed on them, but the client nodes do not, since I can’t run Consul servers in the same datacenter.
Here’s the config for the client node:
region = "region-a"
datacenter = "region-a1"
bind_addr = "0.0.0.0"
advertise {
http = "MY_PUBLIC_IP"
rpc = "MY_PUBLIC_IP"
serf = "MY_PUBLIC_IP"
}
client {
enabled = true
node_class = "job"
server_join {
retry_join = ["provider=linode region=us-southeast tag_name=XXXX api_token=XXXX address_type=public_v4"]
}
meta {
# See https://github.com/hashicorp/nomad/issues/9887
"connect.sidecar_image" = "envoyproxy/envoy:v1.18.3"
}
}
Here’s the config for the server node:
region = "region-b"
datacenter = "region-b1"
bind_addr = "0.0.0.0"
advertise {
http = "MY_PUBLIC_IP"
rpc = "MY_PUBLIC_IP"
serf = "MY_PUBLIC_IP"
}
server {
enabled = true
bootstrap_expect = 3
}
The client is repeating the following logs:
[ERROR] client.rpc: error performing RPC to server: error="rpc error: No path to region" rpc=Node.GetClientAllocs server=XXXX:4647
[ERROR] client.rpc: error performing RPC to server which is not safe to automatically retry: error="rpc error: No path to region" rpc=Node.GetClientAllocs server=XXXX:4647
[ERROR] client: error querying node allocations: error="rpc error: No path to region"
Am I missing something? Is this only possible in Nomad 1.3?