Can someone tell me what this is?
steps taken
disabled selinux
disabled iptables
looks like poorly designed feature in getting started.
ping works, swarm manager actual IP is replaced by: <IP_swarm_manager>
root@localhost ~]# docker swarm join --token SWMTKN-1-0atdk2enx7ukfurb9l41db6n1hoikdurps9owtq3qlbfy79nni-00rtg13nz6e6jepfrh4pvw0mh <IP_swarm_manager>:2477
Error response from daemon: rpc error: code = Unavailable desc = all SubConns are in TransientFailure, latest connection error: connection error: desc = “transport: Error while dialing dial tcp <IP_swarm_manager>:2477: connect: no route to host”
PING <IP_swarm_manager>(<IP_swarm_manager>) 56(84) bytes of data.
64 bytes from <IP_swarm_manager>: icmp_seq=1 ttl=63 time=0.508 ms
64 bytes from <IP_swarm_manager>: icmp_seq=2 ttl=63 time=0.470 ms
Not sure of your setup, but let’s pretend it is something like this.
You have 2 dockers hosts; DC-N1 (master), and DC-N2 ( host you are trying to join to the swarm).
You have a swarm created and running from DC-N1 (with UCP).
You have SElinux and iptables disabled on both DC-N1 and DC-N2
From DC-N1 you can ping DC-N2
From DC-N2 you can ping DC-N1
I would start by checking the networking on both hosts;
docker network ls
On DC-N1 I’m expecting you to see something like;
NETWORK ID NAME DRIVER SCOPE
8f853519a021 bridge bridge local
990c94c73c6b docker_gwbridge bridge local
c39b48423128 host host local
xdkw3yc2olmg ingress overlay swarm
9693793fe90e none null local
On DC-N2 I’m expecting you to see something like;
NETWORK ID NAME DRIVER SCOPE
528b0bcc3383 bridge bridge local
2bd4f75faced host host local
cf67483166d8 none null local
In the above case, I believe (still learning docker myself) the problem is there is no “overlay” network on DC-N2. The hosts can communicate with each other over the bridge network (so ping works).
However, when you try and get DC-N2 to join the swarm, the absence of an overlay network means DC-N2 can’t find a route to the swarm IP; hence the “no route to host” message.