En esta página se explica cómo crear una instancia de Cloud SQL para PostgreSQL.
Para obtener información detallada sobre todas las configuraciones de instancia, consulta el apartado sobre la configuración de instancias.
Crear una instancia
Consola
- Ve a la página de instancias de Cloud SQL de la consola de Google Cloud Platform.
- Haz clic en Crear instancia.
- Selecciona PostgreSQL y haz clic en Siguiente.
- Introduce un nombre.
No incluyas información confidencial ni personalmente identificable en el nombre de la instancia, ya que es visible externamente.
No es preciso incluir el ID del proyecto en el nombre de la instancia. Esto se hace de forma automática donde corresponda (por ejemplo, en los archivos de registro). -
Introduce una contraseña para el usuario de
postgres
. - En Opciones de configuración, actualiza cualquier otra configuración que necesites para la instancia:
Ajuste Notas Tipo de máquina y almacenamiento Núcleos El número de vCPUs para tu instancia. Más información. Memoria La cantidad de memoria para tu instancia, en GiBs. Más información. Tipo de almacenamiento Determina si la instancia usa almacenamiento SSD o HDD. Más información. Capacidad de almacenamiento La cantidad de almacenamiento aprovisionado para la instancia. Más información. Aumento automático de almacenamiento Determina si Cloud SQL proporciona automáticamente más espacio de almacenamiento para la instancia cuando queda poco espacio libre. Más información. Copias de seguridad automáticas y alta disponibilidad Copias de seguridad automáticas El periodo de tiempo en que deseas que comiencen las copias de seguridad. Más información. Redes autorizadas Redes autorizadas En el caso de las conexiones IP, solo las conexiones de redes autorizadas se pueden conectar a la instancia. Más información. Marcadores de bases de datos Marcadores de bases de datos Se pueden usar marcadores de bases de datos para controlar la configuración y los parámetros de la instancia. Más información. Calendario de mantenimiento Ventana de mantenimiento Determina un periodo de una hora cuando Cloud SQL puede realizar un mantenimiento disruptivo en la instancia. Si no se configura el periodo, se puede realizar un mantenimiento disruptivo en cualquier momento. Más información. Horario de mantenimiento El horario preferido para las actualizaciones de la instancia, en relación con otras instancias en el mismo proyecto. Más información. - Haz clic en Crear.
- Una vez que la instancia termine de inicializarse, haz clic en su nombre para abrirla.
gcloud
Para obtener información sobre cómo instalar y ponerte en marcha con la herramienta de línea de comandos gcloud
, consulta el apartado de instalación del SDK de GCP. Para obtener información sobre cómo iniciar Cloud Shell, consulta la documentación de Cloud Shell.
- Crea la instancia:
gcloud sql instances create [INSTANCE_NAME] --database-version=POSTGRES_9_6 \ --cpu=[NUMBER_CPUS] --memory=[MEMORY_SIZE]
No incluyas información confidencial ni personalmente identificable en el nombre de la instancia, ya que es visible externamente.
No es preciso incluir el ID del proyecto en el nombre de la instancia. Esto se hace de forma automática donde corresponda (por ejemplo, en los archivos de registro).Existen restricciones en los valores para vCPUs y tamaño de memoria:
- Las vCPU deben ser 1 o un número par entre 2 y 32.
- La memoria debe ser:
- De 0,9 a 6,5 GiB por vCPU
- Un múltiplo de 256 MiB
- Al menos 3,75 GiB (3840 MiB)
Por ejemplo, la siguiente cadena crea una instancia con dos vCPU y 7680 MiB de memoria:
gcloud sql instances create myinstance --cpu=2 --memory=7680MiB \ --database-version=POSTGRES_9_6
En el caso de algunos valores de muestra, consulta los tipos de máquina de muestra.
También puedes crear una instancia de núcleo compartido utilizando
--tier db-f1-micro
o--tier db-g1-small
y reduciendo los parámetros--cpu
y--memory
.Puede agregar más parámetros para determinar otras configuraciones de instancia:
Ajuste Parámetro Notas Parámetros obligatorios Versión de la base de datos --database-version
POSTGRES_9_6
Región --region
Consulta los valores válidos. Tipo de máquina y almacenamiento Tipo de máquina --tier
Sirve para especificar una instancia de núcleo compartido ( db-f1-micro
odb-g1-small
). Si se usa este parámetro, no se pueden especificar los parámetros--cpu
ni--memory
.Tipo de almacenamiento --storage-type
Determina si la instancia usa almacenamiento SSD o HDD. Más información. Capacidad de almacenamiento --storage-size
La cantidad de almacenamiento aprovisionado para la instancia, en GB. Más información. Aumento automático de almacenamiento --storage-auto-increase
Determina si Cloud SQL proporciona automáticamente más espacio de almacenamiento para la instancia cuando queda poco espacio libre. Más información. Límite de aumento automático de almacenamiento --storage-auto-increase-limit
Determina cuánto puede hacer crecer el almacenamiento Cloud SQL de forma automática. Disponible solo para el comando beta ( gcloud beta sql instances create
). Más información.Copias de seguridad automáticas y alta disponibilidad Copias de seguridad automáticas --backup-start-time
El periodo de tiempo en que deseas que comiencen las copias de seguridad. Más información. Autorizar redes Redes autorizadas --authorized-networks
En el caso de las conexiones IP, solo las conexiones de redes autorizadas se pueden conectar a la instancia. Más información. Añadir marcadores de bases de datos Marcadores de bases de datos --database-flags
Se pueden usar marcadores de bases de datos para controlar la configuración y los parámetros de la instancia. Más información sobre los marcadores de bases de datos. Más información sobre cómo formatear este parámetro. Configurar calendario de mantenimiento Ventana de mantenimiento --maintenance-window-day
,--maintenance-window-hour
Determina un periodo de una hora cuando Cloud SQL puede realizar un mantenimiento disruptivo en la instancia. Si no se configura el periodo, se puede realizar un mantenimiento disruptivo en cualquier momento. Más información. Horario de mantenimiento --maintenance-release-channel
El horario preferido para las actualizaciones de la instancia, en relación con otras instancias en el mismo proyecto. Utiliza preview
para las actualizaciones anteriores yproduction
para las posteriores. Más información. - Ten en cuenta la dirección IP asignada automáticamente.
Si no utilizas el proxy de Cloud SQL, usarás esta dirección como la dirección de host que usan tus aplicaciones o herramientas para conectarse a la instancia.
- Establece la contraseña para el usuario de
postgres
:gcloud sql users set-password postgres no-host --instance=[INSTANCE_NAME] \ --password=[PASSWORD]
cURL
- Crea la instancia:
ACCESS_TOKEN="$(gcloud auth application-default print-access-token)" curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \ --header 'Content-Type: application/json' \ --data '{"name":"[INSTANCE_NAME]", "region":"[REGION]", "databaseVersion": "POSTGRES_9_6", "settings": {"tier": "[TIER_STRING]", "backupConfiguration": {"enabled":true}}}' \ -X POST \ https://www.googleapis.com/sql/v1beta4/projects/[PROJECT-ID]/instances
No incluyas información confidencial ni personalmente identificable en el nombre de la instancia, ya que es visible externamente.
No es preciso incluir el ID del proyecto en el nombre de la instancia. Esto se hace de forma automática donde corresponda (por ejemplo, en los archivos de registro).TIER_STRING
es una cadena que representa el número de CPU y la cantidad de memoria que deseas que tenga tu nueva instancia. La cadena tiene el siguiente formato:db-custom-[CPUS]-[MEMORY_MBS]
. Para ver algunos valores válidos de ejemplo, consulta los tipos de máquina de muestra. Asimismo, puedes crear una instancia de núcleo compartido suministrandodb-f1-micro
odb-g1-small
para el parámetro detier
.Para ver una lista completa de parámetros para esta llamada, consulta la página Instances:insert. Para obtener información sobre la configuración de la instancia, incluidos los valores válidos para la región y el tipo de máquina, consulta el apartado sobre la configuración de la instancia.
- Cuando la instancia termine de inicializarse, actualiza la contraseña para el usuario de
postgres
:curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \ --header 'Content-Type: application/json' \ --data '{"name": "postgres", "host": "", "password": "[PASSWORD]"}' \ -X PUT \ 'https://www.googleapis.com/sql/v1beta4/projects/[PROJECT-ID]/instances/[INSTANCE_NAME]/users?host=&name=postgres'
- Recupera la dirección IPv4 asignada de forma automática para la nueva instancia:
curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \ -X GET \ https://www.googleapis.com/sql/v1beta4/projects/[PROJECT-ID]/instances/[INSTANCE_NAME]
Busca el campoipAddress
en la respuesta.
Tipos de máquinas de muestra
Con los tipos de máquinas personalizadas, puedes configurar tu instancia con la cantidad de memoria y CPU que esta requiera. Sin embargo, hay algunas restricciones para estos valores:
- Las vCPU deben ser 1 o un número par entre 2 y 32.
- La memoria debe ser:
- De 0,9 a 6,5 GiB por vCPU
- Un múltiplo de 256 MiB
- Al menos 3,75 GiB (3840 MiB)
Aquí hay algunos valores de tipo de máquina de muestra, basados en los tipos de máquina predefinidos que hay disponibles para las instancias de MySQL:
Tipo de máquina de MySQL | vCPU | Memoria (MiB) | Cadena de nivel de 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-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 |
Siguientes pasos
- Configura el acceso a la instancia.
- Conéctate a la instancia con un cliente psql.
- Crea una base de datos en la instancia.
- Importa datos en la instancia.
- Crea usuarios en la instancia.
- Obtén más información sobre la configuración de la instancia.