Ko taku whakahou tenei
Tuatahi, e hiahia ana ahau ki te mihi ki te roopu Cilium: na nga tama i awhina i ahau ki te tirotiro me te whakatika i nga tuhinga aro turuki ine.
He aha nga mea kua rereke mai i te Whiringa-a-rangi 2018
Anei nga mea kua rereke mai i tera wa (mehemea kei te pirangi koe):
Ka noho tonu a Flannel hei atanga CNI tere me te ngawari, engari kaore i te tautoko i nga kaupapa here me te whakamunatanga.
Kua kore a Romana e tautokohia, no reira kua tangohia e matou i te tohu tohu.
Kei te tautoko a WeaveNet i nga kaupapa here whatunga mo Ingress me Egress! Engari kua heke te hua.
I Calico, me whirihora a-ringa i te rahinga o te paatete morahi (MTU) mo te mahi pai. Ka tukuna e Calico nga whiringa rua mo te whakauru i te CNI, na ka taea e koe te mahi me te kore he putunga ETCD motuhake:
- te pupuri i te ahua i roto i te Kubernetes API hei toa raraunga (te rahi o te kahui <50 node);
- te rokiroki i te ahua o te Kubernetes API hei toa raraunga me te takawaenga Typha hei whakamama i te kawenga i runga i te K8S API (te rahi o te kahui > 50 node).
I whakapuakihia e Calico te tautoko
Kei te tautoko a Cilium i te whakamunatanga! Ka whakaratohia e Cilium te whakamunatanga me nga IPSec tunnels me te tuku i tetahi atu ki te whatunga WeaveNet kua whakamunatia. Engari he tere ake a WeaveNet i a Cilium me te whakamunatanga kua whakahohea.
He ngawari ake a Cilium ki te tuku mihi ki te kaiwhakahaere ETCD i hangaia.
I ngana te kapa Cilium ki te tarai i etahi taumaha mai i tana CNI ma te whakaiti i te kohi mahara me nga utu PTM, engari he maamaa tonu ona kaiwhakataetae.
Te horopaki tohu
Ka whakahaerehia te tohu tohu i runga i nga kaitoro Supermicro kore-mariko me te 10 Gb Supermicro whakawhiti. Ka hono tika nga kaitoro ki te whakawhiti ma nga taura DAC SFP+ hāngū ka whirihorahia i runga i te VLAN kotahi me nga papa jumbo (MTU 9000).
Kua whakauruhia a Kubernetes 1.14.0 ki runga Ubuntu 18.04 LTS me Docker 18.09.2 (te putanga Docker taunoa i tenei tukunga).
Hei whakapai ake i te reproducibility, i whakatau matou ki te whirihora i nga wa katoa i te rangatira i runga i te node tuatahi, tuu i te wahanga tūmau o te tohu tohu ki te tūmau tuarua, me te wāhanga kiritaki ki te tuatoru. Hei mahi i tenei, ka whakamahia e matou te NodeSelector ki nga whakatakotoranga Kubernetes.
Ka whakaahuahia e matou nga hua tohu i runga i te tauine e whai ake nei:
Te whiriwhiri i te CNI mo te tohu tohu
He tohu tohu tenei mo CNI anake mai i te rarangi o te waahanga
Ka whakatauritea e matou nga CNI e whai ake nei:
- Calico v3.6
- Canal v3.6 (te mea ko te Flannel mo te whatunga + Calico hei paahi ahi)
- Cilium 1.4.2
- Parani 0.11.0
- Kube-pouara 0.2.5
- WeaveNet 2.5.1
tāutanga
Ko te ngawari o te CNI ki te whakauru, ko te pai ake o to maatau whakaaro tuatahi. Ko nga CNI katoa mai i te tohu tohu he tino ngawari ki te whakauru (me nga whakahau kotahi, e rua ranei).
Ka rite ki ta matou i kii ai, kua whirihorahia nga kaitoro me te whakawhiti me nga papa jumbo kua whakahohea (kua tautuhia e matou te MTU ki te 9000). Ka harikoa matou mena ka whakatau aunoa a CNI i te MTU i runga i te whirihoranga o nga kaiwhakauru. Heoi, ko Cilium me Flannel anake te whakahaere i tenei. Ko te toenga o nga CNI he tono i runga i te GitHub ki te taapiri i te kitenga MTU aunoa, engari ka whirihorahia e matou ma te huri i te ConfigMap mo Calico, Canal me Kube-router, ka tukuna ranei he taurangi taiao mo WeaveNet.
He aha te raru o te MTU hē? Ko tenei hoahoa e whakaatu ana i te rereketanga o WeaveNet me te MTU taunoa me nga papa jumbo kua whakahohea:
He pehea te paanga o te MTU ki te whakaputanga?
Kua kite matou i te hiranga o te MTU mo te mahi, inaianei ka kite tatou me pehea e whakatau aunoa ai a tatou CNI:
Ko te kauwhata e whakaatu ana me whirihora e koe te MTU mo Calico, Canal, Kube-router me WeaveNet mo te mahi tino pai. I taea e Cilium me Flannel te whakatau tika i te MTU ake kaore he tautuhinga.
Haumarutanga
Ka whakatauritehia e matou te haumarutanga CNI i roto i nga waahanga e rua: te kaha ki te whakamuna i nga raraunga tuku me te whakatinanatanga o nga kaupapa here whatunga Kubernetes (i runga i nga whakamatautau pono, ehara i te tuhinga).
E rua noa nga CNI whakamuna raraunga: Cilium me WeaveNet. Whakamunatanga WeaveNet ka whakahohea ma te tautuhi i te kupuhipa whakamunatanga hei taurangi taiao CNI. IN
Mo te whakatinanatanga o te kaupapa here whatunga, kua angitu ratou Calico, Canal, Cilium me WeaveNet, ka taea e koe te whirihora i nga ture Ingress me te Putanga. Mo Pouara-kube he ture mo Ingress anake, a Tuhinga Karekau he kaupapa here whatunga.
Anei nga hua katoa:
Nga Hua Tohu Paerewa Mahi Haumaru
Te whai hua
Ko tenei tohu tohu e whakaatu ana i te utu toharite mo te toru neke atu ranei o nga oma o ia whakamatautau. Ka whakamatauhia e matou te mahinga o te TCP me te UDP (ma te whakamahi i te iperf3), nga tono tuuturu penei i te HTTP (me te Nginx me te curl) me te FTP ranei (me te vsftpd me te curl) me te mutunga o te mahi tono ma te whakamahi i te whakamunatanga a SCP (ma te whakamahi i te kiritaki me te tūmau OpenSSH).
Mo nga whakamatautau katoa, i mahia e matou he tohu tohu whakarewa (raina matomato) hei whakataurite i nga mahi a CNI me nga mahinga whatunga taketake. I konei ka whakamahia e matou te tauine kotahi, engari he tae:
- Kowhai = tino pai
- Karaka = pai
- Kahurangi = so-so
- Whero = kino
E kore matou e tango i nga CNI kua he te whirihora, ka whakaatu noa i nga hua mo nga CNI me te MTU tika. (Tuhipoka: Karekau a Cilium e tatau tika i te MTU mena ka taea e koe te whakamunatanga, no reira me whakaheke a ringa koe i te MTU ki te 8900 i te putanga 1.4. Ko te putanga e whai ake nei, 1.5, ka mahi aunoa.)
Anei nga hua:
He pai te mahi a nga CNI katoa ki te tohu tohu TCP. Ko te CNI me te whakamunatanga kei muri tawhiti na te mea he utu nui te whakamunatanga.
I konei hoki, kei te pai katoa nga CNI. Ko te CNI me te whakamunatanga i whakaatu tata tonu te hua. Kei muri iti a Cilium i te whakataetae, engari he 2,3% noa iho o te konganuku kore, no reira ehara i te kino te hua. Kaua e wareware ko Cilium me Flannel anake i whakatau tika i te MTU, a ko enei nga hua kaore he whirihoranga taapiri.
Me pehea te tono pono? Kei te kite koe, he iti ake te mahi mo te HTTP i to TCP. Ahakoa ka whakamahi koe i te HTTP me te TCP, i whirihorahia e matou te iperf3 ki te tohu tohu TCP hei karo i te tiimata puhoi ka pa ki te tohu tohu HTTP. He pai te mahi a te katoa ki konei. He tino painga a Kube-router, engari kaore i pai te mahi a WeaveNet: tata ki te 20% kino atu i te whakarewa kore. He tino pouri te ahua o Cilium me WeaveNet me te whakamunatanga.
Ma te FTP, tetahi atu kawa-a-TCP, he rereke nga hua. Ko te Flannel me te Kube-router te mahi, engari ko Calico, Canal me Cilium he iti kei muri, he 10% te puhoi ake i te whakarewa kore. Kei muri a WeaveNet i te 17%, engari ko te WeaveNet kua whakamunatia he 40% kei mua i te Cilium whakamunatia.
Ma te SCP ka kite tonu tatou e hia nga utu whakamunatanga SSH. Tata ki te katoa o nga CNI kei te pai te mahi, engari kei te heke ano a WeaveNet. Ko te Cilium me te WeaveNet me te whakamunatanga ko te mea tino kino na te whakamunatanga rua (SSH + CNI).
Anei he ripanga whakarāpopoto me ngā hua:
Te whakamahi rauemi
Inaianei me whakatairitea me pehea te kai a CNI i nga rawa i raro i nga kawenga taumaha (i te wa whakawhiti TCP, 10 Gbps). I roto i nga whakamatautau mahi ka whakatauritehia e matou te CNI me te whakarewa kore (raina matomato). Mo te kohi rawa, me whakaatu nga Kubernetes parakore (raina papura) kaore he CNI me te kite i te maha o nga rauemi ka pau i a CNI.
Me timata ma te mahara. Anei te uara toharite mo nga pona' RAM (kaore i te aukati me te keteroki) i roto i te MB i te wa whakawhiti.
He pai rawa nga hua o te harakeke me te Kube-router - 50 MB anake. Kei a Calico me Canal te 70. He nui ake te pau o te WeaveNet i era atu - 130 MB, me te 400 te whakamahi a Cilium.
Inaianei kia tirohia te kohi wa PTM. Whakanuia: e whakaatu ana te hoahoa ehara i te ōrau, engari he ppm, ara, 38 ppm mo te “rino kore” he 3,8%. Anei nga hua:
Ko Calico, Canal, Flannel me te Kube-router he tino pai te PTM - 2% noa ake i nga Kubernetes kahore he CNI. Kei muri rawa atu a WeaveNet me te taapiri 5%, whai muri ko Cilium i te 7%.
Anei te whakarāpopototanga o te whakamahi rauemi:
Ngā putanga
Ripanga me nga hua katoa:
mutunga
I te waahanga whakamutunga ka whakapuaki ahau i taku whakaaro kaupapa mo nga hua. Kia maumahara ko tenei tohu tohu ka whakamatau noa i te urunga o te hononga kotahi i runga i te tautau iti rawa (e toru nga pona). Karekau e pa ki nga tautau nunui (<3 nodes) ki nga hononga whakarara ranei.
Ka tūtohu ahau ki te whakamahi i nga CNI e whai ake nei i runga i te ahuatanga:
- Kei roto koe i to huinga he iti rawa nga rauemi (he maha nga GB o te RAM, he maha nga waahanga) kaore koe e hiahia ki nga waahanga haumaru - whiriwhiri Tuhinga. Koinei tetahi o nga CNI tino utu. A he hototahi ki te maha o nga hoahoanga (amd64, ringa, arm64, me etahi atu). I tua atu, koinei tetahi o te rua (ko tetahi atu ko Cilium) CNI ka taea te whakatau aunoa i te MTU, na reira kaore koe e whai ki te whirihora i tetahi mea. He pai hoki a Kube-router, engari ehara i te mea he paerewa, ka hiahia koe ki te whirihora a-ringa i te MTU.
- Ki te tika whakamuna te whatunga mo te haumaru, tangohia WeaveNet. Kaua e wareware ki te tautuhi i te rahi MTU mena kei te whakamahi koe i nga papa jumbo, ka taea te whakamunatanga ma te tohu kupuhipa ma te taurangi taiao. Engari he pai ake te wareware ki nga mahi - koinei te utu mo te whakamunatanga.
- Ki whakamahi noa tohutohu Calico. Kei te whakamahia nuitia tenei CNI i roto i nga momo taputapu tuku Kubernetes (Kops, Kubespray, Rancher, etc.). Pērā ki a WeaveNet, kia whirihorahia te MTU ki te ConfigMap mena ka whakamahi i nga papa jumbo. He taputapu maha-mahi e whai hua ana i runga i te kohi rawa, te mahi me te haumarutanga.
Ka mutu, ka tohutohu ahau ki a koe kia whai i te whanaketanga cilium. Ko tenei CNI he roopu tino kaha e mahi nui ana i runga i a raatau hua (nga ahuatanga, penapena rawa, mahi, haumarutanga, whakahiato ...) a he tino pai nga mahere.
Hoahoa tirohanga mo te kowhiringa CNI
Source: will.com