<p>I'm trying to setup a minimum viable kubernetes cluster using kubeadm.
On invoking <code>kubeadm init</code> command i'm getting following warning. </p>

<blockquote>
  <p>W0218 23:13:59.411414   25332 validation.go:28] Cannot validate
  kube-proxy config - no validator is available  </p>
  
  <p>W0218 23:13:59.411496   25332 validation.go:28] Cannot validate
  kubelet config - no validator is available</p>
</blockquote>

<p>What this exactly this warning means? Where can i find these validators? </p>

<p>I've gone through couple of links and everyone suggesting to ignore it. But i would really like to know why this warning coming up</p>

<p>It's a <a href="https://github.com/kubernetes/kubeadm/issues/1913" rel="nofollow noreferrer">known issue</a></p>

<blockquote>
  <p>Define policy around klog.Warning usage in kubeadm #1913</p>
</blockquote>

<p>And there is a workaround:</p>

<h1>Try <code>kubeadm reset</code></h1>

<p>Manual: <a href="https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-reset/" rel="nofollow noreferrer">kubeadm reset - Kubernetes</a></p>

<p><code>kubeadm reset</code></p>

<p>pls <a href="https://github.com/kubernetes/kubeadm/issues/1913#issuecomment-587588108" rel="nofollow noreferrer">note</a>: </p>

<blockquote>
  <p>The reset process does not clean CNI configuration. To do so, you must remove /etc/cni/net.d</p>
  
  <p>The reset process does not reset or clean up iptables rules or IPVS tables.
  If you wish to reset iptables, you must do so manually by using the "iptables" command.</p>
  
  <p>If your cluster was setup to utilize IPVS, run ipvsadm --clear (or similar)
  to reset your system's IPVS tables.</p>
</blockquote>

<h1>If it doesn't help, you may hide warnings from console out</h1>

<p><a href="https://github.com/polarapfel" rel="nofollow noreferrer">polarapfel</a> recommends to <a href="https://github.com/kubernetes/kubeadm/issues/1913#issuecomment-572819116" rel="nofollow noreferrer">hide warnings</a> :)</p>

<blockquote>
  <p>Here's a quick fix to folks being thrown off by this behaviour in their automation scripts: redirect stderr to /dev/null (or elsewhere).</p>
  
  <p>For example, if you wanted the join command, you'd do this</p>
</blockquote>

<p><code>kubeadm token create --print-join-command 2&gt;/dev/null</code></p>
