Cloud Run na lokalnu VPN: postavljanje Direct VPC izlaza
Cloud VPN tunel ne stavlja Cloud Run na mrežu. Povežite uslugu s pravom podmrežom, usmjerite njen raspon izvora, pa testirajte tu reviziju.
Tunel je aktivan, VM doseže lokalni server, a Cloud Run usluga ističe na istom hostu. To je uobičajena početna točka za ovaj zadatak i tunel je rijetko ono što je pogrešno. Cloud Run revizija prema zadanim postavkama ne stoji u vašoj VPC, a kada stane, koristi vlastite izvorne adrese umjesto VM podmreže koju ste već usmjerili. Priručnik u nastavku povezuje uslugu, usmjerava njen stvarni raspon izvora i zatim dokazuje put od revizije koja je poslužila zahtjev. Izvedite ga tim redoslijedom, jer preskakanje prvog koraka je razlog zašto toliko ovih slučajeva završi promjenom VPN-a koja ništa ne popravlja.
Povežite reviziju prije nego što otklanjate greške na tunelu
Cloud Run podržava Direct VPC izlaz, koji stavlja promet usluge na podmrežu u vašoj VPC bez Serverless VPC Access konektora. Za postojeću uslugu ažuriranje izgleda ovako:
gcloud run services update SERVICE \
--region=REGION --network=NETWORK --subnet=SUBNET \
--vpc-egress=private-ranges-only
Zamijenite rezervisana mjesta, pregledajte šta implementacija čini živom prometu i odaberite podmrežu u regiji usluge s dovoljnim kapacitetom adresa i ispravnim mrežnim dozvolama.
Odaberite način izlaza koji odgovara odredištu
private-ranges-only šalje odredišta koja klasificira kao privatna kroz VPC. To ne znači „sve što je dostupno preko VPN-a“, a ta praznina se pojavljuje kada lokalna usluga stoji u rasponu koji postavka ne klasificira na taj način. Ako odredište nije pokriveno, all-traffic je drugi dokumentovani način i šalje sve kroz VPC, uključujući javne zavisnosti usluge. Odaberite svjesno i zapišite posljedicu u zapis o promjeni.
Usluga koja već koristi konektor je migracija, a ne prekidač, zato je planirajte umjesto da konfigurišete oboje.
Usmjerite Cloud Run izvor, a ne VM izvor
Direct VPC izlaz dodjeljuje privremene adrese iz odabrane podmreže, a lokalna strana mora vraćati promet u taj raspon. Povratna ruta ili dozvola vatrozida napisana za drugu VM podmrežu izgledat će ispravno na dijagramu i neće raditi u praksi. Uzmite CIDR podmreže iz VPC-a, a ne iz sjećanja, zatim potvrdite da kripto ACL ili tabela ruta udaljenog uređaja to uključuje.
Uz dinamičko usmjeravanje, provjerite šta Cloud Router stvarno oglašava i šta VPC uvozi, uključujući svaku prilagođenu politiku oglašavanja. Ruta koja postoji u konzoli, ali nije odabrana za ovo odredište, isto je što i nikakva ruta.
Tri uslova koji svi moraju vrijediti
Radni put zahtijeva sve sljedeće, a svaki od njih pada na svoj način:
- Ruta u VPC-u prema lokalnom prefiksu kroz predviđenu Cloud VPN vezu.
- Povratna ruta na lokalnoj strani za Cloud Run podmrežu.
- Obim zaštite vatrozida i IPsec-a koji dozvoljava izvor, odredište i port.
Ruta koja nedostaje obično izgleda kao istek vremena bez dokaza s udaljene strane. Problem s povratnom rutom izgleda kao dolazak zahtjeva i nestanak odgovora. Problem s vatrozidom ili selektorom može izgledati kao odbijanje ili kao tiho odbacivanje, zavisno od uređaja. Utvrđivanje koji od ta tri imate znatno sužava sljedeću komandu.
Ne stavljajte jednu privremenu Cloud Run adresu na listu dozvoljenih. Koristite raspon podmreže i dizajn autorizacije koji odgovara aplikaciji.
Testirajte reviziju koja je poslužila zahtjev
Pregledajte primijenjene mrežne postavke i raspodjelu prometa prije testiranja, jer ažuriranje može stvoriti novu reviziju dok zahtjevi još stižu na stariju. Zatim izvedite istu operaciju koju izvodi korisnički zahtjev, s te revizije. Ako je odredište privatno ime hosta, provjerite njegovo razrješavanje u tom okruženju i adresu koju je dalo, jer odgovor korporativnog DNS-a s vašeg prijenosnika ne dokazuje ništa o imenskom prostoru usluge. Zadržite TLS provjeru imena hosta i vlastitu autentifikaciju udaljene aplikacije.
Očekujte dokumentovana kašnjenja povezivanja pri pokretanju Direct VPC-a i dajte klijentu strategiju spremnosti ili ponovnog pokušaja umjesto da svaki hladni start dijagnostikujete kao pokvaren tunel.
Vraćanje i šta ovo ne radi
Za vraćanje, vratite mrežne postavke i postavke izlaza usluge na prethodne vrijednosti i potvrdite da starija revizija još uvijek poslužuje promet. Zadržite gcloud komandu u zapisu o promjeni, jer suprotnost djelimične promjene nije očigledna nakon šest sedmica. Uklanjanje VPC priključka vraća uslugu na njen prethodni put izlaza, što može biti upravo ono što želite tokom incidenta.
Ovaj dizajn pokriva veze koje Cloud Run pokreće i njihove odgovore. On ne daje lokalnoj mreži adresabilan socket unutar usluge, jer je dolazno izlaganje ingress odluka.