Questa pagina descrive come creare un'istanza Cloud SQL per PostgreSQL.
Per informazioni dettagliate su tutte le impostazioni delle istanze, consulta Impostazioni delle istanze.
Un'istanza appena creata ha un database postgres
.
Prima di iniziare
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Assicurati di disporre dei ruoli Amministratore Cloud SQL e Visualizzatore di Compute sul
tuo account utente.
Scopri di più su ruoli e autorizzazioni.
Crea un'istanza PostgreSQL
Console
-
Nella console Google Cloud, vai alla pagina Istanze Cloud SQL.
- Fai clic su Crea istanza.
- Nel riquadro Scegli il tuo motore del database della pagina Crea un'istanza, fai clic su Scegli PostgreSQL.
- Nel campo ID istanza del riquadro Informazioni sull'istanza, inserisci un ID per l'istanza.
Non è necessario includere l'ID progetto nel nome dell'istanza. L'operazione viene eseguita automaticamente appropriato (ad esempio, nei file di log).
- Inserisci una password per l'utente
postgres
. (Facoltativo) Configura un criterio per le password per l'istanza come segue:
- Seleziona la casella di controllo Abilita criteri per le password.
- Fai clic sul pulsante Imposta criterio per le password, imposta una o più delle seguenti opzioni e fai clic su Salva.
- Lunghezza minima: specifica il numero minimo di caratteri che deve avere la password.
- Complessità della password: controlla se la password è un combinazione di lettere minuscole, maiuscole, numeri e non alfanumerici caratteri.
- Limita il riutilizzo della password: specifica il numero di password precedenti che non puoi riutilizzare.
- Non consentire il nome utente: impedisce l'utilizzo del nome utente nella password.
- Imposta intervallo di modifica della password: specifica il numero minimo di ore dopodiché potrai cambiare la password.
- Seleziona la versione del database per l'istanza: PostgreSQL 16 (predefinito), PostgreSQL 15,
PostgreSQL 14, PostgreSQL 13, PostgreSQL 12, PostgreSQL 11, PostgreSQL 10 o PostgreSQL 9.6.
La versione del database non può essere modificata dopo la creazione dell'istanza.
- Seleziona la versione Cloud SQL per l'istanza:
Enterprise
oEnterprise plus
. Per ulteriori informazioni sulle versioni di Cloud SQL, consulta Introduzione alle versioni di Cloud SQL. - Nella sezione Scegli la disponibilità per regione e zona, seleziona la regione
e la zona per l'istanza.
La disponibilità per regione potrebbe variare in base a
Cloud SQL. Per ulteriori informazioni, vedi Informazioni sulle impostazioni delle istanze.
Posiziona l'istanza nella stessa regione delle risorse che accedono. La regione selezionata non può essere modificata in futuro. Nella maggior parte dei casi, casi, non devi specificare una zona.
Se stai configurando la tua istanza per alta disponibilità, è possibile selezionare una zona principale e una secondaria.
Quando la zona secondaria viene utilizzata durante la creazione dell'istanza, si applicano le seguenti condizioni:
- La zona predefinita è
Any
per la zona principale eAny (different from primary)
per la zona secondaria. - Se sono specificate sia la zona principale che quella secondaria, devono essere zone distinte.
- La zona predefinita è
- Nella sezione Personalizza la tua istanza, aggiorna le impostazioni per la tua istanza.
Per iniziare, fai clic su MOSTRA OPZIONI DI CONFIGURAZIONE per visualizzare i gruppi di impostazioni. Quindi, espandi i gruppi che ti interessano per esaminare e personalizzare le impostazioni.
A destra viene visualizzato un riepilogo di tutte le opzioni selezionate.
La personalizzazione di queste impostazioni dell'istanza è facoltativa. I valori predefiniti vengono assegnati
in tutti i casi in cui non vengono apportate personalizzazioni.
La tabella seguente è un riferimento rapido alle impostazioni delle istanze. Per maggiori dettagli su ciascuna impostazione, consulta la pagina delle impostazioni dell'istanza.
Impostazione Note Tipo di macchina Tipo di macchina Scegli tra Core condiviso o Core dedicato. Per core condiviso, ogni tipo di macchina è classificato in base al numero di CPU (core) e quantità di memoria per l'istanza. Core Il numero di vCPU per l'istanza. Scopri di più. Memoria La quantità di memoria per la tua istanza, in GB. Scopri di più. Personalizzato Per il tipo di macchina con core dedicato, invece di selezionare una configurazione predefinita, seleziona il pulsante Personalizzato per creare un'istanza una configurazione personalizzata. Quando selezioni questa opzione, devi selezionare il numero di core e la quantità di memoria per l'istanza. Scopri di più. Spazio di archiviazione Tipo di archiviazione Determina se l'istanza utilizza l'archiviazione SSD o HDD. Scopri di più. Capacità dello spazio di archiviazione La quantità di spazio di archiviazione di cui è stato eseguito il provisioning per l'istanza. Scopri di più. Abilita aumenti automatici dello spazio di archiviazione Determina se Cloud SQL fornisce automaticamente più spazio di archiviazione per la tua istanza quando lo spazio libero è insufficiente. Scopri di più. Crittografia Crittografia gestita da Google L'opzione predefinita. Chiave di crittografia gestita dal cliente (CMEK) Seleziona per utilizzare la chiave con Google Cloud Key Management Service. Scopri di più. Connessioni IP privato Aggiunge un indirizzo IP privato per la tua istanza. Per abilitare la connessione all'istanza, è necessaria un'ulteriore configurazione.
Se vuoi, puoi specificare un intervallo IP allocato da utilizzare per le connessioni delle tue istanze.- Espandi Mostra opzione intervallo IP allocato.
- Seleziona un intervallo IP dal menu a discesa.
L'istanza può avere un indirizzo IP pubblico e uno privato.
- Scopri di più sull'utilizzo dell'IP privato.
- Scopri di più sugli intervalli di indirizzi IP allocati.
IP pubblico Aggiunge un indirizzo IP pubblico per l'istanza. Dopodiché potrai aggiungere reti autorizzate per connetterti all'istanza. L'istanza può avere sia un indirizzo IP pubblico che uno privato.
Scopri di più sull'utilizzo dell'IP pubblico.
Reti autorizzate Aggiungi il nome della nuova rete e l'indirizzo di rete. Scopri di più. Percorso privato per i servizi Google Cloud Se selezioni questa casella di controllo, consenti ad altri servizi Google Cloud, come BigQuery, di accedere ai dati in Cloud SQL ed eseguire query su questi dati tramite una connessione privata.
Protezione dei dati Backup automatici La finestra di tempo in cui vuoi iniziare i backup. Scopri di più. Scegli dove archiviare i tuoi backup Seleziona Più regioni per la maggior parte dei casi d'uso. Se devi archiviare i backup in una regione specifica, ad esempio per motivi normativi, seleziona Regione e la tua regione dal menu a discesa Posizione. Scegli quanti backup automatici archiviare Il numero di backup automatici da conservare (da 1 a 365 giorni). Scopri di più. Abilita recupero point-in-time Abilita il recupero point-in-time e il logging write-ahead. Scopri di più. Attiva la protezione da eliminazione Determina se proteggere un'istanza dall'eliminazione accidentale. Scopri di più. Scegli il numero di giorni di log da conservare Configura la conservazione dei log write-ahead da 1 a 7 giorni. L'impostazione predefinita è 7 giorni. Scopri di più. Manutenzione Finestra preferita Determina una finestra di un'ora in cui Cloud SQL può eseguire in modo invasivo la manutenzione dell'istanza. Se non imposti la finestra, la manutenzione fastidiosa può essere eseguita in qualsiasi momento. Scopri di più. Ordine degli aggiornamenti Le tempistiche preferite per gli aggiornamenti delle istanze rispetto ad altre istanze nello stesso progetto. Scopri di più. Flag AGGIUNGI NOTIFICA Puoi utilizzare i flag del database per controllare le impostazioni e i parametri della tua istanza. Scopri di più. Etichette AGGIUNGI ETICHETTA Aggiungi una chiave e un valore per ogni etichetta aggiunta. Le etichette aiutano a per organizzare le istanze. Cache di dati (Facoltativo) Abilita la cache dei dati Attiva la cache dei dati per le istanze Cloud SQL per PostgreSQL versione Enterprise Plus. Per ulteriori informazioni sulla cache dei dati, consulta la sezione cache di dati. -
Fai clic su Crea istanza.
Nota: la creazione dell'istanza potrebbe richiedere alcuni minuti. Tuttavia, puoi visualizzare le informazioni sull'istanza durante la sua creazione.
Per visualizzare la password in testo non crittografato, fai clic sull'icona Mostra password.
Puoi inserire la password manualmente o fare clic su Genera. in modo che Cloud SQL crei automaticamente una password.
gcloud
Per informazioni su come installare e iniziare a utilizzare l'interfaccia a riga di comando gcloud, consulta Installazione dell'interfaccia a riga di comando gcloud. Per informazioni su avvia Cloud Shell, documentazione di Cloud Shell.
- Utilizza il comando
gcloud sql instances create
per creare l'istanza: - Le vCPU devono essere 1 o un numero pari compreso tra 2 e 96.
- La memoria deve essere:
- Da 0,9 a 6,5 GB per vCPU
- Un multiplo di 256 MB
- Almeno 3,75 GB (3840 MB)
- Le zone devono essere zone valide.
- Se viene specificata la zona secondaria, è necessario specificare anche quella principale.
- Se le zone principali e secondarie sono specificate, devono essere zone distinta
- Se vengono specificate la zona primaria e la zona secondaria, devono appartenere a la stessa regione.
- Utilizzi il parametro
--no-assign-ip
. - Utilizza il parametro
--network
per specificare il nome della rete VPC che vuoi utilizzare per creare una connessione privata. GOOGLE_MANAGED_INTERNAL_CA
: questo è il valore predefinito. Con questa opzione, una CA interna dedicata a ogni istanza Cloud SQL firma il certificato server per quell'istanza.GOOGLE_MANAGED_CAS_CA
: con questa opzione, una gerarchia di CA composta da una CA radice e da una CA del server gestite da Cloud SQL e ospitate su Viene utilizzato Google Cloud Certificate Authority Service (CA Service). Le CA del server subordinate di una regione firmano i certificati del server e vengono condivise tra più istanze nella regione.- Le zone devono essere zone valide.
- Se viene specificata la zona secondaria, è necessario specificare anche quella principale.
- Prendi nota dell'indirizzo IP assegnato automaticamente.
Se non utilizzi il proxy di autenticazione Cloud SQL, utilizzerai questo indirizzo come indirizzo dell'host utilizzato dalle tue applicazioni o dai tuoi strumenti per connettersi all'istanza.
- Imposta la password per l'utente
postgres
:gcloud sql users set-password postgres \ --instance=INSTANCE_NAME \ --password=PASSWORD
Per le istanze della versione Cloud SQL Enterprise Plus:
gcloud sql instances create INSTANCE_NAME \ --database-version=DATABASE_VERSION \ --region=REGION \ --tier=TIER \ --edition=ENTERPRISE_PLUS
Per le istanze della versione Cloud SQL Enterprise:
gcloud sql instances create INSTANCE_NAME \ --database-version=DATABASE_VERSION \ --region=REGION \ --cpu=NUMBER_CPUS \ --memory=MEMORY_SIZE \ --edition=ENTERPRISE
--tier
se scegli db-f1-micro o
db-g1-small come il tipo di macchina:
gcloud sql instances create INSTANCE_NAME \ --tier=API_TIER_STRING \ --region=REGION
Esistono limitazioni sui valori per le vCPU e le dimensioni della memoria:
Ad esempio, il comando seguente crea un'istanza della versione Cloud SQL Enterprise con due vCPU 7.680 MB di memoria:
gcloud sql instances create myinstance \ --database-version=POSTGRES_15 \ --cpu=2 \ --memory=7680MB \ --region=us-central1
Il seguente comando crea un'istanza della versione Enterprise Plus di Cloud SQL con quattro core:
gcloud sql instances create myinstance \ --database-version=POSTGRES_15 \ --tier=db-perf-optimized-N-4 \ --edition=ENTERPRISE_PLUS \ --region=us-central1
--cpu
e --memory
, consulta Configurazione di istanze personalizzate.
Il valore predefinito per REGION è us-central1
.
Non includere informazioni sensibili o che consentono l'identificazione personale
nel nome della tua istanza; è visibile all'esterno.
Non è necessario includere l'ID progetto nel nome dell'istanza. L'operazione viene eseguita automaticamente
appropriato (ad esempio, nei file di log).
Se stai creando un'istanza
alta disponibilità,
puoi specificare sia la zona primaria che la zona secondaria, utilizzando il parametro --zone
e --secondary-zone
. Le seguenti condizioni
si applica quando la zona secondaria viene utilizzata durante la creazione o la modifica dell'istanza:
Puoi aggiungere altri parametri per determinare altre impostazioni dell'istanza:
Impostazione | Parametro | Note |
---|---|---|
Parametri obbligatori | ||
Versione database | --database-version |
La versione del database, che è in base alla versione di Cloud SQL che utilizzi. |
Regione | --region |
Visualizza i valori validi. |
Imposta i criteri relativi alle password | ||
Abilita il criterio delle password | --enable-password-policy |
Quando è in uso, abilita il criterio delle password. Per impostazione predefinita, il criterio relativo alle password è disattivato.
Se disattivato usando il parametro --clear-password-policy , gli altri parametri dei criteri relativi alle password vengono reimpostati.
|
Lunghezza minima | --password-policy-min-length |
Specifica il numero minimo di caratteri che deve avere la password. |
Complessità della password | --password-policy-complexity |
Attiva il controllo della complessità della password per assicurarti che la password contenga uno di ciascuno di questi tipi di caratteri: minuscolo, maiuscolo, numerico e non alfanumerico. Imposta il valore su
COMPLEXITY_DEFAULT . |
Limita il riutilizzo della password | --password-policy-reuse-interval |
Specifica il numero di password precedenti che non puoi riutilizzare. |
Non consentire nome utente | --password-policy-disallow-username-substring |
Impedisce l'utilizzo del nome utente nella password. Utilizza le funzionalità di
--no-password-policy-disallow-username-substring
per disabilitare il controllo. |
Imposta l'intervallo di modifica delle password | --password-policy-password-change-interval |
Specifica la durata minima dopo la quale è possibile modificare la password, ad esempio 2 m per 2 minuti. |
Connettività | ||
IP privato | --network
|
--network : specifica il nome della rete VPC che preferisci
da utilizzare per questa istanza. L'accesso privato ai servizi deve essere già
configurate per la rete. Disponibile solo per il comando beta
(gcloud beta sql instances create ).
Questo parametro è valido solo se: Scopri di più su configurazione dell'IP privato. |
IP pubblico | --authorized-networks |
Per le connessioni con IP pubblico, solo le connessioni da reti autorizzate possono connettersi all'istanza. Scopri di più. |
Applicazione SSL |
|
Il parametro Il parametro |
Modalità CA server | --server-ca-mode |
Il flag L'utilizzo del flag |
Tipo di macchina e archiviazione | ||
Tipo di macchina | --tier |
Utilizzato per specificare un'istanza con core condiviso
(db-f1-micro
o db-g1-small ).
Per una configurazione dell'istanza personalizzata, utilizza i parametri --cpu o
--memory . Consulta la sezione
configurazione dell'istanza.
|
Tipo di archiviazione | --storage-type |
Determina se l'istanza utilizza l'archiviazione SSD o HDD. Scopri di più. |
Capacità dello spazio di archiviazione | --storage-size |
La quantità di spazio di archiviazione di cui è stato eseguito il provisioning per l'istanza, in GB. Scopri di più. |
Aumento automatico dello spazio di archiviazione | --storage-auto-increase |
Determina se Cloud SQL fornisce automaticamente più spazio di archiviazione dell'istanza quando lo spazio libero è in esaurimento. Scopri di più. |
Limite di aumento automatico dello spazio di archiviazione | --storage-auto-increase-limit |
Determina la dimensione dello spazio di archiviazione che Cloud SQL può aumentare automaticamente.
Disponibile solo per il comando beta
(gcloud beta sql instances create ).
Scopri di più.
|
Cache dati (facoltativa) | --enable-data-cache |
Attiva o disattiva la cache dei dati per le istanze. Per ulteriori informazioni, consulta la sezione sulla cache dei dati. |
Backup automatici e alta disponibilità | ||
Alta disponibilità | --availability-type |
Per un'istanza ad alta disponibilità, imposta REGIONAL .
Scopri di più.
|
Zona secondaria | --secondary-zone |
Se stai creando un'istanza per l'alta disponibilità, puoi specificare sia le zone principali che quelle secondarie utilizzando --zone e --secondary-zone parameters . La
le seguenti limitazioni si applicano quando la zona secondaria viene utilizzata durante
creazione o modifica dell'istanza:
Se vengono specificate la zona primaria e la zona secondaria, devono essere distinte zone. Se le zone principali e secondarie sono specificate, devono appartenere alla stessa regione. |
Backup automatici | --backup-start-time |
La finestra di tempo in cui vuoi iniziare i backup. Scopri di più. |
Impostazioni di conservazione per i backup automatici | --retained-backups-count |
Il numero di backup automatici da conservare. Scopri di più. |
Recupero point-in-time | --enable-point-in-time recovery |
Abilita il recupero point-in-time e il logging write-ahead. Scopri di più. |
Impostazioni di conservazione per il logging binario | --retained-transaction-log-days |
Il numero di giorni in cui conservare i log write-ahead per il recupero point-in-time.Scopri di più. |
Aggiungi flag di database | ||
Flag di database | --database-flags |
Puoi utilizzare i flag del database per controllare le impostazioni e i parametri della tua istanza. Scopri di più sui flag di database. |
Pianificazione della manutenzione | ||
Periodo di manutenzione | --maintenance-window-day ,
--maintenance-window-hour |
Determina una finestra di un'ora in cui Cloud SQL può eseguire manutenzioni interruttive sulla tua istanza. Se non imposti il periodo, la manutenzione interattiva può essere eseguita in qualsiasi momento. Scopri di più. |
Tempistica per manutenzione | --maintenance-release-channel |
Le tempistiche preferite per gli aggiornamenti delle istanze rispetto ad altre istanze nello stesso progetto. Utilizza preview per gli aggiornamenti precedenti
e production per quelli successivi.
Scopri di più.
|
Integrazione con Vertex AI | ||
--enable-google-ml-integration |
Consente alle istanze Cloud SQL di connettersi a Vertex AI per passare all'IA richieste per previsioni in tempo reale e insight. | |
--database-flags cloudsql.enable_google_ml_integration=on |
Attivando questo flag, Cloud SQL può integrarsi con Vertex AI. |
Terraform
Per creare un'istanza, utilizza una risorsa Terraform.
Applica le modifiche
Per applicare la configurazione Terraform a un progetto Google Cloud, completa i passaggi nella le sezioni seguenti.
Prepara Cloud Shell
- Avvia Cloud Shell.
-
Imposta il progetto Google Cloud predefinito dove vuoi applicare le configurazioni Terraform.
Devi eseguire questo comando una sola volta per progetto e puoi farlo in qualsiasi directory.
export GOOGLE_CLOUD_PROJECT=PROJECT_ID
Le variabili di ambiente vengono sostituite se imposti valori espliciti in Terraform di configurazione del deployment.
Prepara la directory
Ogni file di configurazione Terraform deve avere una directory (inoltre chiamato modulo principale).
-
In Cloud Shell, crea una directory e un nuovo
all'interno di quella directory. Il nome file deve avere l'estensione
.tf
, ad esempiomain.tf
. In questo tutorial, il file è denominatomain.tf
.mkdir DIRECTORY && cd DIRECTORY && touch main.tf
-
Se stai seguendo un tutorial, puoi copiare il codice campione in ogni sezione o passaggio.
Copia il codice di esempio nel file
main.tf
appena creato.Facoltativamente, copia il codice da GitHub. Opzione consigliata quando lo snippet Terraform fa parte di una soluzione end-to-end.
- Esamina e modifica i parametri di esempio da applicare al tuo ambiente.
- Salva le modifiche.
-
Inizializza Terraform. Devi eseguire questa operazione una sola volta per directory.
terraform init
Facoltativamente, per utilizzare la versione più recente del provider Google, includi
-upgrade
:terraform init -upgrade
Applica le modifiche
-
Rivedi la configurazione e verifica che le risorse che Terraform sta per creare o
aggiornare corrispondano alle tue aspettative:
terraform plan
Apporta le correzioni necessarie alla configurazione.
-
Applica la configurazione Terraform eseguendo questo comando e inserendo
yes
alla richiesta:terraform apply
Attendi finché Terraform non visualizzi il messaggio "Applicazione completata!". per creare un nuovo messaggio email.
- Apri il progetto Google Cloud per visualizzare i risultati. Nella console Google Cloud, vai alle risorse nell'interfaccia utente per assicurarti che Terraform le abbia create o aggiornate.
Elimina le modifiche
Per eliminare le modifiche:
- Per disattivare la protezione dell'eliminazione, imposta
l'argomento
deletion_protection
sufalse
nel file di configurazione Terraform.deletion_protection = "false"
- Applica la configurazione Terraform aggiornata eseguendo il comando seguente
inserendo
yes
alla richiesta:terraform apply
-
Rimuovi le risorse applicate in precedenza con la configurazione Terraform eseguendo il seguente comando e inserendo
yes
al prompt:terraform destroy
REST v1
Crea l'istanza
Questo esempio crea un'istanza. Sono inclusi anche alcuni parametri facoltativi, come i backup e la registrazione binaria. Per un elenco completo dei parametri per questa chiamata, consulta la pagina Instances:insert. Per informazioni sulle impostazioni delle istanze, inclusi i valori validi per la regione, consulta Impostazioni istanza.
Non includere informazioni sensibili o che consentono l'identificazione personale
nell'ID istanza; è visibile all'esterno.
Non è necessario includere l'ID progetto nel nome dell'istanza. L'operazione viene eseguita automaticamente
appropriato (ad esempio, nei file di log).
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- PROJECT_ID: il tuo ID progetto
- INSTANCE_ID: il tuo ID istanza
- REGION: la regione
- DATABASE_VERSION: stringa enum della versione del database (ad esempio,
POSTGRES_16
) - PASSWORD: la password dell'utente root
- MACHINE_TYPE: stringa enum del tipo di macchina (livello), ad esempio:
db-custom-[CPUS]-[MEMORY_MBS]
EDITION_TYPE: la tua versione di Cloud SQL
- (Facoltativo) DATA_CACHE_ENABLED: impostato su
true
per abilitare la cache dei dati per l'istanza - PRIVATE_NETWORK: specifica il nome della rete Virtual Private Cloud (VPC) che che vuoi utilizzare per questa istanza. L'accesso privato ai servizi deve essere già configurato per in ogni rete.
- AUTHORIZED_NETWORKS: per le connessioni con IP pubblico, specifica le connessioni da reti autorizzate che possono connettersi alla tua istanza.
- CA_MODE: specifica una
gerarchia di autorità di certificazione
per l'istanza,
GOOGLE_MANAGED_INTERNAL_CA
oGOOGLE_MANAGED_CAS_CA
. Se non specifichiserverCaMode
, la configurazione predefinita èGOOGLE_MANAGED_INTERNAL_CA
. Questa funzionalità è in Anteprima.
Per impostare un criterio per le password durante la creazione di un'istanza, includi il comando passwordValidationPolicy nella richiesta. Imposta i seguenti parametri, come richiesto:
enablePasswordPolicy
: attiva il criterio per le password se impostato sutrue
.Per rimuovere il criterio per le password, puoi utilizzare una richiesta
PATCH
connull
come valore perenablePasswordPolicy
. In questo caso, gli altri parametri dei criteri relativi alle password vengono reimpostati.minLength
: specifica il numero minimo di caratteri che deve avere la password.complexity
: controlla se la password è un combinazione di lettere minuscole, maiuscole, numeri e non alfanumerici caratteri. Il valore predefinito èCOMPLEXITY_DEFAULT
.reuseInterval
: specifica il numero di password precedenti che non puoi riutilizzare.disallowUsernameSubstring
: impedisce l'utilizzo del nome utente nella password se impostato sutrue
.passwordChangeInterval
: specifica la durata minima dopo la quale puoi cambiare la password. Il valore è in secondi con un massimo di nove cifre frazionarie, terminato das
. Ad esempio:3.5s
.
Per creare l'istanza in modo che possa integrarsi con Vertex AI, includi l'oggetto enableGoogleMlIntegration nella richiesta. Questa integrazione ti consente di applicare modelli linguistici di grandi dimensioni (LLM), ospitati in Vertex AI, a un database Cloud SQL per PostgreSQL.
Imposta i seguenti parametri, come richiesto:
enableGoogleMlIntegration
: quando questo parametro è impostato sutrue
, le istanze Cloud SQL possono connettersi a Vertex AI per trasmettere all'AI richieste di previsioni in tempo reale e approfondimenti.cloudsql.enable_google_ml_integration
: quando questo parametro è impostato suon
, Cloud SQL può essere integrato con Vertex AI
Metodo HTTP e URL:
POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances
Corpo JSON della richiesta:
{ "name": "INSTANCE_ID", "region": "REGION", "databaseVersion": "DATABASE_VERSION", "rootPassword": "PASSWORD", "settings": { "tier": "MACHINE_TYPE", "edition": "EDITION_TYPE", "enableGoogleMlIntegration": "true" | "false" "databaseFlags": [ { "name": "cloudsql.enable_google_ml_integration", "value": "on" | "off" } ] "dataCacheConfig" = { "dataCacheEnabled": DATA_CACHE_ENABLED }, "backupConfiguration": { "enabled": true }, "passwordValidationPolicy": { "enablePasswordPolicy": true "minLength": "MIN_LENGTH", "complexity": COMPLEXITY_DEFAULT, "reuseInterval": "REUSE_INTERVAL", "disallowUsernameSubstring": "DISALLOW_USERNAME_SUBSTRING", "passwordChangeInterval": "PASSWORD_CHANGE_INTERVAL" } "ipConfiguration": { "privateNetwork": "PRIVATE_NETWORK", "authorizedNetworks": [AUTHORIZED_NETWORKS], "ipv4Enabled": false, "enablePrivatePathForGoogleCloudServices": true, "serverCaMode": "CA_MODE" } } }
Per inviare la richiesta, espandi una delle seguenti opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_ID", "status": "PENDING", "user": "user@example.com", "insertTime": "2019-09-25T22:19:33.735Z", "operationType": "CREATE", "name": "OPERATION_ID", "targetId": "INSTANCE_ID", "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID", "targetProject": "PROJECT_ID" }
La risposta è un operazione a lunga esecuzione, il che potrebbe richiedere alcuni minuti.
Recupera l'indirizzo IPv4
Recupera l'indirizzo IPv4 assegnato automaticamente per la nuova istanza:
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- project-id: il tuo ID progetto
- instance-id: l'ID istanza creato nel passaggio precedente
Metodo HTTP e URL:
GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id
Per inviare la richiesta, espandi una delle seguenti opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "kind": "sql#instance", "state": "RUNNABLE", "databaseVersion": "MYSQL_8_0_18", "settings": { "authorizedGaeApplications": [], "tier": "db-f1-micro", "kind": "sql#settings", "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", "activationPolicy": "ALWAYS", "ipConfiguration": { "authorizedNetworks": [], "ipv4Enabled": true }, "locationPreference": { "zone": "us-west1-a", "kind": "sql#locationPreference" }, "dataDiskType": "PD_SSD", "backupConfiguration": { "startTime": "18:00", "kind": "sql#backupConfiguration", "enabled": true, "binaryLogEnabled": true }, "settingsVersion": "1", "storageAutoResizeLimit": "0", "storageAutoResize": true, "dataDiskSizeGb": "10" }, "etag": "--redacted--", "ipAddresses": [ { "type": "PRIMARY", "ipAddress": "10.0.0.1" } ], "serverCaCert": { ... }, "instanceType": "CLOUD_SQL_INSTANCE", "project": "project-id", "serviceAccountEmailAddress": "redacted@gcp-sa-cloud-sql.iam.gserviceaccount.com", "backendType": "SECOND_GEN", "selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id", "connectionName": "project-id:region:instance-id", "name": "instance-id", "region": "us-west1", "gceZone": "us-west1-a" }
Cerca il campo ipAddress
nella risposta.
REST v1beta4
Crea l'istanza
Questo esempio crea un'istanza. Alcuni parametri facoltativi, ad esempio sono inclusi anche i backup e il logging binario. Per un elenco completo dei parametri per questa chiamata, vedere instances:insert . Per informazioni sulle impostazioni delle istanze, inclusi i valori validi per la regione, consulta Impostazioni delle istanze.
Non includere informazioni sensibili o che consentono l'identificazione personale
nell'ID istanza; è visibile all'esterno.
Non è necessario includere l'ID progetto nel nome dell'istanza. Questa operazione viene eseguita automaticamente ove opportuno (ad esempio nei file di log).
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- PROJECT_ID: il tuo ID progetto
- INSTANCE_ID: il tuo ID istanza
- REGION: la regione
- DATABASE_VERSION: stringa enum della versione del database (ad esempio,
POSTGRES_16
) - PASSWORD: la password dell'utente root
- MACHINE_TYPE: stringa enum del tipo di macchina (livello), ad esempio:
db-custom-[CPUS]-[MEMORY_MBS]
EDITION_TYPE: la tua versione di Cloud SQL
- DATA_CACHE_ENABLED: (facoltativo) impostato su
true
per attivare la cache dei dati per l'istanza - PRIVATE_NETWORK: specifica il nome della rete Virtual Private Cloud (VPC) che vuoi utilizzare per questa istanza. L'accesso privato ai servizi deve essere già configurato per la rete.
- AUTHORIZED_NETWORKS: per le connessioni con IP pubblico, specifica le connessioni dalle reti autorizzate reti che possono connettersi all'istanza.
- CA_MODE: specifica una
gerarchia di autorità di certificazione
per l'istanza,
GOOGLE_MANAGED_INTERNAL_CA
oGOOGLE_MANAGED_CAS_CA
. Se non specifichiserverCaMode
, la configurazione predefinita èGOOGLE_MANAGED_INTERNAL_CA
. Questa funzionalità è in Anteprima.
Per impostare un criterio per le password durante la creazione di un'istanza, includi l'oggetto passwordValidationPolicy nella richiesta. Imposta i seguenti parametri, come richiesto:
enablePasswordPolicy
: attiva il criterio delle password se viene impostato sutrue
.Per rimuovere il criterio per le password, puoi utilizzare una richiesta
PATCH
connull
come valore perenablePasswordPolicy
. In questo caso, gli altri parametri dei criteri relativi alle password vengono reimpostati.minLength
: specifica il numero minimo di caratteri che deve avere la password.complexity
: controlla se la password è un combinazione di lettere minuscole, maiuscole, numeri e non alfanumerici caratteri. Il valore predefinito èCOMPLEXITY_DEFAULT
.reuseInterval
: specifica il numero di password precedenti che non puoi riutilizzare.disallowUsernameSubstring
: impedisce l'utilizzo del nome utente nella password se impostato sutrue
.passwordChangeInterval
: specifica la durata minima dopo la quale puoi cambiare la password. Il valore è espresso in secondi con un massimo di nove cifre frazionarie, terminato das
. Ad esempio:3.5s
.
Per creare l'istanza in modo che possa integrarsi con Vertex AI, includi l'oggetto enableGoogleMlIntegration nella richiesta. Questa integrazione ti consente di applicare modelli linguistici di grandi dimensioni (LLM), ospitati in Vertex AI, a un database Cloud SQL per PostgreSQL.
Imposta i seguenti parametri, come richiesto:
enableGoogleMlIntegration
: quando questo parametro è impostato sutrue
, le istanze Cloud SQL possono connettersi a Vertex AI per trasmettere all'AI richieste di previsioni in tempo reale e approfondimenti.cloudsql.enable_google_ml_integration
: quando questo parametro è impostato suon
, Cloud SQL può essere integrato con Vertex AI
Metodo HTTP e URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances
Corpo JSON della richiesta:
{ "name": "INSTANCE_ID", "region": "REGION", "databaseVersion": "DATABASE_VERSION", "rootPassword": "PASSWORD", "settings": { "tier": "MACHINE_TYPE", "edition": "EDITION_TYPE", "enableGoogleMlIntegration": "true" | "false" "databaseFlags": [ { "name": "cloudsql.enable_google_ml_integration", "value": "on" | "off" } ] "dataCacheConfig" = { "dataCacheEnabled": DATA_CACHE_ENABLED }, "backupConfiguration": { "enabled": true }, "passwordValidationPolicy": { "enablePasswordPolicy": true "minLength": "MIN_LENGTH", "complexity": COMPLEXITY_DEFAULT, "reuseInterval": "REUSE_INTERVAL", "disallowUsernameSubstring": "DISALLOW_USERNAME_SUBSTRING", "passwordChangeInterval": "PASSWORD_CHANGE_INTERVAL" } "ipConfiguration": { "privateNetwork": "PRIVATE_NETWORK", "authorizedNetworks": [AUTHORIZED_NETWORKS], "ipv4Enabled": false, "enablePrivatePathForGoogleCloudServices": true, "serverCaMode": "CA_MODE" } } }
Per inviare la richiesta, espandi una delle seguenti opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "kind": "sql#operation", "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_ID", "status": "PENDING", "user": "user@example.com", "insertTime": "2020-01-01T19:13:21.834Z", "operationType": "CREATE", "name": "OPERATION_ID", "targetId": "INSTANCE_ID", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/operations/OPERATION_ID", "targetProject": "PROJECT_ID" }
La risposta è un operazione a lunga esecuzione, il che potrebbe richiedere alcuni minuti.
Recupera l'indirizzo IPv4
Recupera l'indirizzo IPv4 assegnato automaticamente per la nuova istanza:
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- project-id: il tuo ID progetto
- instance-id: l'ID istanza creato nel passaggio precedente
Metodo HTTP e URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id
Per inviare la richiesta, espandi una delle seguenti opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "kind": "sql#instance", "state": "RUNNABLE", "databaseVersion": "MYSQL_8_0_18", "settings": { "authorizedGaeApplications": [], "tier": "db-f1-micro", "kind": "sql#settings", "pricingPlan": "PER_USE", "replicationType": "SYNCHRONOUS", "activationPolicy": "ALWAYS", "ipConfiguration": { "authorizedNetworks": [], "ipv4Enabled": true }, "locationPreference": { "zone": "us-west1-a", "kind": "sql#locationPreference" }, "dataDiskType": "PD_SSD", "backupConfiguration": { "startTime": "18:00", "kind": "sql#backupConfiguration", "enabled": true, "binaryLogEnabled": true }, "settingsVersion": "1", "storageAutoResizeLimit": "0", "storageAutoResize": true, "dataDiskSizeGb": "10" }, "etag": "--redacted--", "ipAddresses": [ { "type": "PRIMARY", "ipAddress": "10.0.0.1" } ], "serverCaCert": { ... }, "instanceType": "CLOUD_SQL_INSTANCE", "project": "project-id", "serviceAccountEmailAddress": "redacted@gcp-sa-cloud-sql.iam.gserviceaccount.com", "backendType": "SECOND_GEN", "selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id", "connectionName": "project-id:region:instance-id", "name": "instance-id", "region": "us-west1", "gceZone": "us-west1-a" }
Cerca il campo ipAddress
nella risposta.
Configurazioni delle istanze personalizzate
Determina la memoria e i core virtuali disponibili per Cloud SQL in esecuzione in un'istanza Compute Engine. La disponibilità del tipo di macchina è determinata dalla versione di Cloud SQL.
Per i carichi di lavoro che richiedono l'elaborazione in tempo reale, come l'elaborazione delle transazioni online (OLTP), assicurati che l'istanza disponga di memoria sufficiente per contenere l'intero set di lavoro. Tuttavia, ci sono altri fattori che possono influire sui requisiti di memoria, ad esempio il numero di connessioni attive e i processi di overhead interni. Devi eseguire test di carico per evitare problemi di prestazioni dell'ambiente di produzione.
Quando configuri l'istanza, seleziona memoria e vCPU sufficienti per gestire il tuo carico di lavoro e esegui l'upgrade man mano che il carico di lavoro aumenta. Una macchina con un numero insufficiente di vCPU, potrebbe perdere la copertura SLA. Per ulteriori informazioni, consulta le linee guida operative.
Tipi di macchine per le istanze della versione Cloud SQL Enterprise Plus
Per le istanze della versione Cloud SQL Enterprise Plus, i tipi di macchine sono predefiniti come segue:
Tipo di macchina Enterprise Plus | vCPU | Memoria (GB) | SSD locale |
---|---|---|---|
db-perf-optimized-N-2 | 2 | 16 | 375 |
db-perf-optimized-N-4 | 4 | 32 | 375 |
db-perf-optimized-N-8 | 8 | 64 | 375 |
db-perf-optimized-N-16 | 16 | 128 | 750 |
db-perf-optimized-N-32 | 32 | 256 | 1500 |
db-perf-optimized-N-48 | 48 | 384 | 3000 |
db-perf-optimized-N-64 | 64 | 512 | 6000 |
db-perf-optimized-N-80 | 80 | 640 | 6000 |
db-perf-optimized-N-96 | 96 | 768 | 6000 |
db-perf-optimized-N-128 | 128 | 864 | 9000 |
Tipi di macchina per le istanze della versione Cloud SQL Enterprise
Per le istanze della versione Cloud SQL Enterprise, puoi
creano anche configurazioni di istanze personalizzate
utilizzando il comando gcloud sql
instances create
.
Le configurazioni di istanze personalizzate consentono di selezionare la quantità di memoria e CPU
necessarie alla tua istanza. Questa flessibilità ti consente di scegliere la forma VM appropriata per il tuo carico di lavoro.
I nomi dei tipi di macchina utilizzano il seguente formato:
db-custom-#-#
Sostituisci il primo segnaposto # con il numero di CPU della macchina e il secondo segnaposto # con la quantità di memoria della macchina.
Ad esempio, se il nome della macchina è db-custom
e la macchina ha 1 CPU e 3840 MB di RAM, il formato della macchina sarà db-custom-1-3840
.
Quando selezioni il numero di CPU e la quantità di memoria, ci sono alcune limitazioni alla configurazione scelta:
- Le vCPU devono essere pari a 1 o a un numero pari compreso tra 2 e 96.
- La memoria deve essere:
- Da 0,9 a 6,5 GB per vCPU
- Un multiplo di 256 MB
- Almeno 3,75 GB (3840 MB)
Nella tabella seguente sono elencati i nomi di ciascun tipo di macchina legacy, il numero CPU e RAM per ciascun tipo di macchina e la stringa risultante per la macchina di testo.
Puoi creare il tipo di macchina equivalente specificando la CPU e
RAM nella console Google Cloud, utilizzando gcloud CLI
specificando db-custom-#-#
nell'API.
Tipo di macchina precedente | vCPU | Memoria (MB) | Stringa db-custom-CPU-RAM (stringa di livello API) |
---|---|---|---|
db-n1-standard-1 | 1 | 3840 | db-custom-1-3840 |
db-n1-standard-2 | 2 | 7680 | db-custom-2-7680 |
db-n1-standard-4 | 4 | 15360 | db-custom-4-15360 |
db-n1-standard-8 | 8 | 30720 | db-custom-8-30720 |
db-n1-standard-16 | 16 | 61440 | db-custom-16-61440 |
db-n1-standard-32 | 32 | 122880 | db-custom-32-122880 |
db-n1-standard-64 | 64 | 245760 | db-custom-64-245760 |
db-n1-standard-96 | 96 | 368640 | db-custom-96-368640 |
db-n1-highmem-2 | 2 | 13312 | db-custom-2-13312 |
db-n1-highmem-4 | 4 | 26624 | db-custom-4-26624 |
db-n1-highmem-8 | 8 | 53248 | db-custom-8-53248 |
db-n1-highmem-16 | 16 | 106496 | db-custom-16-106496 |
db-n1-highmem-32 | 32 | 212992 | db-custom-32-212992 |
db-n1-highmem-64 | 64 | 425984 | db-custom-64-425984 |
db-n1-highmem-96 | 96 | 638976 | db-custom-96-638976 |
Risoluzione dei problemi
Problema | Risoluzione dei problemi |
---|---|
Messaggio di errore: Failed to create subnetwork. Couldn't
find free blocks in allocated IP ranges. Please allocate new ranges for
this service provider . |
Non sono disponibili altri indirizzi nell'intervallo IP allocato. Là
sono possibili i seguenti scenari:
Per risolvere il problema, puoi espandere il già allocato o allocare un intervallo IP aggiuntivo una connessione privata ai servizi. Per ulteriori informazioni, vedi Alloca un intervallo di indirizzi IP. Se hai utilizzato il flag Se stai allocando un nuovo intervallo, assicurati che l'allocazione non che si sovrappongono a eventuali allocazioni esistenti. Dopo aver creato un nuovo intervallo IP, aggiorna il peering VPC con quanto segue : gcloud services vpc-peerings update \ --service=servicenetworking.googleapis.com \ --ranges=OLD_RESERVED_RANGE_NAME,NEW_RESERVED_RANGE_NAME \ --network=VPC_NETWORK \ --project=PROJECT_ID \ --force Se stai espandendo un'allocazione esistente, assicurati di aumentare solo l'intervallo di allocazione e non di diminuirlo. Ad esempio, se l'allocazione originale era 10.0.10.0/24, quindi rendere la nuova allocazione almeno 10.0.10.0/23. In generale, se parte da un'allocazione /24, riduci la dimensione /mask del 1 per ogni condizione (gruppo di tipi di istanze aggiuntivi, regione aggiuntiva) è una buona regola empirica. Ad esempio, se provi a creare entrambi i tipi di istanza gruppi con la stessa allocazione, è sufficiente passare da /24 a /23. Dopo aver espanso un intervallo IP esistente, aggiorna il peering VPC con seguente comando: gcloud services vpc-peerings update \ --service=servicenetworking.googleapis.com \ --ranges=RESERVED_RANGE_NAME \ --network=VPC_NETWORK \ --project=PROJECT_ID |
Messaggio di errore: Failed to create subnetwork. Router status is
temporarily unavailable. Please try again later. Help Token:
[token-ID] . |
Prova a creare di nuovo l'istanza Cloud SQL. |
Messaggio di errore: Failed to create subnetwork. Required
'compute.projects.get' permission for PROJECT_ID . |
Quando crei un'istanza utilizzando un indirizzo IP privato, viene creato un account di servizio just in time utilizzando l'API Service Networking. Se hai abilitato solo di recente l'API Service Networking, quindi l'account di servizio potrebbe non essere creato e la creazione dell'istanza non riesce. Nella devi attendere la propagazione dell'account di servizio al sistema oppure aggiungilo manualmente con le autorizzazioni necessarie. |
Passaggi successivi
- Crea un database PostgreSQL nell'istanza.
- Crea utenti PostgreSQL nell'istanza.
- Proteggere e controllare l'accesso all'istanza.
- Connettiti all'istanza con un client PostgreSQL.
- Importa i dati nel database.