Saabub uuendus ja tunnelist teisel pool olevad süsteemid hakkavad tagasi lükkama podide liiklust, mis eelmisel nädalal töötas. Tunnel on püsti, tulemüüri reeglid on puutumata ja keegi ei muutnud peeri poliitikat. Muutunu on klastri logides nähtamatu: allikaaadress, mida need süsteemid nüüd näevad. See lünk seletab riket, mis näeb välja nagu võrgu katkestus ja käitub nagu õiguste probleem.

On kaks kehtivat vastust ja need viivad teid erinevatesse kohtadesse. Valige allika leping enne ConfigMapi muutmist.

Vaikereegel, mida enam ei paigaldatud

Varasemad GKE väljaanded paigaldasid masquerade-reegli, mis asendas podide allikad sõlme aadressiga alati, kui sihtkoht asus väljaspool 10.0.0.0/8. Selle vahemiku sees olev VPN-lüüs nägi podi aadressi, samas kui kaugemal olev näis tulevat sõlmest. Peerid ehitasid lubatud aadresside loendid ja tagasiteed sõlmede aadresside ümber, sest seda nad jälgisid.

Hiljemad väljaanded lõpetasid selle vaikereegli paigaldamise. Podide liiklus jõuab nüüd lüüsile podide aadressidega, ükskõik milline on sihtkoht. Peer, mis marsruudib ainult sõlmede aadresse, jätab vastused kõrvale ja kumbki pool ei kirjuta kasulikku logikirjet. Päring võib kaugemas otsas isegi õnnestuda ja just see teeb rikke jälitamise segaseks.

Miski ei ole katki surnud komponendi mõttes. Kaks poolt lihtsalt ei nõustu, milline allikas on seaduslik.

Valige allikas, mida peer peaks nägema

Podide aadresside hoidmine on täpsem leping. Kaugem pool näeb töökoormust, mis liikluse tekitas, logimine jääb ausaks ja podipõhine poliitika muutub võimalikuks. Hind on see, et peer peab kandma podi prefiksit.

Sõlmede aadresside hoidmine on odavam leping. Lülitage masquerade selle sihtkoha jaoks uuesti sisse ja peer näeb edasi aadressi, mida ta juba usaldab.

Üks küsimus otsustab nende vahel: mida peer allikaga teeb? Kui see logib, rakendab allikapõhist poliitikat või nõuab kitsast tagasimarsruutimist, õigustavad podide aadressid lisakonfiguratsiooni. Kui see peab ainult vastuseid saatma, maksab masquerade vähem ega nõua teiselt poolelt midagi. Kumbki valik on kaitstav, kui mõlemad meeskonnad selle kirja panevad.

Kolmas valik on tavaliselt viga: masquerade kõigele ja kaotada võime liiklust omistada. Vältige seda, välja arvatud juhul, kui peer tõesti ei suuda marsruudida midagi muud peale sõlmede aadresside.

Suunake nonMasqueradeCIDRs tegelikele vahemikele

GKE käitab ip-masq-agenti kube-systemis ja selle ConfigMap loetleb sihtkohad, mis masquerade'i vahele jätavad. Podide allikate säilitamiseks tunneli suunas kuuluvad podi vahemik, sõlme alamvõrk ja kohalik prefiks kõik sellesse loendisse.

Asendage näidisväärtused oma klastri vahemikega. Ärge tehke loendit laiemaks, kui nõue ette näeb, sest iga lisakirje muudab seda, mida mõni teine sihtkoht näeb. Kolm kirjet allpool tähistavad podide võrku, sõlmede alamvõrku ja tunneli taga olevat prefiksit:

nonMasqueradeCIDRs:
  - 10.12.0.0/14
  - 10.100.0.0/16
  - 172.16.0.0/12
masqLinkLocal: false
resyncInterval: 60s

Kirje 0.0.0.0/0 lülitab masquerade'i välja kõigi sihtkohtade jaoks, mis muudab seda, kuidas seostamata töökoormused välisteenustele paistavad, ja on harva taotluslik. Agent loeb oma konfiguratsiooni uuesti resyncIntervali ajal, seega taaskäivitamine pole tavaliselt vajalik. Kontrollige, kas agendi pod töötab, ja avage seejärel selle sees olev kinnitatud fail. Just selle faili lugemine tõestab, et muudatus kohale jõudis.

Vastuse tee on teine pool

Masquerade muudab päringu allikat ja mitte midagi muud. Millise allika peer ka saab, vajab see endiselt teed sinna tagasi, ja klastril on endiselt vaja teed peeri poole.

Püük VPN-lüüsil eraldab kaks riket kiiresti. Paketid, mis saabuvad podide aadressidega ja ei saa kunagi vastust, tähendavad, et peeril puudub marsruut podi prefiksi jaoks. Vastus, mis ilmub lüüsile, kuid ei jõua kunagi klastrisse, tähendab, et kohalik marsruut on puudu. Kirjutage leping piletisse igal juhul: millist allikat peer näeb ja millisele prefiksile see tagasi marsruudib.

Kontrollige uuesti pärast igat uuendust

Masquerade'i vaikekäitumine on juba korra muutunud ja sõlmede basseini asendamine võib klastri võrgu lähtestada. Käsitlege allika lepingut kontrollitava, mitte eeldatava asjana.

Pärast uuendust saatke üks päring podist kohalikku teenusesse ja lugege allikat, mille peer logib. See üks vaatlus püüab regressiooni, mille tunneli olekuleht rahulikult tervena teataks. Selle kordamine maksab minuti ja säästab järgmisele inimesele õhtu.

Seotud artiklid