<p>I was wondering if someone could give me a brief overview of the differences/ advantages between all of the different Kubernetes network overlays. The getting started guide (<a href="http://kubernetes.io/docs/getting-started-guides/scratch/#network" rel="noreferrer">http://kubernetes.io/docs/getting-started-guides/scratch/#network</a>) mentions the following:</p>

<ul>
<li>Flannel</li>
<li>Calico</li>
<li>Weave</li>
<li>Romana</li>
<li>Open vSwitch (OVS)</li>
</ul>

<p>But doesn't really explain what the differences between them are or what the advantages and disadvantages each one has. I was wondering if someone could give me an idea of which one of these solutions I should be using for a bare metal CentOS 7 cluster.</p>

<p>Thanks!</p>

<p><a href="https://docs.google.com/spreadsheets/d/1polIS2pvjOxCZ7hpXbra68CluwOZybsP1IYfr-HrAXc" rel="nofollow noreferrer">This comparison matrix</a> was shared several times on Kubernetes' Slack and may be useful.</p>

<p>However, beware potentially out-of-date information, keep in mind the "devil is in the details" so the reality may not be as simple as it would seem according to this document. All available solutions will have pros and cons, but will also be more suitable for some use-cases than others, so as always, it is a question of trade-offs and YMMV.</p>
