
Nuair a chuireas tu cruinneachadh Kubernetes air bhog airson tagradh sònraichte, feumaidh tu tuigsinn dè a tha an tagradh fhèin, an gnĂŹomhachas agus an luchd-leasachaidh aâ seasamh don ghoireas seo. Leis an fhiosrachadh seo, faodaidh tu tòiseachadh air co-dhĂšnadh ailtireil a dhèanamh agus, gu sònraichte, taghadh rianadair Ingress sònraichte, agus tha Ă ireamh mhòr dhiubh sin an-diugh. Gus beachd bunaiteach fhaighinn air na roghainnean a tha rim faighinn gun a bhith aâ dol tro tòrr artaigilean / sgrĂŹobhainnean, msaa, tha sinn air an ath-shealladh seo ullachadh, a âtoirt a-steach na prĂŹomh riaghladairean Ingress (deiseil airson cinneasachadh).
Tha sinn an dòchas gun cuidich e co-obraichean ann a bhith a 'taghadh fuasgladh ailtireachd - co-dhiĂš bidh e na thoiseach tòiseachaidh airson fiosrachadh nas mionaidiche agus deuchainnean practaigeach fhaighinn. Roimhe sin, rinn sinn sgrĂšdadh air stuthan eile den aon seòrsa air an lĂŹon agus, gu h-annasach gu leòr, cha do lorg sinn aon rud nas coileanta no nas lugha, agus as cudromaiche - structarail - lèirmheas. Mar sin lĂŹonamaid aâ bheĂ rn sin!
slatan-tomhais
Ann am prionnsabal, gus coimeas a dhèanamh agus toradh feumail sam bith fhaighinn, feumaidh tu a bhith a 'tuigsinn chan e a-mhĂ in an raon cuspair, ach cuideachd liosta shònraichte de shlatan-tomhais a shuidhicheas an vectar rannsachaidh. Gun a bhith aâ leigeil oirnn mion-sgrĂšdadh a dhèanamh air a h-uile cĂšis a dhâ fhaodadh a bhith ann mu bhith aâ cleachdadh Ingress / Kubernetes, dhâ fheuch sinn ris na riatanasan as fharsainge airson luchd-riaghlaidh a shoilleireachadh - bi ullaichte gum feum thu co-dhiĂš na mion-fhiosrachadh agus na mion-fhiosrachadh agad a sgrĂšdadh air leth.
Ach tòisichidh mi leis na feartan a tha air fĂ s cho eòlach gu bheil iad air an cur an gnĂŹomh anns a h-uile fuasgladh agus nach eilear aâ beachdachadh orra:
- lorg fiĂšghantach de sheirbheisean (lorg seirbheis);
- CrĂŹochnachadh SSL;
- ag obair le websockets.
A-nis airson na puingean coimeas:
Pròtacalan le taic
Aon de na slatan-tomhais taghaidh bunaiteach. Is dòcha nach obraich am bathar-bog agad air HTTP Ă bhaisteach, no dhâ fhaodadh gum feum e obair air grunn phròtacalan aig an aon Ă m. Ma tha aâ chĂšis agad neo-Ă bhaisteach, bi cinnteach gun toir thu aire don bhĂ illidh seo gus nach fheum thu am brabhsair ath-dhealbhadh nas fhaide air adhart. Airson a h-uile rianadair, tha an liosta de phròtacalan le taic ag atharrachadh.
bathar-bog aig cridhe
Tha grunn atharrachaidhean ann de thagraidhean air a bheil an rianadair stèidhichte. Is e an fheadhainn as mòr-chòrdte nginx, traefik, haproxy, tosgaire. Anns a 'chÚis choitcheann, is dòcha nach bi mòran buaidh aige air mar a gheibhear agus a thèid trafaig a ghluasad, ach tha e an-còmhnaidh feumail fios a bhith agad air na h-nòsan agus na feartan a dh'fhaodadh a bhith aig na tha "fon chochall".
Slighe trafaic
Air bunait dè a tha e comasach co-dhÚnadh a dhèanamh mu stiÚir trafaic gu seirbheis shònraichte? Mar as trice is iad sin aoigheachd agus slighe, ach tha cothroman a bharrachd ann.
Ăite ainm taobh a-staigh buidheann
Namespace (namespace) - an comas goireasan a roinn gu loidsigeach ann an Kubernetes (mar eisimpleir, air Ă rd-Ăšrlar, cinneasachadh, msaa). Tha riaghladairean Ingress ann a dhâ fheumar a chuir a-steach air leth anns gach Ă ite-ainm (agus an uairsin faodaidh e trafaic a stiĂšireadh a-mhĂ in gu pods an Ă ite seo). Agus tha an fheadhainn (agus aâ mhòr-chuid shoilleir aca) a bhios ag obair air feadh na cruinne airson aâ bhuidheann gu lèir - annta tha trafaic air a stiĂšireadh gu pod sam bith den bhuidheann, ge bith dè an t-ainm a thâ air.
Samhlaidhean airson upstreams
Ciamar a tha trafaic air a stiÚireadh gu suidheachaidhean fallain den tagradh, seirbheisean? Tha roghainnean ann le sgrÚdaidhean gnÏomhach is fulangach, ath-chuiridhean, luchd-brisidh cuairteachaidh (Airson tuilleadh fiosrachaidh, faic, mar eisimpleir, ), buileachadh sgrÚdaidhean slà inte fhèin (sgrÚdaidhean slà inte à bhaisteach), msaa. Paramadair fÏor chudromach ma tha riatanasan à rda agad airson ruigsinneachd agus toirt air falbh seirbheisean air fà illigeadh bho chothromachadh ann an deagh à m.
Algorithms cothromachaidh
Tha mòran roghainnean ann: bho thraidiseanta gu coimheach , a bharrachd air feartan fa leth mar .
Dearbhadh
Dè na sgeamaichean ceadachaidh a tha an rianadair aâ toirt taic? Basic, digest, oauth, external-auth - tha mi a 'smaoineachadh gum bu chòir na roghainnean sin a bhith eòlach. Tha seo na shlat-tomhais cudromach ma tha mòran lĂšban leasaiche (agus / no dĂŹreach prĂŹobhaideach) a gheibhear thuca tro Ingress.
Sgaoileadh trafaig
A bheil an rianadair aâ toirt taic do leithid de dhâ uidheamachdan cuairteachaidh trafaic a thathas aâ cleachdadh gu cumanta leithid sgaoileadh canary (canary), deuchainn A / B, sgĂ than trafaic (sgĂ than / dubhar)? Tha seo na chuspair fĂŹor ghoirt airson tagraidhean a dhâ fheumas riaghladh trafaic ceart agus mionaideach airson deuchainn cinneasach, dĂŹ-bhugachadh bhiteagan toraidh far-loidhne (no le glè bheag de chall), mion-sgrĂšdadh trafaic, agus mar sin air adhart.
Fo-sgrĂŹobhadh pĂ ighte
A bheil roghainn pĂ ighte ann airson an rianadair, le comas-gnĂŹomh adhartach agus / no taic theicnigeach?
Eadar-aghaidh cleachdaiche grafaigeach (UI lĂŹn)
A bheil GUI ann airson rèiteachadh rianadair a riaghladh? Sa mhòr-chuid airson âhandinessâ agus / no dhaibhsan a dhâ fheumas beagan atharrachaidhean a dhèanamh air rèiteachadh Ingressâa, ach tha e mĂŹ-ghoireasach obrachadh le teamplaidean âamhâ. Faodaidh e a bhith feumail ma tha luchd-leasachaidh airson cuid de dheuchainnean a dhèanamh le trafaic air an itealan.
Dearbhadh JWT
An là thair dearbhadh stèidhichte air comharran lÏn JSON airson cead agus dearbhadh an neach-cleachdaidh chun tagradh deireannach.
Comasan airson gnĂ thachadh config
Leudachadh teamplaid anns an fhaireachdainn gu bheil uidheamachdan agad a leigeas leat na stiÚiridhean, brataichean, msaa agad fhèin a chur ri teamplaidean rèiteachaidh à bhaisteach.
Innealan dĂŹon bunaiteach DDOS
Algorithms crÏoch reata sÏmplidh no roghainnean sÏolaidh trafaic nas iom-fhillte stèidhichte air seòlaidhean, liostaichean geala, dÚthchannan, msaa.
Iarr lorg
An comas sÚil a chumail air, lorg agus iarrtasan deasbaid bho Ingresses gu seirbheisean / pods sònraichte, agus gu h-iomchaidh eadar seirbheisean / pods cuideachd.
WAF
taic .
Luchd-riaghlaidh
Chaidh an liosta de luchd-riaghlaidh a chruthachadh stèidhichte air и . Chuir sinn a-mach cuid dhiubh bhon sgrÚdadh air sgà th sònraichteachd no tricead Ïosal (Ïre leasachaidh trà th). Thèid an còrr a dheasbad gu h-Ïosal. Feuch an tòisich sinn le tuairisgeul coitcheann air na fuasglaidhean agus lean air adhart le clà r geà rr-chunntas.
Teachd a-steach bho Kubernetes
LĂ rach-lĂŹn:
Cead: Apache 2.0
Is e seo an rianadair oifigeil airson Kubernetes agus tha e ga leasachadh leis aâ choimhearsnachd. Gu follaiseach bhon ainm, tha e stèidhichte air nginx agus tha seata eadar-dhealaichte de plugins Lua air a chleachdadh gus feartan a bharrachd a chuir an gnĂŹomh. Air sgĂ th cho mòr âs a tha nginx fhèin agus glè bheag de dhâ atharrachaidhean air nuair a thèid a chleachdadh mar rianadair, is dòcha gur e an roghainn seo an dòigh as fhasa agus as fhasa a rèiteachadh airson an innleadair cuibheasach (le eòlas lĂŹn).
Ingress le NGINX Inc.
LĂ rach-lĂŹn:
Cead: Apache 2.0
Toradh oifigeil luchd-leasachaidh nginx. Tha dreach pà ighte stèidhichte air . Is e am prÏomh bheachd Ïre à rd de sheasmhachd, co-fhreagarrachd seasmhach air ais, dÏth mhodalan a-muigh agus an astar à rdachaidh ainmichte (an taca ris an rianadair oifigeil), air a choileanadh mar thoradh air diÚltadh Lua.
Tha an dreach an-asgaidh air a lughdachadh gu mòr, aâ toirt a-steach eadhon an taca ris an rianadair oifigeil (air sgĂ th dĂŹth nan aon mhodalan Lua). Aig an aon Ă m, tha comas-gnĂŹomh a bharrachd gu math farsaing aig an fhear pĂ ighte: metrics fĂŹor-Ăšine, dearbhadh JWT, sgrĂšdaidhean slĂ inte gnĂŹomhach, agus barrachd. Is e buannachd chudromach thairis air NGINX Ingress lĂ n thaic airson trafaic TCP / UDP (agus anns an dreach coimhearsnachd cuideachd!). Minus - feart cuairteachaidh trafaic, a tha, ge-tĂ , âaig a bheil am prĂŹomhachas as Ă irde do luchd-leasachaidh,â ach a bheir Ăšine airson a bhuileachadh.
Kong a-steach
LĂ rach-lĂŹn:
Cead: Apache 2.0
Bathar air a leasachadh le Kong Inc. ann an dà dhreach: malairteach agus an-asgaidh. Stèidhichte air nginx, a chaidh a leudachadh le à ireamh mhòr de mhodalan Lua.
An toiseach, bha e ag amas air a bhith aâ giullachd agus aâ stiĂšireadh iarrtasan API, i.e. mar Gateway API, ach aig an Ă m seo tha e air a thighinn gu bhith na rianadair Ingress lĂ n-chuimseach. PrĂŹomh bhuannachdan: mòran mhodalan a bharrachd (a 'gabhail a-steach an fheadhainn bho luchd-leasachaidh treas-phĂ rtaidh) a tha furasta an stĂ ladh agus an rèiteachadh agus le cuideachadh a tha raon farsaing de fheartan a bharrachd air an cur an gnĂŹomh. Ach, tha gnĂŹomhan togte mar-thĂ aâ tabhann mòran chothroman. Tha rèiteachadh obrach air a dhèanamh aâ cleachdadh goireasan CRD.
Feart cudromach den toradh - tha a bhith ag obair taobh a-staigh an aon loidhne (an Ă ite crois-ainmean) na chuspair connspaideach: dha cuid bidh e coltach ri ana-cothrom (feumaidh tu aonadan a dhèanamh airson gach contour), agus airson cuideigin tha e na fheart ( bĐžĂre nas Ă irde de aonaranachd, mar ma tha aon rianadair briste, tha an duilgheadas cuingealaichte ris aâ chuairt a-mhĂ in).
Trafik
LĂ rach-lĂŹn:
Cead: MIT
Neach-ionaid a chaidh a chruthachadh an toiseach gus obrachadh le slighe iarrtasan airson microservices agus an Ă rainneachd fiĂšghantach aca. Mar sin, mòran fheartan feumail: ag Ăšrachadh an rèiteachaidh gun ath-thòiseachadh idir, taic airson Ă ireamh mhòr de dhòighean cothromachaidh, eadar-aghaidh lĂŹn, metrics air adhart, taic airson diofar phròtacalan, REST API, fiosan canary, agus mòran a bharrachd. Is e feart snog eile taic airson teisteanasan Let's Encrypt a-mach Ă s aâ bhogsa. Is e an ana-cothrom a thâ ann gum feum an rianadair a stòradh KV fhèin a chuir a-steach agus a cheangal gus ruigsinneachd Ă rd (HA) a chuir air dòigh.
HAProxy
LĂ rach-lĂŹn:
Cead: Apache 2.0
Tha HAProxy air a bhith aithnichte o chionn fhada mar neach-ionaid agus cothromachadh trafaic. Mar phĂ irt de bhuidheann Kubernetes, tha e aâ tabhann Ăšrachadh rèiteachaidh âbogâ (gun a bhith aâ call trafaic), lorg seirbheis stèidhichte air DNS, rèiteachadh fiĂšghantach aâ cleachdadh API. Faodaidh e a bhith tarraingeach an teamplaid config a ghnĂ thachadh gu tur le bhith aâ cur an Ă ite an CM, a bharrachd air a bhith comasach air gnĂŹomhan leabharlann Sprig a chleachdadh ann. San fharsaingeachd, tha prĂŹomh chuideam an fhuasglaidh air astar Ă rd, cho math sa tha e agus èifeachdas ann an goireasan caitheamh. Is e buannachd an rianadair taic bho Ă ireamh as Ă irde de dhòighean cothromachaidh eadar-dhealaichte.
Voyager
LĂ rach-lĂŹn:
Cead: Apache 2.0
Stèidhichte air rianadair HAproxy, a tha air a shuidheachadh mar fhuasgladh uile-choitcheann a bheir taic do raon farsaing de fheartan air à ireamh mhòr de sholaraichean. Tha cothrom air a thabhann airson trafaic a chothromachadh air L7 agus L4, agus faodar cothromachadh trafaic TCP L4 gu h-iomlan a ghairm mar aon de phrÏomh fheartan an fhuasglaidh.
Contour
LĂ rach-lĂŹn:
Cead: Apache 2.0
Chan eil am fuasgladh seo stèidhichte a-mhĂ in air Envoy: chaidh a leasachadh le còmhla le Ăšghdaran an neach-ionaid mòr-chòrdte seo. Is e feart cudromach an comas smachd a chumail air goireasan Ingress aâ cleachdadh goireasan IngressRoute CRD. Do bhuidhnean le mòran sgiobaidhean leasachaidh aâ cleachdadh an aon bhuidheann, tha seo aâ cuideachadh le bhith aâ meudachadh tèarainteachd a bhith ag obair le trafaic ann an lĂšban faisg air lĂ imh agus gan dĂŹon bho mhearachdan nuair a dhâ atharraicheas iad goireasan Ingress.
Tha e cuideachd aâ tabhann seata leudaichte de dhòighean cothromachaidh (tha sgĂ than air iarrtasan, ath-aithris fèin-ghluasadach, cuingealachadh air ĂŹre iarrtasan, agus mòran a bharrachd), sgrĂšdadh mionaideach air sruthadh trafaic agus fĂ illigidhean. Is dòcha gum bi e na dhuilgheadas mòr dha cuideigin an dĂŹth taic airson seiseanan steigeach (ged a tha an obair ).
Istio Ingress
LĂ rach-lĂŹn:
Cead: Apache 2.0
Fuasgladh mogal seirbheis coileanta a tha chan e a-mhĂ in rianadair Ingress a bhios aâ riaghladh trafaic a tha aâ tighinn a-steach bhon taobh a-muigh, ach a bhios cuideachd aâ cumail smachd air a h-uile trafaic taobh a-staigh aâ bhuidheann. Fon chochall, thathas aâ cleachdadh Envoy mar neach-ionaid taobh cĂ r airson gach seirbheis. Gu dearbh, is e cothlamadh mòr a tha seo a tha âas urrainn rud sam bith a dhèanamhâ, agus is e a phrĂŹomh bheachd an comas riaghlaidh, leudachaidh, tèarainteachd agus follaiseachd as motha. Leis, faodaidh tu slighe trafaic a ghleusadh, cead fhaighinn eadar seirbheisean, cothromachadh, sgrĂšdadh, fiosan canary, agus mòran a bharrachd. Leugh tuilleadh mu Istio anns an t-sreath artaigilean "".
tosgaire
LĂ rach-lĂŹn:
Cead: Apache 2.0
Fuasgladh eile stèidhichte air Envoy. Tha dreachan an-asgaidh agus malairteach ann. Tha e air a shuidheachadh mar âlĂ n dhĂšthchasach do Kubernetesâ, a bheir na buannachdan co-fhreagarrach (aonachadh teann le dòighean agus buidhnean buidheann K8s).
ClĂ r coimeas
Mar sin, is e deireadh an artaigil an clà r mòr seo:
Faodar cliogadh air airson sealladh nas dlĂšithe, agus tha e cuideachd ri fhaighinn sa chruth .
Smaoinich sinn suas
Is e adhbhar na h-artaigil seo tuigse nas coileanta a thoirt seachad (ge-tĂ , chan eil e gu tur iomlan!) Dè an roghainn a nĂŹ thu sa chĂšis shònraichte agad. Mar as Ă bhaist, tha na buannachdan agus na h-eas-bhuannachdan aige fhèin aig gach rianadairâŚ
Tha an Ingress clasaigeach bho Kubernetes math airson a bhith ri fhaighinn agus dearbhadh, feartan beairteach gu leòr - sa chĂšis choitcheann, bu chòir dha a bhith âgu leòr airson na sĂšileanâ. Ach, ma tha barrachd riatanasan ann airson seasmhachd, an ĂŹre de fheartan agus leasachadh, bu chòir dhut aire a thoirt do Ingress le NGINX Plus agus ballrachd pĂ ighte. Tha an seata plug-ins as beairtiche aig Kong (agus, a rèir sin, na cothroman a bheir iad seachad), agus anns an dreach pĂ ighte tha eadhon barrachd dhiubh. Tha cothroman gu leòr ann a bhith ag obair mar Gateway API, rèiteachadh fiĂšghantach stèidhichte air goireasan CRD, a bharrachd air seirbheisean bunaiteach Kubernetes.
Le barrachd riatanasan airson dòighean cothromachaidh agus ceadachaidh, thoir sĂšil air Traefik agus HAProxy. Tha iad sin nam pròiseactan Open Source, air an dearbhadh thar nam bliadhnaichean, gu math seasmhach agus gu gnĂŹomhach aâ leasachadh. Tha Contour air a bhith a-muigh airson bliadhna no dhĂ a-nis, ach tha e fhathast aâ coimhead ro òg agus chan eil ach feartan bunaiteach air a chur ris a bharrachd air an Tosgaire. Ma tha riatanasan ann airson lĂ thaireachd / stèidheachadh WAF air beulaibh an tagraidh, bu chòir dhut aire a thoirt don aon Ingress bho Kubernetes no HAProxy.
Agus is e an fheadhainn as beairtiche a thaobh feartan toraidhean a chaidh a thogail a bharrachd air Envoy, gu sònraichte Istio. Tha e coltach gur e fuasgladh coileanta a thâ ann âas urrainn dad a dhèanamhâ, a tha, ge-tĂ , aâ ciallachadh stairsneach inntrigidh gu math nas Ă irde airson rèiteachadh / cur air bhog / rianachd na fuasglaidhean eile.
Tha sinn air Ingress bho Kubernetes a thaghadh agus a chleachdadh fhathast mar rianadair Ă bhaisteach, a tha aâ còmhdach 80-90% de fheumalachdan. Tha e gu math earbsach, furasta a rèiteachadh agus a leudachadh. San fharsaingeachd, Ă s aonais riatanasan sònraichte, bu chòir dha a bhith freagarrach don mhòr-chuid de chlĂ ran / thagraidhean. De na h-aon thoraidhean uile-choitcheann agus an ĂŹre mhath sĂŹmplidh, faodar Traefik agus HAProxy a mholadh.
PS
Leugh cuideachd air ar blog:
- "Air ais gu microservices le Istio": , , ;
- ÂŤ";
- ÂŤ".
Source: www.habr.com
