Cloud Run prema lokalnom VPN-u: postavljanje izravnog VPC izlaza
Cloud VPN tunel ne stavlja Cloud Run na mrežu. Povežite uslugu s pravom podmrežom, usmjerite njezin raspon izvora, zatim testirajte tu reviziju.
Tunel je aktivan, VM doseže lokalni poslužitelj, a Cloud Run usluga istječe na istom hostu. To je uobičajeno polazište 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 njezin stvarni raspon izvora i zatim dokazuje put od revizije koja je poslužila zahtjev. Izvedite ga tim redoslijedom, jer preskakanje prvog koraka razlog je zašto toliko ovih slučajeva završi promjenom VPN-a koja ništa ne popravlja.
Povežite reviziju prije nego što otklanjate pogreške na tunelu
Cloud Run podržava izravni 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 rezervirana mjesta, pregledajte što implementacija čini živom prometu i odaberite podmrežu u regiji usluge s dovoljnim kapacitetom adresa i ispravnim mrežnim dopuštenjima.
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 pojavljuje se kada lokalna usluga stoji u rasponu koji postavka ne klasificira na taj način. Ako odredište nije pokriveno, all-traffic je drugi dokumentirani način i šalje sve kroz VPC, uključujući javne ovisnosti usluge. Odaberite svjesno i zapišite posljedicu u zapis o promjeni.
Usluga koja već koristi konektor zahtijeva migraciju, a ne prekidač, zato je planirajte umjesto da konfigurirate oboje.
Usmjerite Cloud Run izvor, a ne VM izvor
Izravni VPC izlaz dodjeljuje privremene adrese iz odabrane podmreže, a lokalna strana mora vraćati promet u taj raspon. Povratna ruta ili dopuštenje vatrozida napisano 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 tablica ruta udaljenog uređaja to uključuje.
Uz dinamičko usmjeravanje, provjerite što Cloud Router stvarno oglašava i što 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 uvjeta 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.
- Opseg zaštite vatrozida i IPsec-a koji dopušta 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, ovisno o uređaju. Utvrđivanje koji od ta tri imate znatno sužava sljedeću naredbu.
Ne stavljajte jednu privremenu Cloud Run adresu na popis dopuštenih. 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 dokumentirana kašnjenja povezivanja pri pokretanju izravnog VPC izlaza i dajte klijentu strategiju spremnosti ili ponovnog pokušaja umjesto da svaki hladni start dijagnosticirate kao pokvaren tunel.
Vraćanje i što 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 naredbu u zapisu o promjeni, jer suprotnost djelomične promjene nije očita nakon šest tjedana. Uklanjanje VPC priključka vraća uslugu na njezin prethodni put izlaza, što može biti upravo ono što želite tijekom 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.