Denne siden gir en grunnleggende innføring i Skyen SQL Auth proxy, og beskriver theproxy alternativer.
følg lenken for miljøet for trinnvise instruksjoner om bruk Av Cloud SQL Auth-proxy:
- Hurtigstart for Bruk Av Cloud SQL Auth proxy
- slik kobler du til Med Cloud SQL Auth proxy
- slik kobler du til Med Cloud SQL AUTH proxy FRA GKE
DU trenger ikke å bruke Cloud SQL Auth proxy eller konfigurere SSL toconnect Til Cloud SQL fra App Engine standardeller koble Til Cloud SQL fra Appen motor fleksibelt miljø.
- Prøv det selv
- Hva Cloud SQL Auth proxy gir
- Hvordan Cloud SQL Auth proxy fungerer
- Krav for Bruk Av Cloud SQL Auth proxy
- Oppstartsalternativer for CLOUD SQL Auth-proxy
- Bruke en tjenestekonto for godkjenning
- Nødvendige tillatelser for tjenestekontoer
- Alternativer for å angi Cloud SQL-forekomster
- Holde Cloud SQL Auth proxy up-to-date
- API-bruk
- om å opprette en spesiell brukerkonto for Cloud SQL Auth proxy
- Cloud SQL Auth proxy parametere og flagg
- HVORDAN SIKRING brukes med Cloud SQL Auth proxy
- Installere FUSE
- Bruke Cloud SQL Auth proxy i et produksjonsmiljø
- Kontroller At Cloud SQL Auth-proxyen kjøres som en vedvarende tjeneste
- Hvor mange kopier Av Cloud SQL Auth proxy søknaden din trenger
- Redusere Cloud SQL Auth proxy-utgang
- hvordan failover påvirker Cloud SQL Auth proxy
- Holde Cloud SQL Auth proxy Docker-bildet oppdatert
Prøv det selv
hvis Du ikke har brukt Google Cloud Før, kan Du opprette en konto for å evaluere Hvordan Cloud SQL presterer i virkelige scenarier. Nye kunder får også $ 300 i gratis kreditter for å kjøre, teste og distribuere arbeidsbelastninger.
Prøv Cloud SQL free
Hva Cloud SQL Auth proxy gir
Cloud SQL Auth proxy gir sikker tilgang til dine forekomster utenbehovet For Autoriserte nettverkeller for konfigurering AV SSL.
Tilgang Til Cloud SQL-forekomsten din ved Hjelp Av Cloud SQL Auth proxy tilbyr følgende fordeler:
- Sikre tilkoblinger: Cloud SQL Auth proxy krypterer automatisk trafikk til og fradatabasen ved HJELP AV TLS 1.2 med en 128-biters aes-kryptering; SSL-sertifiseringerbrukes til å verifisere klient-og serveridentiteter.
- Enklere tilkoblingsadministrasjon: Cloud SQL Auth proxy håndterer godkjenning withCloud SQL, og fjerner behovet for å gi statiske IP-adresser.
CLOUD SQL Auth-proxyen gir ikke en ny tilkoblingsbane; den er avhengig av eksisterende Ip-Tilkobling. For å koble TIL En Cloud SQL-forekomst ved hjelp avprivate IP, Må CLOUD SQL Auth proxy være på en ressurs med accessto samme VPC-nettverk som forekomsten.
Hvordan Cloud SQL Auth proxy fungerer
Cloud SQL Auth proxy fungerer ved å ha en lokal klient kjøreri det lokale miljøet. Din søknad kommuniserer Med Cloud SQL Auth proxywith standard database protokollen som brukes av databasen. Cloud SQL Auth proxy brukeren sikker tunnel for å kommunisere med sin ledsagerprosess som kjører på serveren.
mens proxyen kan lytte på en hvilken som helst port, oppretter den bare utgående tilkoblinger til din Cloud SQL-forekomst på port 3307. Hvis du har en utgående brannmurpolicy, må du sørge for at den tillater tilkoblinger til port 3307 på Cloud Sqlinstances IP.
følgende diagram viser hvordan Cloud SQL Auth proxy kobles Til Cloud SQL:
Krav for Bruk Av Cloud SQL Auth proxy
hvis du vil bruke Cloud SQL Auth proxy, må du oppfylle følgende krav:
- Cloud SQL Admin API må være aktivert.
- Du må oppgi Cloud SQL Auth proxy withGoogle Cloud godkjenning legitimasjon.
- Du må oppgi Cloud SQL Auth proxy med en gyldig database brukerkonto og passord.
-
forekomsten må enten ha en offentlig IPv4-adresse, eller konfigureres til useprivate IP.
den offentlige IP-adressen trenger ikke å være tilgjengelig for noen ekstern adresse(den trenger ikke legges til som en autorisert nettverksadresse).
Oppstartsalternativer for CLOUD SQL Auth-proxy
når Du starter Cloud SQL Auth-proxyen, gir du Den følgende informasjon:
- Hvilke Cloud SQL-forekomster for å etablere tilkoblinger til
- hvor det vil lytte etter data som kommer fra søknaden din som skal sendes til Cloud SQL
- hvor det vil finne legitimasjonene det vil bruke til å autentisere dinsøknad til Cloud SQL
- om nødvendig, hvilken IP-adressetype som skal brukes.
Oppstartsalternativene For SQL Auth-proxy i Skyen du oppgir, bestemmer om den vil lytte på En Tcpport eller På En Unix-kontakt. Hvis den lytter på En Unix-kontakt, oppretter den thesocket på stedet du velger; vanligvis /cloudsql / katalogen.For TCP lytter CLOUD SQL Auth proxy på localhost
som standard.
Kjør cloud_sql_proxy
kjørbar med argumentet --help
for å se den komplette listen over oppstartsalternativer.
Du kan installere Cloud SQL Auth proxy hvor som helst i ditt lokale miljø. Plasseringen av Cloud SQL Auth proxy binaries påvirker ikke hvor den lytter etter data fra dinsøknad.
Bruke en tjenestekonto for godkjenning
Cloud SQL Auth proxy krever godkjenning. Fordelen med å bruke en tjenestekonto fordette formålet er at du kan opprette en legitimasjonsfil spesielt for cloud SQL Auth proxy, og den er eksplisitt og permanent knyttet til Cloud SQL Auth proxy så lenge den erkjører. Av denne grunn er bruk av en tjenestekonto den anbefalte metoden for production instances som ikke kjører på En Compute Engine-forekomst.
legitimasjonsfilen kan dupliseres i et systembilde hvis du trenger å invokthe Cloud SQL Auth proxy fra flere maskiner.
hvis du vil bruke denne metoden, må du opprette og administrere legitimasjonsfilen. Bare brukeremed resourcemanager.projects.setIamPolicy
– tillatelsen (for eksempel prosjekteiere) kan opprette tjenestekontoen. Hvis yourGoogle Cloud-brukeren ikke har denne tillatelsen, må du ha noen til å opprette tjenestekontoen for deg, eller bruke en annen metode for å godkjenne Cloud SQL Auth-proxy.
Hvis du vil ha hjelp med å opprette en legitimasjonsfil, kan Du Se Opprette en tjenestekonto.
Nødvendige tillatelser for tjenestekontoer
når du bruker en tjenestekonto til å angi legitimasjonen for Cloud SQL Auth-proxyen, må du opprette den med tilstrekkelige tillatelser. Hvis du bruker rollene finere grainedIdentity Access And Management (iam)til å administrere YOURCLOUD SQL-tillatelser, må du gi tjenestekontoen en rolle som inkluderer cloudsql.instances.connect
– tillatelsen . PredefinedCloud SQL-roller som inneholder denne tillatelsen er:
- Cloud SQL Client
- Cloud SQL Editor
- Cloud SQL Admin
hvis du bruker eldre prosjektroller (Visningsprogram, Redigeringsprogram, Eier), må serviceaccount minst Ha Redigeringsrollen.
Alternativer for å angi Cloud SQL-forekomster
Det er flere måter å fortelle Cloud SQL Auth proxy hvilke forekomster du vil koble til. Noen er eksplisitte og noen er implisitte. I noen konfigurasjoner, dumå ikke fortelle Cloud SQL Auth proxy på forhånd hvilke tilfeller du vil koble tiltil, fordi Cloud SQL Auth proxy kobles basert på tilkoblingsforespørsler.
alternativene for eksempel spesifikasjon avhenger av operativsystemet andenvironment:
Alternativ | Fordeler | Advarsler Og Krav | Linux/macOS (Unix-kontakter) |
Java | Windows | Merknader |
---|---|---|---|---|---|---|
FUSE (Filsystem I Bruker Plass) |
Dynamisk socket opprettelse basert på tilkoblingsforespørsler; ingen proxy starter nødvendig som forekomster endres. | SIKRING må installeres. | Støttet | Nei | Nei | Bruk -fuse flagg. |
automatisk forekomst oppdagelse | Du trenger ikke å angi forekomster; sockets opprettet for alle forekomster i standard prosjekt. | Cloud SQL Auth proxy API-bruk er økt. Må Ha Cloud SDK installert og godkjent, med et standard prosjektsett. Må starte Cloud SQL Auth proxy for å legge til ny forekomst. | Støttet | Nei | Nei | anbefales ikke for produksjonsforekomster. |
Project discovery | du trenger Ikke å angi forekomster; sockets opprettet for alle forekomster i angitte prosjekter. | Cloud SQL Auth proxy API-bruk er økt. Må Ha Cloud SDK installert og godkjent. Må starte Cloud SQL Auth proxy for å legge til ny forekomst. | Støttet | Nei | Nei | Bruk -projects parameter. Ikke anbefalt for produksjon forekomster. |
Forekomster angitt på Cloud SQL Auth proxy invocation | Instans liste kjent og statisk. | Må starte Cloud SQL Auth proxy For å legge til ny forekomst. | Støttet | Støttet MED TCP sockets | Støttet MED TCP sockets | Bruk -instances parameter. For flere forekomster bruker du en kommaseparert liste uten mellomrom. Lær mer. |
Forekomster angitt Ved Hjelp Av Compute Engine metadata | Instanslisten kan oppdateres ved å endre metadataverdien uten å starte Cloud SQL Auth proxy. | Bare Tilgjengelig på Compute Engine. | Støttet | Støttet MED TCP sockets | Støttet MED TCP sockets | Bruk -instances_metadata flagg. Lær mer. |
Se eksempler på påkallinger og tilkoblingsstrenger.
Holde Cloud SQL Auth proxy up-to-date
Google utgir av og til nye versjoner av Cloud SQL Auth proxy. Du kan se hva thecurrent versjon er ved å sjekke theCloud SQL Auth proxy GitHub utgivelser side.Fremtidige proxy utgivelser vil også bli notert igoogle Grupper Cloud SQL kunngjør forum.
API-bruk
Cloud SQL Auth proxy utsteder forespørsler til Cloud SQL Admin API. Disse forespørslene teller MOT API-kvoten for prosjektet.
den høyeste API-bruken oppstår når Du starter Cloud SQL Auth proxy; dette er spesielt santhvis du bruker automatisk forekomstoppdagelse eller parameteren -projects
. Mens theCloud SQL Auth proxy kjører, utsteder det 2 API-anrop per time per tilkoblet forekomst.
om å opprette en spesiell brukerkonto for Cloud SQL Auth proxy
når du kobler til forekomsten din ved Hjelp Av Cloud SQL Auth proxy, gir du en brukerkontosom brukes til å logge på forekomsten. Du kan bruke en hvilken som helst database brukerkontofor dette formålet. Men Fordi Cloud SQL Auth proxy alltid kobles fra en hostnamethat ikke kan nås med unntak Av Cloud SQL Auth proxy, kan du opprette en brukerkonto thatcan brukes bare Av Cloud SQL Auth proxy. Fordelen med å gjøre dette er at du kanspesifiser denne kontoen uten et passord uten å kompromittere sikkerheten til din forekomst eller dine data.
hvis du vil opprette en brukerkonto for Cloud SQL Auth proxy-tilkoblinger, angir du vertsnavnet som'cloudsqlproxy~'
. DU kan også bruke IP-adressenwildcard, som vil resultere i 'cloudsqlproxy~%'
. Det fulle brukernavnetville være:
''@'cloudsqlproxy~%'
eller
''@'cloudsqlproxy~'
Hvis du vil ha hjelp med å opprette en bruker, kan Du se Opprette Og Administrere Brukere.Hvis du vil ha informasjon om Hvordan Cloud SQL fungerer med brukerkontoer, kan Du se Brukere. For informasjon Om MySQL brukerkontoer, seforsikre De Første MySQL-Kontoene i Themysql-Dokumentasjonen.
Cloud SQL Auth proxy parametere og flagg
Cloud SQL Auth proxy godtar flere flagg og parametere når den startes. Theseoptions bestemme hvor OG hvordan Cloud SQL Auth proxy oppretter sockets den bruker forcommunicating Med Cloud SQL, og hvordan det godkjennes.
hvis du vil ha hjelp med cloud SQL Auth proxy-alternativer, kan du se følgende informasjon:
- alternativer for godkjenning Av Cloud SQL Auth proxy
- Alternativer for å spesifisere Cloud SQL-forekomster
- eksempel Cloud SQL Auth proxy-påkallinger
- Cloud SQL AUTH proxy-hjelp, vises med
./cloud_sql_proxy -help
HVORDAN SIKRING brukes med Cloud SQL Auth proxy
SIKRING står for «Filsystem I User Space».Avhengig av Hvordan Cloud SQL Auth proxy er påberopt, kan den valgfritt bruke FUSE til å opprette sockets den bruker til å koble Til Cloud SQL.
når du kobler Fra Compute Engine eller lokale utviklingsmiljøer, bruker clouds SQL Auth proxy FUSE for å få Tilgang Til Cloud SQL-forekomster som følger:
-
katalogen» / cloudsql » er montert Som Et Filsystem I Userspace, orFUSE, Av Cloud SQL Auth proxy.
-
en prosess (for eksempel
mysql
) forsøker å slå opp en fil med navnet $INSTANCE. -
Cloud SQL Auth proxy avskjærer forespørselen og returnerer at
/cloudsql/$INSTANCE
er asymbolsk lenke som peker På En Unix-kontakt som ligger andre steder på filsystemet. -
prosessen (for eksempel
mysql
) følger lenken og åpner Unix-socketat Den fører til og forbinder.
Installere FUSE
For Linux:
FUSE krever programmet fusermount
og en kjernemodul, tofunction. Du kan sjekke om dette programmet er installert ved å se etterfil, /dev/fuse/
. Hvis fusermount
ikke er på systemet ditt, kan du installere det ved å bruke pakkebehandleren eller kompilere den fra kilden.
for macOS:
Installer SIKRING for macOS.
Bruke Cloud SQL Auth proxy i et produksjonsmiljø
Når Du bruker Cloud SQL Auth proxy i et produksjonsmiljø, er det noen skritt du kan ta for å sikre At Cloud SQL Auth proxy gir nødvendigtilgjengelighet for programmet.
Kontroller At Cloud SQL Auth-proxyen kjøres som en vedvarende tjeneste
Hvis Cloud SQL Auth-proxyprosessen stoppes, blir alle eksisterende tilkoblinger gjennom Den slettet, og programmet kan ikke opprette flere tilkoblinger til cloud SQL-forekomsten med CLOUD SQL Auth-proxyen. For å forhindre dette scenariet, må du sørge forkjør Cloud SQL Auth proxy som en vedvarende tjeneste, slik at Hvis Cloud SQL Auth proxy avsluttes for anyreason, startes den automatisk på nytt. Dette kan oppnås ved å bruke aservice som systemd
, upstart
eller supervisor
. For Windows operatingsystem, kjør Cloud SQL Auth proxy som En Windows-Tjeneste. Generelt må Du kontrollere At Cloud SQL Auth proxy harde samme oppetidskravene som søknadsprosessen.
Hvor mange kopier Av Cloud SQL Auth proxy søknaden din trenger
det er ikke nødvendig å opprette en proxy-prosess for hver søknadsprosess; manyapplication-prosesser kan dele en Enkelt CLOUD SQL Auth proxy-prosess. Kjør EN Cloud SQL Auth proxy clientprosess per arbeidsstasjon eller virtuell maskin.
hvis du bruker automatisk skalering for virtuelle maskiner, må Du sørge for At Cloud SQL Auth proxyer inkludert i din virtuelle maskinkonfigurasjon, slik at når en nyvirtuell maskin startes, har den sin egen CLOUD SQL Auth proxy-prosess.
det er opp til deg å administrere hvor mange tilkoblinger programmet krever, enten ved å begrense eller samle tilkoblingene. Cloud SQL Auth proxy plasserer ikke noenbegrensninger på nye tilkoblingshastigheter eller vedvarende tilkoblingsantall.
Redusere Cloud SQL Auth proxy-utgang
hvis du trenger å redusere størrelsen På Cloud SQL Auth proxy-loggen, kan du gjøre det ved å sette-verbose=false
når Du starter Cloud SQL Auth proxy. Vær imidlertid oppmerksom på at doingso reduserer effektiviteten Til Cloud SQL Auth proxy-utgangen ved diagnostisering av connectionissues.
hvordan failover påvirker Cloud SQL Auth proxy
hvis Du kjører Cloud SQL Auth proxy på En forekomst som er konfigurert For Høy Tilgjengelighet,og det oppstår en failover, påvirkes tilkoblinger via Cloud SQL Auth proxy på samme måte som tilkoblinger OVER IP: alle eksisterende tilkoblinger går tapt, og programmetmå etablere nye tilkoblinger. Imidlertid er det ikke nødvendig med manuell inngrep; søknaden kan fortsette å bruke de samme tilkoblingsstrengene det var før.
Holde Cloud SQL Auth proxy Docker-bildet oppdatert
Cloud SQL Auth proxy Docker-bildet er basert på en bestemt versjon av Cloud SQL Auth proxy.Når en ny versjon av Cloud SQL Auth proxy blir tilgjengelig, trekker du den nyeversjon Av Cloud SQL Auth proxy Docker-bildet for å holde miljøet oppdatert. Youcan se den gjeldende versjonen av Cloud SQL Auth proxy ved å sjekke theCloud SQL Auth proxy GitHub utgivelser side.
- Lær mer om Cloud SQL Auth proxy.