'n VPN-sywa in 'n Kubernetes-Pod lyk soos 'n gasheervlak-VPN met beter maniere, en die ooreenkoms eindig by die naamruimtegrens. Houers in een Pod deel die netwerknaamruimte, insluitend die adres- en poortruimte, so 'n sywa wat roetes en beleid installeer, verander werklik waar die toepassing se pakkies heen gaan. Dit verander niks vir die ander Pods op die nodus nie, en dit raak nie die nodus se eie stok nie, tensy jy dit so instel. Om daardie grens reg te kry, bepaal beide wat jy kan ontplooi en wat jy moet toets. Die afdelings hieronder volg dit van die naamruimte na buite.

Gedeelde naamruimte, gedeelde gevolge

Twee houers in 'n Pod praat oor loopback en sien dieselfde koppelvlakke, en dit is hoekom die sywa-patroon hoegenaamd werk: die toepassing hoef nie te weet dat daar 'n tonnel is nie, want die roete waarop dit uitkom, is in die naamruimte wat dit gebruik, geïnstalleer. Dieselfde eienskap beteken dat die sywa se foute die toepassing se foute is. 'n Roete wat te veel vasvang, of 'n DNS-verandering wat na 'n oplosser binne die tonnel wys, geld dadelik vir elke proses in daardie Pod. Daar is geen roetering per houer binne 'n gedeelde naamruimte nie, so 'n sywa kan nie tot een proses beperk word nie.

Dit is die meganisme om tydens hersiening in gedagte te hou: die impakgebied is die Pod, nie die nodus en nie die cluster nie.

Wat die sywa nie bereik nie

Ander Pods hou hul eie naamruimtes en hul eie roetering, so 'n werklading wat dieselfde uitgang nodig het, het dieselfde sywa of eerder 'n nodusvlak-ontwerp nodig. Die nodus se verkeer is ook buite die Pod se naamruimte, en Pods met gasheernetwerk kies doelbewus om heeltemal van hierdie isolasie af te sien. As jy die sywa met gasheernetwerk laat loop om iets gerieflik te bereik, het jy die omvang van een Pod na die hele nodus verbreed en moet jy dit hardop sê.

Verkeer na clusterdienste is die ander algemene verrassing. 'n Breë verstekroete binne die Pod kan versoeke vasvang wat vir die API-bediener of 'n ClusterIP-diens bedoel is, en dié misluk dan op maniere wat lyk of die tonnel stukkend is.

Roetebeplan: Pod-, diens-, nodus- en VPN-reekse

Skryf die vier reekse neer en kyk vir oorvleueling voordat jy enigiets ontplooi: Pod-CIDR, diens-CIDR, nodusadresse en die bestemmings agter die VPN. Oorvleueling tussen die VPN se private reekse en die cluster se eie ruimte is nie skaars nie, en 'n verstekroete is die verkeerde oplossing daarvoor. Die roetebeplan hoort in dieselfde bewaarplek as die manifes, want die volgende cluster mag heeltemal ander Pod- en diensreekse uitdeel.

DNS is deel van die beplanning eerder as 'n aparte bekommernis. 'n Sywa wat die oplosserkonfigurasie herskryf kan diensontdekking binne die cluster breek terwyl eksterne opsoekwerk perfek werk.

Opstart en mislukking is uitdruklike toestande

'n Lopende sywa-proses is nie 'n uitgangsbeleid nie. Besluit watter verkeer mag vloei voordat die tonnel gereed is en wat gebeur as dit daarna doodgaan, en implementeer dan daardie besluit: 'n probe wat die toepassinghouer hek, 'n netwerkbeleid wat by verstek weier, of albei. Sonder een daarvan begin die toepassing, los dit op en stuur verkeer uit die nodus se normale pad terwyl die tonnel nog besig is om te koppel.

Daardie gaping is kort in 'n gesonde cluster en permanent in 'n stukkende een, en dit is presies die eienskap wat 'n aanvaller of 'n toevallige datalek verkies.

Paar die ordening met 'n mislukkingstoets. Maak die sywa dood en bevestig dat die toepassing sy beoogde uitgang verloor eerder as om stilweg terug te val.

Vermoëns, beleide en toetsing vanuit die toepassinghouer

Om die vermoëns toe te ken wat nodig is om koppelvlakke te skep en roetes te verander, is 'n voorregbesluit, en 'n voorreg wat vir 'n geïsoleerde Pod gepas is, is nie outomaties op die nodus se stok gepas nie. Gebruik die netwerk- en sekuriteitsbeleidmeganismes wat die cluster ondersteun, en moenie aanneem elke CNI of beleidsimplementering hanteer 'n VPN-koppelvlak identies nie; die verskille wys juis in die mislukkingsgevalle waaroor jy jou bekommer.

Toets vanuit die werklike toepassinghouer, met vars versoeke na 'n private bestemming, 'n clusterdiens en die openbare internet. 'n Toets vanaf die sywa bewys die tonnel werk, nie dat die toepassing kan bereik wat dit nodig het nie.

Dokumenteer die cluster se netwerkaannames langs die VPN-konfigurasie. Om die werklading na 'n ander cluster te skuif, is dan 'n oefening om die roetebeplan na te gaan eerder as 'n beeldverandering wat stilweg ophou werk.

Verwante artikels