Koma ndiyamba ndi mikhalidwe yomwe yadziwika kwambiri kotero kuti imayendetsedwa pamayankho onse ndipo samaganiziridwa:
kupezeka kwamphamvu kwa mautumiki (kutulukira kwa ntchito);
Kutha kwa SSL;
ntchito ndi websockets.
Tsopano kwa mfundo zofananiza:
Ma protocol othandizira
Chimodzi mwazofunikira pakusankha. Mapulogalamu anu mwina sangagwire ntchito pa HTTP wamba, kapena angafunike kugwirira ntchito pama protocol angapo nthawi imodzi. Ngati mlandu wanu ndi wosagwirizana, onetsetsani kuti mukuganizira izi kuti musamakonzenso gululo pambuyo pake. Kwa olamulira onse, mndandanda wa ma protocol omwe amathandizidwa amasiyanasiyana.
mapulogalamu pachimake
Pali mitundu ingapo yamapulogalamu yomwe wowongolera amatengera. Odziwika ndi nginx, traefik, haproxy, nthumwi. Nthawi zambiri, sizingakhale ndi zotsatira zambiri pa momwe magalimoto amalandirira ndi kufalikira, koma nthawi zonse zimakhala zothandiza kudziwa zomwe zingatheke komanso zomwe zili "pansi pa hood".
Njira zamagalimoto
Pamaziko a zomwe zingatheke kupanga chisankho chokhudza kayendetsedwe ka magalimoto ku ntchito inayake? Nthawi zambiri izi ndi zokhala ndi njira, koma pali zina zowonjezera.
Malo a mayina mkati mwa gulu
Namespace (namespace) - kuthekera kogawaniza zinthu ku Kubernetes (mwachitsanzo, pa siteji, kupanga, etc.). Pali olamulira a Ingress omwe amayenera kukhazikitsidwa padera pamtundu uliwonse wa mayina (kenako amatha kuwongolera magalimoto okha ku mapoto a malo awa). Ndipo pali ena (ndi ambiri omveka bwino) omwe amagwira ntchito padziko lonse lapansi pagulu lonse - m'menemo magalimoto amapita ku gulu lililonse lamagulu, mosasamala kanthu za malo.
Zitsanzo za pamwamba
Kodi magalimoto amayendetsedwa bwanji kuzochitika zabwino za ntchito, mautumiki? Pali zosankha zokhala ndi macheke achangu komanso osagwira ntchito, zoyesereranso, zowononga ma circuit (Kuti mumve zambiri, onani, mwachitsanzo, nkhani ya Istio), mayendedwe azaumoyo, ndi zina. Gawo lofunika kwambiri ngati muli ndi zofunikira zambiri kuti mukhalepo komanso kuchotsedwa kwanthawi yake kwa ntchito zomwe zalephera kusanja.
Kodi pali GUI iliyonse yoyang'anira kasinthidwe kawoyang'anira? Makamaka "zamanja" ndi / kapena kwa iwo omwe akufunika kusintha kusintha kwa Ingress'a, koma kugwira ntchito ndi ma templates "yaiwisi" ndikovuta. Zitha kukhala zothandiza ngati madivelopa akufuna kuchita zoyeserera ndi kuchuluka kwa magalimoto pamsewu.
Kutsimikizika kwa JWT
Kukhalapo kwa kutsimikizika kokhazikika kwa ma tokeni apaintaneti a JSON kuti avomerezedwe ndikutsimikizira wogwiritsa ntchito kumapeto.
Mwayi wosintha makonda
Kukula kwa ma template munjira yoti mukhale ndi njira zomwe zimakulolani kuti muwonjezere malangizo anu, mbendera, ndi zina ku ma tempuleti okhazikika.
Njira zodzitetezera za DDOS
Ma algorithms osavuta a malire kapena njira zovuta zosefera zamagalimoto kutengera ma adilesi, ma whitelists, mayiko, ndi zina.
Pemphani kuti mufufuze
Kutha kuyang'anira, kutsatira ndikuwongolera zopempha kuchokera ku Ingresses kupita kuzinthu zina / ma pod, komanso pakati pa mautumiki / ma pod nawonso.
Chovomerezeka cha opanga nginx. Ali ndi mtundu wolipidwa kutengera NGINX Plus. Lingaliro lalikulu ndi kukhazikika kwapamwamba, kugwirizana kosalekeza m'mbuyo, kusakhalapo kwa ma modules aliwonse akunja ndi kulengeza kuwonjezereka kwachangu (poyerekeza ndi wolamulira wovomerezeka), zomwe zimatheka chifukwa cha kukana kwa Lua.
Mtundu waulere umachepetsedwa kwambiri, kuphatikiza ngakhale poyerekeza ndi wolamulira wovomerezeka (chifukwa chosowa ma module a Lua omwewo). Nthawi yomweyo, wolipirayo amakhala ndi magwiridwe antchito ochulukirapo: ma metric anthawi yeniyeni, kutsimikizika kwa JWT, kuwunika zaumoyo, ndi zina zambiri. Ubwino wofunikira kuposa NGINX Ingress ndikuthandizira kwathunthu kwa traffic ya TCP / UDP (komanso m'gulu la anthu!). Kuchotsa - kusowa kwa gawo logawa magalimoto, lomwe, "lilili lofunika kwambiri kwa opanga," koma zimatenga nthawi kuti zitheke.
Yankho ili silinangotengera nthumwi: idapangidwa ndi pamodzi ndi olemba a proxy yotchuka iyi. Chofunikira kwambiri ndikutha kulekanitsa kuwongolera kwazinthu za Ingress pogwiritsa ntchito zida za IngressRoute CRD. Kwa mabungwe omwe ali ndi magulu ambiri achitukuko omwe amagwiritsa ntchito masango omwewo, izi zimathandiza kukulitsa chitetezo chogwira ntchito ndi magalimoto mu malupu oyandikana nawo ndikuwateteza ku zolakwika posintha zipangizo za Ingress.
Limaperekanso njira zowonjezera zofananira (pali zowonera magalasi, kubwereza-bwereza, kuchepetsa kuchuluka kwa zopempha, ndi zina zambiri), kuwunika mwatsatanetsatane kayendedwe ka magalimoto ndi kulephera. Mwina kwa wina kudzakhala cholepheretsa kwambiri kusowa kwa chithandizo cha magawo omata (ngakhale ntchitoyo kale).
Yankho lina lochokera pa Envoy. Iwo ali ufulu ndi malonda Mabaibulo. Imayikidwa ngati "yobadwira ku Kubernetes", zomwe zimabweretsa zabwino zomwe zimagwirizana (kuphatikizana kolimba ndi njira ndi mabungwe a gulu la K8s).
Gome lofananirana
Chifukwa chake, chimaliziro cha nkhaniyi ndi tebulo lalikulu ili:
Imadina kuti muwone bwino, ndipo imapezekanso mumtundu wake Masamba a Google.
Tiyeni tiwone
Cholinga cha nkhaniyi ndikupereka kumvetsetsa kokwanira (komabe, osakwanira!) Chosankha chomwe mungapange pankhani yanu. Monga mwachizolowezi, wowongolera aliyense ali ndi zabwino zake komanso zovuta zakeβ¦
Ingress yachikale yochokera ku Kubernetes ndiyabwino pakupezeka kwake komanso kutsimikizika, mawonekedwe olemera - nthawi zambiri, iyenera kukhala "yokwanira maso". Komabe, ngati pali zofunikira zowonjezera kukhazikika, mlingo wa mawonekedwe ndi chitukuko, muyenera kumvetsera Ingress ndi NGINX Plus ndi kulembetsa kolipira. Kong ali ndi mapulagini olemera kwambiri (ndipo, motero, mipata yomwe amapereka), ndipo mu mtundu wolipidwa pali ochulukirapo. Ili ndi mwayi wokwanira wogwira ntchito ngati Chipata cha API, kusinthika kosinthika kutengera zinthu za CRD, komanso ntchito zoyambira za Kubernetes.
Ndi zofunikira zowonjezera pakusanja ndi kuvomereza njira, yang'anani Traefik ndi HAProxy. Awa ndi ma projekiti a Open Source, otsimikiziridwa pazaka zambiri, okhazikika komanso akutukuka mwachangu. Contour yatuluka kwa zaka zingapo tsopano, koma ikuwonekabe yaying'ono kwambiri ndipo ili ndi zofunikira zokha zomwe zawonjezeredwa pamwamba pa Envoy. Ngati pali zofunikira pakukhalapo / kuyika kwa WAF kutsogolo kwa pulogalamuyi, muyenera kulabadira zomwezo Ingress kuchokera Kubernetes kapena HAProxy.