Podoj de GKE perdis VPN-aliron post 1.14: du manieroj ripari la fonton
Post 1.14 podoj atingas la VPN kun propraj adresoj, do la kunuloj faligas respondojn. Elektu la fontokontrakton, poste agordu nonMasqueradeCIDRs kongrue.
Alvenas ĝisdatigo, kaj sistemoj trans la tunelo komencas rifuzi podan trafikon, kiu funkciis la antaŭan semajnon. La tunelo estas supren, la fajroŝirmilaj reguloj estas netuŝitaj, kaj neniu redaktis la kunulan politikon. Tio, kio ŝanĝiĝis, estas nevidebla en la klusteraj protokoloj: la fonta adreso, kiun tiuj sistemoj nun vidas. Tiu breĉo klarigas paneon, kiu aspektas kiel reta interrompo kaj kondutas kiel permesa problemo.
Ekzistas du validaj respondoj, kaj ili kondukas vin al malsamaj lokoj. Elektu la fontokontrakton antaŭ ol redakti ConfigMap.
La defaŭlta regulo, kiun oni ĉesis instali
Pli fruaj eldonoj de GKE instaladis masquerade-regulon, kiu anstataŭigis podajn fontojn per la noda adreso, kiam ajn la celo troviĝis ekster 10.0.0.0/8. VPN-pordego ene de tiu gamo vidis la podan adreson, dum io pli malproksima aspektis kvazaŭ ĝi venus de la nodo. La kunuloj konstruis permeslistojn kaj revenajn vojojn ĉirkaŭ nodaj adresoj, ĉar tion ili observis.
Pli postaj eldonoj ĉesis instali tiun defaŭltan regulon. Poda trafiko nun alvenas al la pordego kun podaj adresoj, kia ajn estas la celo. Kunulo, kiu enkursigas nur nodajn adresojn, faligas la respondojn, kaj neniu flanko skribas utilan protokolan eron. La peto eĉ povas sukcesi ĉe la malproksima fino, kaj tio estas kio faras la paneon konfuza por ĉasi.
Nenio estas rompita en la senco de morta komponanto. La du flankoj simple malkonsentas pri tio, kiu fonto estas legitima.
Elektu la fonton, kiun la kunulo devus vidi
Reteni podajn adresojn estas la pli preciza kontrakto. La malproksima flanko vidas la laborŝarĝon, kiu produktis la trafikon, la protokolado restas honesta, kaj politiko por podo fariĝas ebla. La prezo estas, ke la kunulo devas porti la podan prefikson.
Reteni nodajn adresojn estas la pli malmultekosta kontrakto. Reŝaltu maskadon por tiu celo kaj la kunulo daŭre vidos adreson, kiun ĝi jam fidas.
Unu demando decidas inter ili: kion la kunulo faras kun la fonto? Se ĝi protokolas, aplikas politikon laŭ fonto aŭ devigas mallarĝan revenan enkursigon, podaj adresoj pravigas la plian agordon. Se ĝi nur bezonas sendi respondojn, maskado kostas malpli kaj petas nenion de la alia flanko. Ambaŭ elektoj estas defendeblaj, se ambaŭ teamoj skribas ĝin malsupren.
Tria opcio kutime estas eraro: maski ĉion kaj perdi la kapablon atribui trafikon. Evitu ĝin, krom se kunulo vere ne povas enkursigi ion ajn krom nodajn adresojn.
Direktu nonMasqueradeCIDRs al la realaj gamoj
GKE rulas la ip-masq-agent en kube-system, kaj ĝia ConfigMap listigas la celojn, kiuj preterlasas maskadon. Por konservi podajn fontojn direkte al la tunelo, la poda gamo, la noda subreto kaj la loka prefikso ĉiuj apartenas al tiu listo.
Anstataŭigu la ekzemplajn valorojn per gamoj el via propra klastero. Ne faru la liston pli larĝa ol la postulo diktas, ĉar ĉiu plia ero ŝanĝas tion, kion iu alia celo vidas. La tri eroj sube reprezentas la podan reton, la nodan subreton kaj la prefikson malantaŭ la tunelo:
nonMasqueradeCIDRs:
- 10.12.0.0/14
- 10.100.0.0/16
- 172.16.0.0/12
masqLinkLocal: false
resyncInterval: 60sEro 0.0.0.0/0 malŝaltas maskadon por ĉiuj celoj, kio ŝanĝas kiel nerilataj laborŝarĝoj aperas al eksteraj servoj kaj malofte estas intenca. La agento relegas sian agordon ĉe resyncInterval, do restartigo kutime ne necesas. Kontrolu, ke la agenta podo funkcias, poste malfermu la muntitan dosieron ene de ĝi. Legi tiun dosieron estas kio pruvas, ke la ŝanĝo alvenis.
La responda vojo estas la alia duono
Maskado ŝanĝas la fonton de la peto kaj nenion alian. Kian ajn fonton la kunulo ricevas, ĝi ankoraŭ bezonas vojon reen al ĝi, kaj la klastero ankoraŭ bezonas vojon al la kunulo.
Kaptado ĉe la VPN-pordego apartigas la du paneojn rapide. Paketoj, kiuj alvenas kun podaj adresoj kaj neniam ricevas respondon, signifas, ke la kunulo mankas vojon por la poda prefikso. Respondo, kiu aperas ĉe la pordego sed neniam atingas la klasteron, signifas, ke la loka vojo mankas. Skribu la kontrakton en la bileton ĉiuokaze: kiun fonton la kunulo vidas, kaj al kiu prefikso ĝi enkursigas reen.
Rekontrolu post ĉiu ĝisdatigo
La defaŭlta maska konduto jam ŝanĝiĝis unufoje, kaj anstataŭigo de noda naĝejo povas restarigi la klasteran reton. Traktu la fontokontrakton kiel ion por kontroli, ne kiel ion por supozi.
Post ĝisdatigo, sendu unu peton de podo al loka servo kaj legu la fonton, kiun la kunulo protokolas. Tiu unu observo kaptas regreson, kiun tunela statpaĝo ĝoje raportus kiel sanan. Ripeti ĝin kostas minuton kaj ŝparas al la sekva homo vesperon.