<p>Hello I am facing a kubeadm join problem on a remote server.</p>

<p>I want to create a multi-server, multi-node Kubernetes Cluster.
I created a vagrantfile to create a master node and N workers.
It works on a single server.</p>

<p>The master VM is a bridge Vm, to make it accessible to the other available Vms on the network.</p>

<p>I choose Calico as a network provider.</p>

<p>For the Master node this's what I've done:
Using ansible :</p>

<ol>
<li><p>Initialize Kubeadm.</p></li>
<li><p>Installing a network provider.</p></li>
<li><p>Create the join command.</p></li>
</ol>

<p>For Worker node:</p>

<ol start="4">
<li>I execute the join command to join the running master.</li>
</ol>

<p>I created successfully the cluster on one single hardware server.
I am trying to create regular worker nodes on another server on the same LAN, I ping to the master successfully.  </p>

<p>To join the Master node using the generated command.</p>

<pre><code>kubeadm join 192.168.2.50:6443 --token ecqb8f.jffj0hzau45b4ro2   
--ignore-preflight-errors all  
--discovery-token-ca-cert-hash 
sha256:94a0144fe419cfb0cb70b868cd43pbd7a7bf45432b3e586713b995b111bf134b
</code></pre>

<p>But it showed this error:</p>

<pre><code>error execution phase preflight: couldn't validate the identity of the API Server: 
could not find a JWS signature in the cluster-info ConfigMap for token ID "ecqb8f"
</code></pre>

<p>I am asking if there is any specific network configuration to join the remote master node.</p>

<p>It seems token is expired or removed. You can create token manually by running:</p>

<pre><code>kubeadm token create --print-join-command
</code></pre>

<p>Use the output as join command.</p>
