Hoc est update
Imprimis ago Cilium turmas: latinas me adiuverunt et scripta metri vigilantia reprehendunt et corrigunt.
Quod mutatum est cum November MMXVIII
Ecce quid mutatum est quia tunc (si es interested):
Flannel velocissimo et simplicissimo CNI interfacies manet, sed tamen rationes retiaculas et encryptiones non sustinet.
Romana non diutius sustinetur, sic eam a Probatio removimus.
WeaveNet nunc sustinet retiaculis agendis pro Ingress et Egress! Sed fructibus decrevit.
In Calico, adhuc manually debes configurare magnitudinem maximam (MTU) ad optimam observantiam. Calico duas optiones praebet pro CNI insertis, ut sine repositorio separato ETCD repositorium facere possis:
- actorarium in Kubernetes API ut data copia (botrus size <50 nodes);
- accommodare statum in Kubernetes API ut data copia cum Typha procuratorio ad levandum onus in K8S API (botrus size > 50 nodi).
Calico nuntiatum firmamentum
Cilium nunc encryption sustinet! Cilium encryptionem cum cuniculis IPSec praebet et jocus praebet ad ornatum WeaveNet encryptatum. Sed WeaveNet velocior est quam Cilium cum encryption para.
Facilius nunc est Cilium ad explicandas gratias operante aedificato in ETCD.
Turma Cilium conatus est aliquod pondus de CNI stringere et memoriam consumptionis et CPU sumptibus minuere, sed competitores eius adhuc leviores sunt.
Probatio contextu
Probatio currit in tribus servientibus Supermicro non-virtualibus cum 10 Gb Supermicro switch. Servientes directe ad transitum per funem passivum DAC SFP+ connectuntur et in eodem VLAN cum jumbo tabulae configurantur (MTU 9000).
Kubernetes 1.14.0 in Ubuntu 18.04 LTS inauguravit cum Docker 18.09.2 (defalta Docker versionis in hac emissione).
Ad reproducibilitatem emendandam constituimus dominum in prima node semper configurare, partem servo probandi in secunda servo, partem clientis in tertia collocare. Ad hoc utimur NodeSelector in instruere in Kubernetes.
Probatio eventus sequenti ordine describemus:
Discriptis CNI ad velit fermentum
Hoc Probatio solum CNI ex indice in sectione est
CNIS sequenti comparabimus:
- Calico v3.6
- Canal v3.6 (per se Flannel pro networking + Calico ut firewall)
- Cilium 1.4.2
- Flannel 0.11.0
- Kube-iter 0.2.5
- WeaveNet 2.5.1
occasum
Quo facilius CNI instituatur, melior prima impressio erit. Omnes CNIS ex Probatio facillime sunt ad instituendum (cum uno vel duobus mandatis).
Ut diximus, ministri et switch configurantur cum tabulis jumbo parandis (MTU ad 9000 constituimus). Laeti essemus si CNI automatice MTU in conformatione adaptatorum fundata decrevisset. Sed hoc solum Cilium et Flannel administrarunt. Reliquae CNIs petitiones in GitHub habent ut inventionem automatice MTU addant, sed manually figurabimus mutando ConfigMap pro Calico, Canal et Kube-iter, seu ambitus variabilis pro WeaveNet transiens.
Quid est quaestio falsa MTU? Hoc schemate ostendit differentiam inter WeaveNet cum default MTU et jumbo tabulae enabled;
Vidimus quam momenti MTU ad effectum perducatur, nunc videamus quomodo noster CNIs sponte eam determinet;
Aliquam lacinia purus ostendit te opus esse configurare MTU pro Calico, Canal, Kube-iter et WeaveNet ad optimales effectus. Cilium et Flannel sine ullis fundis ipsi MTU recte determinare poterant.
salutem
Securitatem CNI in duobus aspectibus comparabimus: facultatem ad encrypt notitias transmissas et ad exsequendum rationes retis Kubernetes (ex probatis realibus, non documentis fundatur).
CNIS duo tantum encrypt data: Cilium et WeaveNet. Encryption WeaveNet enabled ponendo encryption password ut CNI environment variabilis. IN'
Quod ad exsequendam retis consilium, successerunt Calico, Canal, Cilium et WeaveNet, in qua configurare potes Ingress et Egress regulas. For Kube-iter sunt praecepta tantum Ingress, et flannel Nulla at lobortis nulla.
Hic sunt eventus altiore:
Salus euismod Probatio Results
productivity
Hoc Probatio mediocris perput supra saltem tres cuiusque experimenti currit. Probamus effectum TCP et UDP (iperf3 utens), applicationes reales sicut HTTP (cum Nginx et Crispum) vel FTP (cum vsftpd et Crispum) ac demum applicationes peractas utendo SCP-substructio encryptione (cliente et servo OpenSSH utente).
Pro omnibus probationibus, probatio metalli nuda (linea viridis) ad CNI perficiendum cum retis indigenis comparandis praestiti sumus. Simili magnitudine hic utimur, sed colore;
- Yellow = valde bona
- Orange = bono
- Hyacintho = sic-so
- Red = bad
Non recte figuratum CNIs accipiemus et proventus tantum CNIs cum recto MTU ostendemus. (Nota: Cilium non recte computat MTU si encryptionem potes, sic manually MTU ad 8900 in versione 1.4 reducere debebis. Sequens versio 1.5, hoc automatice facit.)
Hic eventus sunt:
Omnes CNIs bene perfecerunt in TCP Probatio. CNI cum encryption multo post tardus est quia encryption carum est.
Hic etiam omnes CNIS bene faciunt. CNI cum encryption idem fere ostendit. Cilium paulo post certamen est, sed solum 2,3% metalli nudae, unde malum non evenit. Noli oblivisci tantum Cilium et Flannel MTU recte se statuisse, et hi eventus sine ulla addita configuratione sunt.
Quid de applicatione reali? Ut vides, altiore effectu pro HTTP est leviter inferior quam pro TCP. Etiamsi HTTP cum TCP uteris, iperf3 in TCP signum configuravimus ne initium lentum, quod HTTP Probatio afficeret. Hic omnes bene fecerunt. Kube-iterum luculentum commodum habet, sed WeaveNet bene non fecit: circiter 20% gravius ββquam metallum nudum. Cilium and WeaveNet with encryption look really sad.
Cum FTP, alia TCP protocollo substructa, variantur eventus. Flannel et Kube-iter officium faciunt, sed Calico, Canal et Cilium paulo post sunt et fere 10% tardius quam metallum nudum sunt. WeaveNet quantum 17% deficit, sed encryptatum WeaveNet 40% ante Cilium encryptatum est.
Cum SCP statim videre possumus quantum SSH encryption nobis constat. Fere omnes CNIS bene faciunt, sed WeaveNet pigri est iterum. Cilium et WeaveNet cum encryptione exspectantur pessimum ob encryptionem duplicem (SSH + CNI).
Hic est summa mensa cum eventibus:
Resource consummatio
Nunc comparemus quomodo CNI opes sub oneribus (per TCP translatio 10 Gbps consumit). In experimentis faciendis comparamus CNI cum metallo nudo (linea viridi). Ad consumptionem resource, ostendemus puram Kubernetes (lineam purpuram) sine CNI et vide quot facultates extra CNI consumat.
Initium sit memoria. Hic est valor mediocris nodis RAM (exclusis buffers et cache) in MB translatione.
Flannel et Kube-iter praeclaros eventus demonstraverunt - modo 50 MB. Calico et Canal singuli habent 70. WeaveNet plane consumit prae caeteri - 130 MB, et Cilium utitur quantum 400.
Nunc in CPU tempus consummationis inspiciamus. NotabileTabula ostendit non percentages, sed ppm, id est, 38 ppm pro "ferrum nudum" est 3,8%. Hic eventus sunt:
Calico, Canal, Flannel et Kube-iter valde CPU efficientes tantum 2% plus quam Kubernetes sine CNI. WeaveNet pigra multo post cum extra 5%, quam sequitur Cilium in 7%.
Hic summa subsidii consummatio est:
results
Mensa cum omnibus eventibus:
conclusio,
In extrema parte de eventibus sententiam meam proferam. Memento quod hoc Probatio solum probat perpositionem unius connexionis in minimo botro (III nodi). Non applicatur ad magnas ligaturas (<3 nodes) vel nexus parallelos.
Suadeo utens his CNIS secundum missionem:
- Habes in botro lymphaticorum cum paucis opibus (Plures GB ipsius RAM, plures nuclei) et securitatem notis non indiges - choose flannel. Haec una maxime CNIS cost-efficax est. Et compatitur cum varietate architecturae (amd64, arm, arm64, etc.). Praeterea, haec duorum unum est (alterum Cilium) CNI quae sponte MTU determinare potest, ne quid configurare debeas. Etiam idoneus Kube-iter, sed non ut vexillum et necesse est ut MTU manually configurare.
- si oportet contristari in variis encrypt ad network ad salutem accipere WeaveNet. Noli oblivisci magnitudinem MTU denotare si tabulis jumbo uteris, et encryptionem da per tesseram per modum variabilis. Sed melius est de observantia oblivisci - sumptus encryptionis est.
- Ad normalis usus et monere Calico. Hoc CNI late in variis instrumentis Kubernetes instruere (Kops, Kubespray, Rancher, etc.). Ut apud WeaveNet, cave configurare MTU in ConfigMap si usus jumbo tabulae. Instrumentum multi-muneris est efficax in terminis subsidiorum consummatio, effectus et securitas.
Ac denique moneo ut progressionem sequantur cilium. Haec CNI turmas acerrimas habet, quae multum in producto (featurae, copiae, peculi, observantia, securitate, pampineis ... operantur) et consilia valde iucunda habent.
Source: www.habr.com