om molnet SQL Auth proxy

MySQL | PostgreSQL | SQL Server

denna sida ger en grundläggande introduktion till molnet SQL Auth proxy, och beskriver theproxy alternativ.

för steg-för-steg-instruktioner om hur du använder Cloud SQL Auth proxy, följ länkenför din miljö:

  • Snabbstart för att använda molnet SQL Auth proxy
  • hur man ansluter med molnet SQL Auth proxy
  • hur man ansluter med molnet SQL Auth proxy från GKE

du behöver inte använda molnet SQL Auth proxy eller konfigurera SSL toconnect till molnet SQL från App Engine standardeller ansluta till molnet SQL från appen motor flexibel miljö.

prova själv

om du är ny på Google Cloud, skapa ett konto för att utvärdera hur Cloud SQL presterar i verkliga scenarier. Nya kunder får också $300 i Gratis Krediter för att köra, testa och distribuera arbetsbelastningar.

prova Cloud SQL free

vad molnet SQL Auth proxy ger

molnet SQL Auth proxy ger säker åtkomst till dina instanser utanbehovet av auktoriserade nätverkeller för att konfigurera SSL.

åtkomst till din Cloud SQL-instans med Cloud SQL Auth-proxy erbjuder följande fördelar:

  • säkra anslutningar: molnet SQL Auth proxy krypterar automatiskt trafik till och fromthe databas med TLS 1.2 med en 128-bitars AES chiffer; SSL-certifikatanvänds för att verifiera klient-och serveridentiteter.
  • enklare anslutningshantering: molnet SQL Auth proxy hanterar autentisering withCloud SQL, ta bort behovet av att ge statiska IP-adresser.

Cloud SQL Auth-proxyn tillhandahåller inte en ny anslutningsväg; den förlitar sig på befintlig IP-anslutning. För att ansluta till en Cloud SQL-instans medprivate IP måste Cloud SQL Auth-proxy vara på en resurs med åtkomst till samma VPC-nätverk som instansen.

hur molnet SQL Auth proxy fungerar

molnet SQL Auth proxy fungerar genom att ha en lokal klient runningi den lokala miljön. Din ansökan kommunicerar med molnet SQL Auth proxywith standard databasprotokoll som används av din databas. Cloud SQL Auth proxy använderen säker tunnel för att kommunicera med sin följeslagare som körs på servern.

medan proxyen kan lyssna på vilken port som helst, skapar den bara utgående anslutningar tilldin Cloud SQL-instans på port 3307. Om du har en utgående brandväggspolicy, se till att den tillåter anslutningar till port 3307 på din Cloud SQLinstance IP.

följande diagram visar hur Cloud SQL Auth proxy ansluter till Cloud SQL:

Diagram över molnet SQL Auth proxy anslutning från klientprogramvara till SQL instans

krav för att använda molnet SQL Auth proxy

för att använda molnet SQL Auth proxy, måste du uppfylla följande krav:

  • Cloud SQL Admin API måste vara aktiverat.
  • du måste tillhandahålla Cloud SQL Auth-proxy withGoogle Cloud-autentiseringsuppgifter.
  • du måste tillhandahålla Cloud SQL Auth-proxy med ett giltigt databasanvändarkonto och lösenord.
  • instansen måste antingen ha en offentlig IPv4-adress eller konfigureras för att använda privat IP.

    den offentliga IP-adressen behöver inte vara tillgänglig för någon extern adress(den behöver inte läggas till som en auktoriserad nätverksadress).

Cloud SQL Auth proxy startalternativ

när du startar Cloud SQL Auth proxy, ger du den följande information:

  • vilka moln SQL-instanser för att upprätta anslutningar till
  • där det kommer att lyssna på data som kommer från din applikation som ska skickas till Cloud SQL
  • där den hittar de referenser som den kommer att använda för att autentisera dinapplikation till Cloud SQL
  • om det behövs, vilken IP-adresstyp som ska användas.

moln SQL Auth proxy startalternativ du anger avgöra om det kommer att lyssna på en TCPport eller på en Unix-uttag. Om det lyssnar på ett Unix-uttag skapar detsocket på den plats du väljer; vanligtvis /cloudsql/ katalogen.För TCP lyssnar Cloud SQL Auth proxy på localhost som standard.

kör cloud_sql_proxy körbar med argumentet --help toview den fullständiga listan över startalternativ.

du kan installera Cloud SQL Auth proxy var som helst i din lokala miljö. Platsen för Cloud SQL Auth proxy-binärer påverkar inte var den lyssnar på data från din ansökan.

använda ett servicekonto för autentisering

Cloud SQL Auth proxy kräver autentisering. Fördelen med att använda ett servicekonto förDetta syfte är att du kan skapa en referensfil specifikt förcloud SQL Auth proxy, och den är uttryckligen och permanent kopplad till Cloud SQL Auth proxy så länge den körs. Av detta skäl är användning av ett servicekonto den rekommenderade metoden för productioninstances som inte körs på en Compute Engine-instans.

referensfilen kan dupliceras i en systembild om du behöver invokethe Cloud SQL Auth proxy från flera maskiner.

för att använda den här metoden måste du skapa och hantera referensfilen. Endast användare med behörigheten resourcemanager.projects.setIamPolicy (t.ex. projektägare) kan skapa tjänstekontot. Om yourGoogle Cloud användaren inte har denna behörighet, du måste ha someoneelse skapa tjänsten konto för dig, eller använda en annan metod toautenticate molnet SQL Auth proxy.

hjälp med att skapa en referensfil finns i skapa ett servicekonto.

nödvändiga behörigheter för servicekonton

när du använder ett servicekonto för att tillhandahålla autentiseringsuppgifterna för Cloud SQL Auth-proxyn måste du skapa den med tillräckliga behörigheter. Om du använder rollerna finer-grainedIdentity Access and Management (iam) för att hantera yourCloud SQL-behörigheter måste du ge servicekontot en roll som innehåller behörigheten cloudsql.instances.connect. De fördefinierade clouds SQL-roller som innehåller denna behörighet är:

  • Cloud SQL Client
  • Cloud SQL Editor
  • Cloud SQL Admin

om du använder de äldre projektrollerna (Viewer, Editor, Owner) måste serviceaccount ha åtminstone Redigeringsrollen.

alternativ för att ange Cloud SQL-instanser

det finns flera sätt att berätta för Cloud SQL Auth-proxy vilka instanser du villansluta till. Vissa är explicita och andra är implicita. I vissa konfigurationer behöver du inte berätta för molnet SQL Auth proxy i förväg vilka instanser du vill anslutatill, eftersom molnet SQL Auth proxy ansluter baserat på anslutningsförfrågningar.

dina alternativ till exempel specifikation beror på ditt operativsystem andenvironment:

alternativ fördelar varningar och krav Linux/macOS
(Unix-uttag)
Java Windows anteckningar
säkring
(filsystem i användarutrymme)
dynamiskt uttag skapas baserat på anslutningsförfrågningar; ingen proxy startas om när instanser ändras. säkring måste installeras. stöds Nej Nej använd -fuse flagga.
Automatisk instans upptäckt inget behov av att ange instanser; sockets skapas för alla instanser i standardprojekt. Cloud SQL Auth proxy API-användning ökar. Måste ha Cloud SDK installerat och autentiserat, med en standardprojektuppsättning. Måste starta om Cloud SQL Auth proxy för att lägga till ny instans. stöds Nej Nej rekommenderas inte för produktionsinstanser.
Project discovery inget behov av att ange instanser; sockets skapas för alla instanser i angivna projekt. Cloud SQL Auth proxy API-användning ökar. Måste ha Cloud SDK installerat och autentiserat. Måste starta om Cloud SQL Auth proxy för att lägga till ny instans. stöds Nej Nej använd -projects parameter. Rekommenderas inte för produktionsinstanser.
instanser som anges på Cloud SQL Auth proxy anrop instans lista känd och statisk. måste starta om Cloud SQL Auth proxy för att lägga till ny instans. stöds stöds med TCP sockets stöds med TCP sockets använd -instances parameter. För flera instanser, använd en kommaseparerad lista, utan mellanslag. Läs mer.
instanser som anges med Compute Engine metadata Instanslista kan uppdateras genom att ändra metadatavärdet utan att starta om molnet SQL Auth proxy. endast tillgänglig på Compute Engine. stöds stöds med TCP-uttag stöds med TCP-uttag använd -instances_metadata flagga. Läs mer.

se exempel på anrop och anslutningssträngar.

att hålla molnet SQL Auth proxy up-to-date

Google släpper ibland nya versioner av molnet SQL Auth proxy. Du kan se vad thecurrent version är genom att kontrollera theCloud SQL Auth proxy GitHub släpper sida.Framtida proxy-utgåvor kommer också att noteras iGoogle Groups Cloud SQL announce forum.

API-användning

molnet SQL Auth proxy frågor förfrågningar till molnet SQL Admin API. Dessa begäranden räknas mot API-kvoten för ditt projekt.

den högsta API-användningen sker när du startar Cloud SQL Auth proxy; detta är särskilt santom du använder automatisk instans upptäckt eller parametern -projects. Medan theCloud SQL Auth proxy körs, utfärdar den 2 API-samtal per timme per ansluten instans.

om att skapa ett speciellt användarkonto för molnet SQL Auth proxy

när du ansluter till din instans med molnet SQL Auth proxy, ger du ett användarkontosom används för att logga in på instansen. Du kan använda vilket databasanvändarkonto som helstför detta ändamål. Eftersom Cloud SQL Auth proxy alltid ansluter från ett värdnamnsom inte kan nås förutom av Cloud SQL Auth proxy, kan du skapa ett användarkonto som endast kan användas av Cloud SQL Auth proxy. Fördelen med att göra detta är att du kanAnge detta konto utan lösenord utan att äventyra säkerheten för din instans eller dina data.

om du vill skapa ett användarkonto för Cloud SQL Auth-proxyanslutningar anger du värdnamnet som'cloudsqlproxy~'. Du kan också använda IP-adressenwildcard, vilket skulle resultera i 'cloudsqlproxy~%'. Det fullständiga användarkontonamnetskulle vara:

''@'cloudsqlproxy~%'

eller

''@'cloudsqlproxy~'

för hjälp med att skapa en användare, se Skapa och hantera användare.Information om hur Cloud SQL fungerar med användarkonton finns i användare. För information om MySQL-användarkonton, sesäkerställa de första MySQL-kontona i Themysql-dokumentationen.

Cloud SQL Auth proxy parametrar och flaggor

Cloud SQL Auth proxy accepterar flera flaggor och parametrar när den startas. Dessa alternativ bestämmer var och hur Cloud SQL Auth-proxyn skapar de uttag som den använder för att kommunicera med Cloud SQL och hur den autentiserar.

för hjälp med Cloud SQL Auth proxyalternativ, se följande information:

  • alternativ för att autentisera molnet SQL Auth proxy
  • alternativ för att ange moln SQL instanser
  • exempel Cloud SQL Auth proxy anrop
  • Cloud SQL Auth proxy GitHub sida
  • molnet SQL Auth proxy hjälp, visas med./cloud_sql_proxy -help

hur säkring används med Cloud SQL Auth proxy

säkring står för”filsystem i användarutrymme”.Beroende på hur molnet SQL Auth proxy åberopas, det kanoptionellt använda säkring för att skapauttagen som den använder för att ansluta till Cloud SQL.

när du ansluter från Compute Engine eller lokala utvecklingsmiljöer använder theCloud SQL Auth proxy FUSE för att komma åt Cloud SQL-instanser enligt följande:

  • katalogen ”/ cloudsql ” är monterad som ett filsystem i användarrymden, orFUSE, av Cloud SQL Auth proxy.

  • en process (till exempel mysql) försöker slå upp en fil med namnet $INSTANCE.

  • Cloud SQL Auth proxy avlyssnar begäran och returnerar att /cloudsql/$INSTANCE är asymbolisk länk som pekar på ett Unix-uttag som finns någon annanstans på filsystemet.

  • processen (till exempel mysql) följer länken och öppnar Unix-socketatt det leder till och ansluter.

installera säkring

för Linux:

säkring kräver programmet fusermount och en kärnmodul, tofunction. Du kan kontrollera om det här programmet är installerat genom att leta efter thefile, /dev/fuse/. Om fusermount inte finns på ditt system kan du installera detmed din pakethanterare eller kompilera den från källan.

för macOS:

installera säkring för macOS.

använda Cloud SQL Auth-proxy i en produktionsmiljö

när du använder Cloud SQL Auth-proxy i en produktionsmiljö finns det några steg du kan ta för att säkerställa att Cloud SQL Auth-proxy ger den nödvändiga tillgängligheten för din applikation.

se till att Cloud SQL Auth proxy körs som en beständig tjänst

om Cloud SQL Auth proxy processen stoppas, alla befintliga anslutningar genom det aredropped, och ditt program kan inte skapa några fler anslutningar tillcloud SQL instans med Cloud SQL Auth proxy. För att förhindra detta scenario, se till attkör molnet SQL Auth proxy som en beständig tjänst, så att om molnet SQL Auth proxy avslutas för anyreason, startas den automatiskt om. Detta kan åstadkommas genom att använda aservice som systemd, upstart eller supervisor. För Windows operatingsystem, kör Cloud SQL Auth proxy som en Windows-tjänst. I allmänhet, se till att Cloud SQL Auth proxy harsamma upptidskrav som din ansökningsprocess.

hur många kopior av Cloud SQL Auth proxy din ansökan behöver

det finns inget behov av att skapa en proxy process för varje applikationsprocess; manyapplication processer kan dela en enda Cloud SQL Auth proxy process. Kör ett moln SQL Auth proxy Client per arbetsstation eller virtuell maskin.

om du använder automatisk skalning för virtuella maskiner, se till att Cloud SQL Auth proxy ingår i din virtuella maskinkonfiguration, så att när en nyvirtuell maskin startas har den sin egen Cloud SQL Auth proxy-process.

det är upp till dig att hantera hur många anslutningar din ansökan kräver,antingen genom att begränsa eller slå samman anslutningarna. Cloud SQL Auth proxy placerar inte någonbegränsningar på nya anslutningshastigheter eller ihållande anslutningsantal.

minska Cloud SQL Auth proxy output

om du behöver minska storleken på Cloud SQL Auth proxy log kan du göra det genom att ställa in-verbose=false när du startar Cloud SQL Auth proxy. Tänk dock på att doingso minskar effektiviteten hos Cloud SQL Auth proxy-utgången vid diagnos av anslutningsproblem.

hur failover påverkar molnet SQL Auth proxy

om du kör molnet SQL Auth proxy på en instans konfigurerad för hög tillgänglighet,och en failover inträffar, anslutningar via molnet SQL Auth proxy påverkas på samma sättsom anslutningar över IP: alla befintliga anslutningar går förlorade, och programmåste upprätta nya anslutningar. Ingen manuell åtgärd krävs dock; applikationen kan fortsätta använda samma anslutningssträngar som tidigare.

att hålla molnet SQL Auth proxy Docker bilden uppdaterad

molnet SQL Auth proxy Docker bilden är baserad på en specifik version av molnet SQL Auth proxy.När en ny version av Cloud SQL Auth proxy blir tillgänglig, dra den nyaversionen av Cloud SQL Auth proxy Docker-bilden för att hålla din miljö uppdaterad. Dukan se den aktuella versionen av molnet SQL Auth proxy genom att kontrollera Cloud SQL Auth proxy GitHub släpper sida.

  • Läs mer om Cloud SQL Auth proxy.

Lämna ett svar

Din e-postadress kommer inte publiceras.