Ntụle arụmọrụ CNI maka Kubernetes karịrị netwọkụ 10G (August 2020)

Ntụle arụmọrụ CNI maka Kubernetes karịrị netwọkụ 10G (August 2020)

TL; DR: Ndị CNI niile na-arụ ọrụ dị ka ha kwesịrị, ma e wezụga Kube-Router na Kube-OVN, Calico, ma e wezụga nchọpụta MTU na-akpaghị aka, bụ nke kacha mma.

Edemede-mmelite nke ndenye ego m gara aga (2018 и 2019), n'oge ule, m na-eji Kubernetes 1.19 na Ubuntu 18.04 na CNI emelitere dị ka nke August 2020.

Tupu anyị banye n'ime metrik...

Kedu ihe dị ọhụrụ kemgbe Eprel 2019?

  • Nwere ike ịnwale n'ụyọkọ nke gị: Ị nwere ike iji ngwa ọrụ anyị mee ule na ụyọkọ nke gị Kubernetes Network Benchmark: knb
  • Ndị otu ọhụrụ apụtala
  • Ihe ngosi ọhụrụ: Ntụle nlele ugbu a na-agba ule arụmọrụ netwọkụ "Pod-to-Pod", agbakwunyere script "Pod-to-Service" ọhụrụ nke na-agba ọsọ ule nso na ọnọdụ ụwa n'ezie. Na omume, Pod gị nwere API na-arụ ọrụ na ntọala dịka ọrụ, ọ bụghị site na adreesị IP Pod (n'ezie anyị na-elele ma TCP na UDP maka ọnọdụ abụọ ahụ).
  • Oriri akụrụngwa: nnwale ọ bụla nwere ntụnyere akụrụngwa nke ya
  • Iwepu Nnwale Ngwa: Anyị anaghịzi eme ule HTTP, FTP na SCP dị ka mmekorita nke ọma anyị na ndị obodo na ndị na-elekọta CNI ekpughere ọdịiche dị n'etiti nsonaazụ iperf na nsonaazụ TCP na curl n'ihi igbu oge na mmalite CNI (sekọnd ole na ole mbụ nke Pod). mmalite, nke na-adịghị ahụkarị na ezigbo ọnọdụ).
  • Ebe mepere emepe: isi mmalite ule niile (edemede, ntọala yml na data “raw” izizi) dị ebe a

Protocol ule ntụaka

A kọwara ụkpụrụ ahụ n'ụzọ zuru ezu ebe aBiko mara na akụkọ a bụ maka Ubuntu 18.04 nwere kernel ndabara.

Ịhọrọ CNI maka Ntụle

Nnwale a bụ iji atụnyere CNI ahaziri na otu faịlụ yaml (ya mere, ewepụrụ ndị niile etinyere na scripts, dị ka VPP na ndị ọzọ).

CNI anyị họọrọ maka ntụnyere:

  • Antrea v.0.9.1
  • Calico v3.16
  • Canal v3.16 (Network Flannel + Calico Network Atumatu)
  • Cilium 1.8.2
  • Flannel 0.12.0
  • Kube-router kacha ọhụrụ (2020-08-25)
  • WeaveNet 2.7.0

Na-ahazi MTU maka CNI

Nke mbụ, anyị na-elele mmetụta nke nchọpụta MTU akpaka na arụmọrụ TCP:

Ntụle arụmọrụ CNI maka Kubernetes karịrị netwọkụ 10G (August 2020)

Mmetụta MTU na arụmọrụ TCP

A na-achọta oghere ka ukwuu mgbe ị na-eji UDP:

Ntụle arụmọrụ CNI maka Kubernetes karịrị netwọkụ 10G (August 2020)
Mmetụta nke MTU na UDP Performance

Nyere nnukwu mmetụta arụmọrụ ekpughere na ule ndị ahụ, anyị ga-achọ iziga ndị na-elekọta CNI niile akwụkwọ ozi olileanya: biko tinye nchọpụta MTU akpaka na CNI. Ị ga-echekwa kittens, unicorns na ọbụna nke kachasị mma: obere Devop.

Otú ọ dị, ọ bụrụ na ịchọrọ iji CNI na-enweghị nkwado maka nchọpụta MTU na-akpaghị aka, ị nwere ike hazie ya na aka gị iji nweta arụmọrụ. Biko mara na nke a metụtara Calico, Canal na WeaveNet.

Ntụle arụmọrụ CNI maka Kubernetes karịrị netwọkụ 10G (August 2020)
Obere arịrịọ m na-arịọ ndị CNI so ya...

Nnwale CNI: Data Raw

N'akụkụ a, anyị ga-atụnyere CNI na MTU ziri ezi (ekpebisi ike na-akpaghị aka ma ọ bụ tinye aka). Ebumnuche bụ isi ebe a bụ igosi data raw na eserese.

Akụkọ agba:

  • isi awọ - sample (ya bụ, ígwè iferi)
  • akwụkwọ ndụ akwụkwọ ndụ - bandwit karịa 9500 Mbps
  • odo - bandwit karịrị 9000 Mbps
  • oroma - bandwit karịa 8000 Mbps
  • red - bandwit n'okpuru 8000 Mbps
  • acha anụnụ anụnụ - na-anọpụ iche (anaghị emetụta bandwit)

Oriri akụrụngwa anaghị ebu

Nke mbụ, lelee oriri akụrụngwa mgbe ụyọkọ ahụ "na-ehi ụra".

Ntụle arụmọrụ CNI maka Kubernetes karịrị netwọkụ 10G (August 2020)
Oriri akụrụngwa anaghị ebu

Pod-na-Pod

Ọnọdụ a na-eche na onye ahịa Pod na-ejikọ ozugbo na ihe nkesa Pod site na iji adreesị IP ya.

Ntụle arụmọrụ CNI maka Kubernetes karịrị netwọkụ 10G (August 2020)
Ọnọdụ Pod-to-Pod

TCP

Nsonaazụ TCP Pod-to-Pod na oriri akụrụngwa kwekọrọ:

Ntụle arụmọrụ CNI maka Kubernetes karịrị netwọkụ 10G (August 2020)

Ntụle arụmọrụ CNI maka Kubernetes karịrị netwọkụ 10G (August 2020)

UDP

Nsonaazụ Pod-to-Pod UDP na oriri akụrụngwa kwekọrọ:

Ntụle arụmọrụ CNI maka Kubernetes karịrị netwọkụ 10G (August 2020)

Ntụle arụmọrụ CNI maka Kubernetes karịrị netwọkụ 10G (August 2020)

Pod-na-Ọrụ

Akụkụ a dị mkpa maka ezigbo ojiji, onye ahịa Pod na-ejikọta na Pod nkesa site na ọrụ ClusterIP.

Ntụle arụmọrụ CNI maka Kubernetes karịrị netwọkụ 10G (August 2020)
Ederede Pod-na-Ọrụ

TCP

Nsonaazụ TCP nke Pod-to- Service yana oriri akụrụngwa kwekọrọ:

Ntụle arụmọrụ CNI maka Kubernetes karịrị netwọkụ 10G (August 2020)

Ntụle arụmọrụ CNI maka Kubernetes karịrị netwọkụ 10G (August 2020)

UDP

Nsonaazụ UDP Pod-to-Service yana oriri akụrụngwa kwekọrọ:

Ntụle arụmọrụ CNI maka Kubernetes karịrị netwọkụ 10G (August 2020)

Ntụle arụmọrụ CNI maka Kubernetes karịrị netwọkụ 10G (August 2020)

Nkwado amụma netwọkụ

N'ime ihe niile dị n'elu, naanị onye na-akwadoghị ndọrọ ndọrọ ọchịchị bụ Flannel. Ndị ọzọ niile na-emejuputa atumatu netwọkụ nke ọma, gụnyere mbata na ọpụpụ. Ezigbo ọrụ!

CNI izo ya ezo

N'ime CNI ndị a na-enyocha, e nwere ndị nwere ike zoo mgbanwe netwọk n'etiti Pods:

  • Antrea na-eji IPsec
  • Calico na-eji waya nche
  • Cilium na-eji IPsec
  • WeaveNet na-eji IPsec

Bandwit

Ebe ọ bụ na CNI dị ole na ole fọdụrụ, ka anyị tinye ọnọdụ niile n'otu eserese:

Ntụle arụmọrụ CNI maka Kubernetes karịrị netwọkụ 10G (August 2020)

Nri akụrụngwa

Na ngalaba a, anyị ga-enyocha akụrụngwa eji eme ihe mgbe ị na-ahazi nkwukọrịta Pod-to-Pod na TCP na UDP. Enweghị uru ịse eserese Pod-to-Service ebe ọ naghị enye ozi ndị ọzọ.

Ntụle arụmọrụ CNI maka Kubernetes karịrị netwọkụ 10G (August 2020)

Ntụle arụmọrụ CNI maka Kubernetes karịrị netwọkụ 10G (August 2020)

Na-etinye ya niile ọnụ

Ka anyị gbalịa ikwugharị eserese niile, anyị webatara ntakịrị isiokwu ebe a, jiri okwu ndị a "vwry fast", "obere", wdg dochie ụkpụrụ ndị ahụ.

Ntụle arụmọrụ CNI maka Kubernetes karịrị netwọkụ 10G (August 2020)

Mmechi na nkwubi okwu m

Nke a bụ ntakịrị ihe gbasara onwe ya, ebe m na-ekwupụta nkọwa nke m nke nsonaazụ ya.

Enwere m obi ụtọ na CNI ọhụrụ pụtara, Antrea rụrụ nke ọma, a na-emeju ọtụtụ ọrụ ọbụna na nsụgharị mbụ: nchọpụta MTU akpaka, izo ya ezo na ntinye dị mfe.

Ọ bụrụ na anyị atụnyere arụmọrụ, CNI niile na-arụ ọrụ nke ọma, ewezuga Kube-OVN na Kube-Router. Kube-Router enweghịkwa ike ịchọpụta MTU, ahụghị m ụzọ m ga-esi hazie ya n'ebe ọ bụla na akwụkwọ (akwụkwọ)ebe a a na-arịọ arịrịọ maka isiokwu a).

N'ihe gbasara oriri akụrụngwa, Cilium ka na-eji RAM karịa ndị ọzọ, mana onye nrụpụta na-elekwasị anya na nnukwu ụyọkọ, nke doro anya na ọ bụghị otu ule na ụyọkọ ọnụ atọ. Kube-OVN na-erikwa ọtụtụ ihe CPU na RAM, mana ọ bụ CNI na-eto eto dabere na Open vSwitch (dị ka Antrea, ọ na-arụ ọrụ nke ọma ma na-eri obere).

Onye ọ bụla ma e wezụga Flannel nwere amụma netwọkụ. O yikarịrị ka ọ gaghị akwado ha, ebe ọ bụ na ihe mgbaru ọsọ dị mfe karịa tonip steamed: ọkụ ọkụ, ka mma.

Ọzọkwa, n'etiti ihe ndị ọzọ, arụmọrụ ezoro ezo dị ịtụnanya. Calico bụ otu n'ime CNI kacha ochie, mana agbakwunyere nzuzo naanị izu ole na ole gara aga. Ha họọrọ wireguard kama IPsec, ma tinye ya, ọ na-arụ ọrụ dị ukwuu ma dị ịtụnanya, na-ekpuchi kpamkpam CNI ndị ọzọ na akụkụ a nke ule. N'ezie, ihe oriri na-eri nri na-abawanye n'ihi izo ya ezo, ma ihe a na-enweta na ya bara uru (Calico gosipụtara ọganihu isii na nyocha nzuzo ma e jiri ya tụnyere Cilium, bụ nke abụọ). Ọzọkwa, ị nwere ike ime ka waya nche n'oge ọ bụla mgbe ị bufere Calico na ụyọkọ ahụ, ị ​​nwekwara ike gbanyụọ ya obere oge ma ọ bụ na-adịgide adịgide ma ọ bụrụ na ịchọrọ. Ọ bụ incredibly adaba, Otú ọ dị! Anyị na-echetara gị na Calico anaghị achọpụta MTU ugbu a na-akpaghị aka (a na-eme atụmatụ atụmatụ a maka nsụgharị n'ọdịnihu), yabụ jide n'aka na ị hazie MTU ma ọ bụrụ na netwọk gị na-akwado Jumbo Frames (MTU 9000).

Tinyere ihe ndị ọzọ, rịba ama na Cilium nwere ike izochi okporo ụzọ n'etiti oghere ụyọkọ (ọ bụghị naanị n'etiti Pods), nke nwere ike dị ezigbo mkpa maka oghere ụyọkọ ọha.

Dị ka nkwubi okwu, m na-atụ aro iji ihe ndị a:

  • Achọrọ CNI maka obere ụyọkọ ma ọ bụ enweghị m nchekwa: arụ ọrụ na Flannel, CNI kacha dị mfe ma kwụsie ike (ọ bụkwa otu n'ime ndị kasị ochie, dịka akụkọ akụkọ si kwuo, ọ bụ Homo Kubernautus ma ọ bụ Homo Contaitorus chepụtara ya.). Ị nwekwara ike ịmasị ọrụ kachasị mma Ugboro, lelee!
  • Achọrọ CNI maka ụyọkọ oge niile: calico - nhọrọ gị, mana echefula ịhazi MTU ma ọ bụrụ na ọ dị mkpa. Ị nwere ike iji atumatu netwọkụ gwuo ngwa ngwa na n'ụzọ nkịtị, gbanye ma gbanyụọ nzuzo, wdg.
  • Achọrọ CNI maka ụyọkọ (oke) nnukwu ọnụ ọgụgụ: Ọfọn, ule ahụ egosighi omume nke nnukwu ụyọkọ, m ga-enwe obi ụtọ ịme ule, ma anyị enweghị ọtụtụ narị sava nwere njikọ 10Gbps. Ya mere, nhọrọ kachasị mma bụ ịme ule gbanwetụrụ na ọnụ gị, ọbụlagodi na Calico na Cilium.

isi: www.habr.com

Tinye a comment