<p>I need to upgrade old kubernetes cluster.</p>

<p>Current kubernetes cluster consists of nodes with <code>flannel-0.5.3</code>(CentOS Atomic Host 7.20160707).</p>

<p>What will happen if I add nodes with different flannel version, for example <code>flannel-0.7.1</code>(CentOS Atomic Host 7.1803).</p>

<p>So, that during transition period some node will be running with <code>0.5.3</code> version of flannel and new ones will use <code>0.7.1</code>.
I need to perform that online without any downtime.</p>

<p>In discussion, let's skip any details except flannel version.
The only open question is: if flannel backward compatible?</p>

emcpow2
<p>There is no information on the official <code>Flannel</code> <a href="https://github.com/coreos/flannel" rel="nofollow noreferrer">Project</a> website or <a href="https://github.com/coreos/flannel/releases" rel="nofollow noreferrer">Releases</a> document about backward compatibility between different versions. However, for the versions <code>v0.9.0-rc1</code> and <code>v0.9.0</code> they announced full compatibility with previous builds allowing easy upgrade.</p>

<blockquote>
  <p>Fully compatible with previous versions of flannel to allow for easy
  upgrade</p>
</blockquote>

<p>Therefore, a discrepancy between various <code>Flannel</code> releases doesn't guarantee stability and fewer service issues in Kubernetes cluster. </p>

<p>It is strongly recommended to keep Kubernetes components within the same version on each Node, as the latest builds fixed common bugs and brought some new features, which might not be supported by old versions.</p>
