Configurar IP pública

Esta página describe cómo configurar la conectividad de IP pública para una instancia de Cloud SQL.

Introducción

Puede configurar su instancia de Cloud SQL para que tenga una dirección IPv4 pública y acepte conexiones desde direcciones IP específicas o un rango de direcciones agregando direcciones autorizadas a su instancia.

No se puede especificar una red privada (por ejemplo, 10.xxx) como red autorizada.

Direcciones IP públicas para instancias de MySQL:

  • IPv6: Las instancias no admiten IPv6.
  • IPv4: Las instancias tienen una dirección IPv4 estática asignada automáticamente. Se aplica un pequeño cargo por la dirección IP cuando la instancia está desactivada.

Para obtener ayuda para conectar un cliente de administración a su instancia a través de una conexión IP, consulte Conectar un cliente MySQL mediante direcciones IP .

Si configura su instancia para aceptar conexiones usando su dirección IP pública, configúrela también para usar SSL para proteger sus datos. Para obtener más información, consulte Configurar SSL para instancias .

Para configurar su instancia con una dirección IP que no esté expuesta a Internet pública, consulte Configurar la conectividad de IP privada .

Habilitar IP pública y agregar una dirección o rango de direcciones autorizado

Al habilitar la IP pública para su instancia, Cloud SQL la configura con una dirección IPv4 pública y estática. Después de habilitar la IP pública, debe configurar la autorización para las conexiones a la base de datos. Consulte las opciones de autorización para obtener más información.

Si utiliza una autoridad de certificación (CA) compartida o una CA administrada por el cliente como serverCaMode para su instancia, esta deberá reiniciarse al habilitar la IP pública. Para obtener más información sobre la configuración del modo de CA de servidor, consulte Autoridades de certificación (CA) .

Para habilitar la IP pública y agregar una dirección autorizada:

Consola

  1. En el Google Cloud consola, vaya a la página Instancias de Cloud SQL .

    Ir a Instancias de Cloud SQL

  2. Para abrir la página Descripción general de una instancia, haga clic en el nombre de la instancia.
  3. Desde el menú de navegación de SQL, seleccione Conexiones .
  4. Haga clic en la pestaña Redes .
  5. Seleccione la casilla de verificación IP pública .
  6. Haga clic en Agregar red .
  7. Opcionalmente, en el campo Nombre , ingrese un nombre para esta red.
  8. En el campo Red , ingrese la dirección IP o el rango de direcciones desde el cual desea permitir conexiones.

    Utilice la notación CIDR .

  9. Haga clic en Listo .
  10. Haga clic en Guardar .

nube g

  1. Si aún no lo ha hecho, agregue una dirección IPv4 a la instancia:
    gcloud sql instances patch INSTANCE_NAME\
    --assign-ip
  2. Mostrar todas las direcciones autorizadas existentes describiendo la instancia:
    gcloud sql instances describe INSTANCE_NAME

    Busque las entradas de red autorizada en ipConfiguration y anote las direcciones autorizadas que desea conservar.

  3. Actualice la lista de redes autorizadas, incluidas todas las direcciones que desea incluir.
    gcloud sql instances patch INSTANCE_NAME \
    --authorized-networks=IP_ADDR1,IP_ADDR2...

    Utilice la notación CIDR .

  4. Confirme sus cambios:
    gcloud sql instances describe INSTANCE_NAME

REST versión 1

  1. Mostrar todas las direcciones autorizadas existentes describiendo la instancia:

    Antes de utilizar cualquiera de los datos solicitados, realice las siguientes sustituciones:

    • project-id : El ID del proyecto
    • instance-id : El ID de la instancia
    • machine-type El tipo de máquina de instancia
    • zone La zona de instancia

    Método HTTP y URL:

    GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id?fields=settings

    Para enviar su solicitud, expanda una de estas opciones:

    Debería recibir una respuesta JSON similar a la siguiente:

  2. Actualice la instancia, incluidas todas las direcciones que desea configurar en la instancia:

    Antes de utilizar cualquiera de los datos solicitados, realice las siguientes sustituciones:

    • project-id : El ID del proyecto
    • instance-id : El ID de la instancia
    • network_range_1 Una dirección IP o rango autorizado
    • network_range_2 Otra dirección IP o rango autorizado

    Método HTTP y URL:

    PATCH https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id

    Cuerpo JSON de la solicitud:

    {
      "settings":
      {
        "ipConfiguration":
        {
          "authorizedNetworks":
            [{"value": "network_range_1"}, {"value": "network_range_2"}]
        }
      }
    }
    

    Para enviar su solicitud, expanda una de estas opciones:

    Debería recibir una respuesta JSON similar a la siguiente:

    Utilice la notación CIDR .

  3. Confirme sus cambios:

    Antes de utilizar cualquiera de los datos solicitados, realice las siguientes sustituciones:

    • project-id : El ID del proyecto
    • instance-id : El ID de la instancia
    • ip-address1 : El formato CIDR de la primera dirección IP
    • ip-address-name1 : El nombre de la primera dirección IP
    • ip-address2 : La forma CIDR de la segunda dirección IP
    • ip-address-name2 : El nombre de la segunda dirección IP
    • machine-type El tipo de máquina de instancia
    • zone La zona de instancia

    Método HTTP y URL:

    GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id?fields=settings

    Para enviar su solicitud, expanda una de estas opciones:

    Debería recibir una respuesta JSON similar a la siguiente:

Terraformar

Para habilitar la IP pública y agregar una dirección o un rango de direcciones autorizado, utilice un recurso Terraform .

resource "google_sql_database_instance" "mysql_public_ip_instance_name" {
  database_version = "MYSQL_5_7"
  name             = "mysql-public-ip-instance-name"
  region           = "asia-southeast2"
  settings {
    availability_type = "ZONAL"
    disk_size         = 100
    disk_type         = "PD_SSD"
    ip_configuration {
      # Add optional authorized networks
      # Update to match the customer's networks
      authorized_networks {
        name  = "test-net-3"
        value = "203.0.113.0/24"
      }
      # Enable public IP
      ipv4_enabled = true
    }
    tier = "db-custom-4-26624"
  }
  # set `deletion_protection` to true, will ensure that one cannot accidentally delete this instance by
  # use of Terraform whereas `deletion_protection_enabled` flag protects this instance at the GCP level.
  deletion_protection = false
}

Aplicar los cambios

Para aplicar su configuración de Terraform en un Google Cloud proyecto, complete los pasos de las siguientes secciones.

Preparar Cloud Shell

  1. Inicie Cloud Shell .
  2. Establecer el valor predeterminado Google Cloud Proyecto donde desea aplicar sus configuraciones de Terraform.

    Solo necesitas ejecutar este comando una vez por proyecto y puedes ejecutarlo en cualquier directorio.

    export GOOGLE_CLOUD_PROJECT=PROJECT_ID

    Las variables de entorno se anulan si establece valores explícitos en el archivo de configuración de Terraform.

Preparar el directorio

Cada archivo de configuración de Terraform debe tener su propio directorio (también llamado módulo raíz ).

  1. En Cloud Shell , cree un directorio y un nuevo archivo dentro de él. El nombre del archivo debe tener la extensión .tf ; por ejemplo, main.tf En este tutorial, el archivo se denomina main.tf
    mkdir DIRECTORY && cd DIRECTORY && touch main.tf
  2. Si está siguiendo un tutorial, puede copiar el código de muestra en cada sección o paso.

    Copie el código de muestra en el main.tf recién creado.

    Opcionalmente, copie el código de GitHub. Esto se recomienda cuando el fragmento de Terraform forma parte de una solución integral.

  3. Revise y modifique los parámetros de muestra para aplicarlos a su entorno.
  4. Guarde sus cambios.
  5. Inicialice Terraform. Solo necesita hacerlo una vez por directorio.
    terraform init

    Opcionalmente, para utilizar la última versión del proveedor de Google, incluya la opción -upgrade :

    terraform init -upgrade

Aplicar los cambios

  1. Revise la configuración y verifique que los recursos que Terraform va a crear o actualizar coincidan con sus expectativas:
    terraform plan

    Realice correcciones en la configuración según sea necesario.

  2. Aplique la configuración de Terraform ejecutando el siguiente comando e ingresando yes en el indicador:
    terraform apply

    Espere hasta que Terraform muestre el mensaje "¡Aplicación completada!"

  3. Abre tu Google Cloud proyecto para ver los resultados. En el Google Cloud consola, navegue a sus recursos en la interfaz de usuario para asegurarse de que Terraform los haya creado o actualizado.

Eliminar los cambios

Para eliminar sus cambios, haga lo siguiente:

  1. Para deshabilitar la protección contra eliminación, en el archivo de configuración de Terraform configure el argumento deletion_protection en false .
    deletion_protection =  "false"
  2. Aplique la configuración actualizada de Terraform ejecutando el siguiente comando e ingresando yes en el mensaje:
    terraform apply
  1. Elimine los recursos aplicados previamente con su configuración de Terraform ejecutando el siguiente comando e ingresando yes en el mensaje:

    terraform destroy

REST v1beta4

  1. Mostrar todas las direcciones autorizadas existentes describiendo la instancia:

    Antes de utilizar cualquiera de los datos solicitados, realice las siguientes sustituciones:

    • project-id : El ID del proyecto
    • instance-id : El ID de la instancia
    • machine-type El tipo de máquina de instancia
    • zone La zona de instancia

    Método HTTP y URL:

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id?fields=settings

    Para enviar su solicitud, expanda una de estas opciones:

    Debería recibir una respuesta JSON similar a la siguiente:

  2. Actualice la instancia, incluidas todas las direcciones que desea configurar en la instancia:

    Antes de utilizar cualquiera de los datos solicitados, realice las siguientes sustituciones:

    • project-id : El ID del proyecto
    • instance-id : El ID de la instancia
    • network_range_1 Una dirección IP o rango autorizado
    • network_range_2 Otra dirección IP o rango autorizado

    Método HTTP y URL:

    PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id

    Cuerpo JSON de la solicitud:

    {
      "settings":
      {
        "ipConfiguration":
        {
          "authorizedNetworks":
            [{"value": "network_range_1"}, {"value": "network_range_2"}]
        }
      }
    }
    

    Para enviar su solicitud, expanda una de estas opciones:

    Debería recibir una respuesta JSON similar a la siguiente:

    Utilice la notación CIDR .

  3. Confirme sus cambios:

    Antes de utilizar cualquiera de los datos solicitados, realice las siguientes sustituciones:

    • project-id : El ID del proyecto
    • instance-id : El ID de la instancia
    • ip-address1 : El formato CIDR de la primera dirección IP
    • ip-address-name1 : El nombre de la primera dirección IP
    • ip-address2 : La forma CIDR de la segunda dirección IP
    • ip-address-name2 : El nombre de la segunda dirección IP
    • machine-type El tipo de máquina de instancia
    • zone La zona de instancia

    Método HTTP y URL:

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id?fields=settings

    Para enviar su solicitud, expanda una de estas opciones:

    Debería recibir una respuesta JSON similar a la siguiente:

Eliminar una dirección o un rango de direcciones autorizado

Para eliminar una dirección autorizada:

Consola

  1. En el Google Cloud consola, vaya a la página Instancias de Cloud SQL .

    Ir a Instancias de Cloud SQL

  2. Para abrir la página Descripción general de una instancia, haga clic en el nombre de la instancia.
  3. Seleccione Conexiones en el menú de navegación de SQL.
  4. Haga clic en el icono de eliminarBorrar. para la dirección que desea eliminar.
  5. Haga clic en Guardar para actualizar la instancia.

nube g

  1. Mostrar todas las direcciones autorizadas existentes describiendo la instancia:
    gcloud sql instances describe INSTANCE_NAME

    Busque las entradas de red autorizada en ipConfiguration y anote las direcciones autorizadas que desea conservar.

  2. Actualice la lista de redes autorizadas, quitando cualquier dirección que desee eliminar.
    gcloud sql instances patch INSTANCE_NAME \
    --authorized-networks=IP_ADDR1,IP_ADDR2...
  3. Confirme sus cambios:
    gcloud sql instances describe INSTANCE_NAME

REST versión 1

  1. Mostrar todas las direcciones autorizadas existentes describiendo la instancia:

    Antes de utilizar cualquiera de los datos solicitados, realice las siguientes sustituciones:

    • project-id : El ID del proyecto
    • instance-id : El ID de la instancia
    • ip-address1 : El formato CIDR de la primera dirección IP
    • ip-address-name1 : El nombre de la primera dirección IP
    • ip-address2 : La forma CIDR de la segunda dirección IP
    • ip-address-name2 : El nombre de la segunda dirección IP
    • machine-type El tipo de máquina de instancia
    • zone La zona de instancia

    Método HTTP y URL:

    GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id?fields=settings

    Para enviar su solicitud, expanda una de estas opciones:

    Debería recibir una respuesta JSON similar a la siguiente:

  2. Actualice la instancia, incluyendo todas las direcciones que desea conservar y eliminando las direcciones que desea eliminar:

    Antes de utilizar cualquiera de los datos solicitados, realice las siguientes sustituciones:

    • project-id : El ID del proyecto
    • instance-id : El ID de la instancia
    • network_range_1 La dirección IP o rango de red autorizado para eliminar

    Método HTTP y URL:

    PATCH https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id

    Cuerpo JSON de la solicitud:

    {
      "settings":
      {
        "ipConfiguration":
        {
          "authorizedNetworks":
            [{"value": "network_range_1"}]
        }
      }
    }
    
    

    Para enviar su solicitud, expanda una de estas opciones:

    Debería recibir una respuesta JSON similar a la siguiente:

  3. Confirme sus cambios:

    Antes de utilizar cualquiera de los datos solicitados, realice las siguientes sustituciones:

    • project-id : El ID del proyecto
    • instance-id : El ID de la instancia
    • ip-address : La forma CIDR de la dirección IP
    • ip-address-name : El nombre de la dirección IP
    • machine-type El tipo de máquina de instancia
    • zone La zona de instancia

    Método HTTP y URL:

    GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id?fields=settings

    Para enviar su solicitud, expanda una de estas opciones:

    Debería recibir una respuesta JSON similar a la siguiente:

REST v1beta4

  1. Mostrar todas las direcciones autorizadas existentes describiendo la instancia:

    Antes de utilizar cualquiera de los datos solicitados, realice las siguientes sustituciones:

    • project-id : El ID del proyecto
    • instance-id : El ID de la instancia
    • ip-address1 : El formato CIDR de la primera dirección IP
    • ip-address-name1 : El nombre de la primera dirección IP
    • ip-address2 : La forma CIDR de la segunda dirección IP
    • ip-address-name2 : El nombre de la segunda dirección IP
    • machine-type El tipo de máquina de instancia
    • zone La zona de instancia

    Método HTTP y URL:

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id?fields=settings

    Para enviar su solicitud, expanda una de estas opciones:

    Debería recibir una respuesta JSON similar a la siguiente:

  2. Actualice la instancia, incluyendo todas las direcciones que desea conservar y eliminando las direcciones que desea eliminar:

    Antes de utilizar cualquiera de los datos solicitados, realice las siguientes sustituciones:

    • project-id : El ID del proyecto
    • instance-id : El ID de la instancia
    • network_range_1 La dirección IP o rango de red autorizado para eliminar

    Método HTTP y URL:

    PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id

    Cuerpo JSON de la solicitud:

    {
      "settings":
      {
        "ipConfiguration":
        {
          "authorizedNetworks":
            [{"value": "network_range_1"}]
        }
      }
    }
    
    

    Para enviar su solicitud, expanda una de estas opciones:

    Debería recibir una respuesta JSON similar a la siguiente:

  3. Confirme sus cambios:

    Antes de utilizar cualquiera de los datos solicitados, realice las siguientes sustituciones:

    • project-id : El ID del proyecto
    • instance-id : El ID de la instancia
    • ip-address : La forma CIDR de la dirección IP
    • ip-address-name : El nombre de la dirección IP
    • machine-type El tipo de máquina de instancia
    • zone La zona de instancia

    Método HTTP y URL:

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id?fields=settings

    Para enviar su solicitud, expanda una de estas opciones:

    Debería recibir una respuesta JSON similar a la siguiente:

Configurar una instancia para rechazar todas las conexiones IP públicas

Para configurar una instancia para rechazar todas las conexiones IP públicas:

Consola

  1. En el Google Cloud consola, vaya a la página Instancias de Cloud SQL .

    Ir a Instancias de Cloud SQL

  2. Para abrir la página Descripción general de una instancia, haga clic en el nombre de la instancia.
  3. Seleccione Conexiones en el menú de navegación de SQL.
  4. Haga clic en el icono de eliminarBorrar. para todas las direcciones autorizadas.
  5. Haga clic en Guardar para actualizar la instancia.

nube g

  1. Borrar la lista de direcciones autorizadas:
    gcloud sql instances patch INSTANCE_NAME \
    --clear-authorized-networks
  2. Confirme sus cambios:
    gcloud sql instances describe INSTANCE_NAME

REST versión 1

  1. Mostrar todas las direcciones autorizadas existentes describiendo la instancia:

    Antes de utilizar cualquiera de los datos solicitados, realice las siguientes sustituciones:

    • project-id : El ID del proyecto
    • instance-id : El ID de la instancia
    • ip-address1 : El formato CIDR de la primera dirección IP
    • ip-address-name1 : El nombre de la primera dirección IP
    • ip-address2 : La forma CIDR de la segunda dirección IP
    • ip-address-name2 : El nombre de la segunda dirección IP
    • machine-type El tipo de máquina de instancia
    • zone La zona de instancia

    Método HTTP y URL:

    GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id?fields=settings

    Para enviar su solicitud, expanda una de estas opciones:

    Debería recibir una respuesta JSON similar a la siguiente:

  2. Actualice la instancia con una lista de direcciones vacía:

    Antes de utilizar cualquiera de los datos solicitados, realice las siguientes sustituciones:

    • project-id : El ID del proyecto
    • instance-id : El ID de la instancia

    Método HTTP y URL:

    PATCH https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id

    Cuerpo JSON de la solicitud:

    {
      "settings":
      {
        "ipConfiguration":
        {
          "authorizedNetworks": []
        }
      }
    }
    

    Para enviar su solicitud, expanda una de estas opciones:

    Debería recibir una respuesta JSON similar a la siguiente:

  3. Confirme sus cambios:

    Antes de utilizar cualquiera de los datos solicitados, realice las siguientes sustituciones:

    • project-id : El ID del proyecto
    • instance-id : El ID de la instancia
    • machine-type El tipo de máquina de instancia
    • zone La zona de instancia

    Método HTTP y URL:

    GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id?fields=settings

    Para enviar su solicitud, expanda una de estas opciones:

    Debería recibir una respuesta JSON similar a la siguiente:

REST v1beta4

  1. Mostrar todas las direcciones autorizadas existentes describiendo la instancia:

    Antes de utilizar cualquiera de los datos solicitados, realice las siguientes sustituciones:

    • project-id : El ID del proyecto
    • instance-id : El ID de la instancia
    • ip-address1 : El formato CIDR de la primera dirección IP
    • ip-address-name1 : El nombre de la primera dirección IP
    • ip-address2 : La forma CIDR de la segunda dirección IP
    • ip-address-name2 : El nombre de la segunda dirección IP
    • machine-type El tipo de máquina de instancia
    • zone La zona de instancia

    Método HTTP y URL:

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id?fields=settings

    Para enviar su solicitud, expanda una de estas opciones:

    Debería recibir una respuesta JSON similar a la siguiente:

  2. Actualice la instancia con una lista de direcciones vacía:

    Antes de utilizar cualquiera de los datos solicitados, realice las siguientes sustituciones:

    • project-id : El ID del proyecto
    • instance-id : El ID de la instancia

    Método HTTP y URL:

    PATCH https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id

    Cuerpo JSON de la solicitud:

    {
      "settings":
      {
        "ipConfiguration":
        {
          "authorizedNetworks": []
        }
      }
    }
    

    Para enviar su solicitud, expanda una de estas opciones:

    Debería recibir una respuesta JSON similar a la siguiente:

  3. Confirme sus cambios:

    Antes de utilizar cualquiera de los datos solicitados, realice las siguientes sustituciones:

    • project-id : El ID del proyecto
    • instance-id : El ID de la instancia
    • machine-type El tipo de máquina de instancia
    • zone La zona de instancia

    Método HTTP y URL:

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id?fields=settings

    Para enviar su solicitud, expanda una de estas opciones:

    Debería recibir una respuesta JSON similar a la siguiente:

Deshabilitar IP pública

Puedes deshabilitar la IP pública, pero solo si tu instancia también está configurada para usar una IP privada. Para habilitar la IP privada, consulta "Configurar una instancia existente para usar una IP privada" .

Si utiliza una autoridad de certificación (CA) compartida o una CA administrada por el cliente como serverCaMode para su instancia, esta deberá reiniciarse al deshabilitar la IP pública. Para obtener más información sobre la configuración del modo de CA de servidor, consulte Autoridades de certificación (CA) .

Para deshabilitar la IP pública:

Consola

  1. En el Google Cloud consola, vaya a la página Instancias de Cloud SQL .

    Ir a Instancias de Cloud SQL

  2. Para abrir la página Descripción general de una instancia, haga clic en el nombre de la instancia.
  3. Seleccione Conexiones en el menú de navegación de SQL.
  4. Desmarque la casilla de verificación IP pública .
  5. Haga clic en Guardar para actualizar la instancia.

nube g

  1. Actualizar la instancia:
    gcloud sql instances patch INSTANCE_NAME \
    --no-assign-ip
  2. Confirme sus cambios:
    gcloud sql instances describe INSTANCE_NAME

REST versión 1

  1. Mostrar todas las direcciones autorizadas existentes describiendo la instancia:

    Antes de utilizar cualquiera de los datos solicitados, realice las siguientes sustituciones:

    • project-id : El ID del proyecto
    • instance-id : El ID de la instancia
    • ip-address1 : El formato CIDR de la primera dirección IP
    • ip-address-name1 : El nombre de la primera dirección IP
    • ip-address2 : La forma CIDR de la segunda dirección IP
    • ip-address-name2 : El nombre de la segunda dirección IP
    • machine-type El tipo de máquina de instancia
    • zone La zona de instancia

    Método HTTP y URL:

    GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id?fields=settings

    Para enviar su solicitud, expanda una de estas opciones:

    Debería recibir una respuesta JSON similar a la siguiente:

  2. Actualizar la instancia:

    Antes de utilizar cualquiera de los datos solicitados, realice las siguientes sustituciones:

    • PROJECT_ID: El ID del proyecto
    • INSTANCE_ID: El ID de la instancia
    • VPC_NETWORK_NAME: Especifique el nombre de la red de nube virtual privada (VPC) que desea usar para esta instancia. El acceso a servicios privados debe estar configurado previamente para la red.
    • RANGE_NAME: Opcional. Si se especifica, establece un nombre de rango para el cual se asigna un rango IP. El nombre del rango debe cumplir con RFC-1035 y contener entre 1 y 63 caracteres.
    • AUTHORIZED_NETWORKS: Para conexiones IP públicas, especifique las conexiones de redes autorizadas que pueden conectarse a su instancia.

    Para el parámetro ipv4Enabled , establezca el valor en true si está usando una dirección IP pública para su instancia o false si su instancia tiene una dirección IP privada.

    Si establece el parámetro enablePrivatePathForGoogleCloudServices en true , entonces permite otros Google Cloud Servicios como BigQuery para acceder a datos en Cloud SQL y realizar consultas sobre estos datos a través de una conexión IP privada. Al establecer este parámetro en false , otros... Google Cloud Los servicios no pueden acceder a los datos en Cloud SQL a través de una conexión IP privada.

    Método HTTP y URL:

    POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances

    Cuerpo JSON de la solicitud:

    {
      "name": "INSTANCE_ID",
      "region": "region",
      "databaseVersion": "database-version",
      "settings": {
        "tier": "machine-type",
        "ipConfiguration": {
          "ipv4Enabled": false,
          "privateNetwork": "projects/PROJECT_ID/global/networks/VPC_NETWORK_NAME",
          "allocatedIpRange": "RANGE_NAME"
          "authorizedNetworks": [AUTHORIZED_NETWORKS],
          
          "enablePrivatePathForGoogleCloudServices": true
          
        }
      }
    }
    

    Para enviar su solicitud, expanda una de estas opciones:

    Debería recibir una respuesta JSON similar a la siguiente:

  3. Confirme sus cambios:

    Antes de utilizar cualquiera de los datos solicitados, realice las siguientes sustituciones:

    • project-id : El ID del proyecto
    • instance-id : El ID de la instancia
    • machine-type El tipo de máquina de instancia
    • zone La zona de instancia

    Método HTTP y URL:

    GET https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id?fields=settings

    Para enviar su solicitud, expanda una de estas opciones:

    Debería recibir una respuesta JSON similar a la siguiente:

REST v1beta4

  1. Mostrar todas las direcciones autorizadas existentes describiendo la instancia:

    Antes de utilizar cualquiera de los datos solicitados, realice las siguientes sustituciones:

    • project-id : El ID del proyecto
    • instance-id : El ID de la instancia
    • ip-address1 : El formato CIDR de la primera dirección IP
    • ip-address-name1 : El nombre de la primera dirección IP
    • ip-address2 : La forma CIDR de la segunda dirección IP
    • ip-address-name2 : El nombre de la segunda dirección IP
    • machine-type El tipo de máquina de instancia
    • zone La zona de instancia

    Método HTTP y URL:

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id?fields=settings

    Para enviar su solicitud, expanda una de estas opciones:

    Debería recibir una respuesta JSON similar a la siguiente:

  2. Actualizar la instancia:

    Antes de utilizar cualquiera de los datos solicitados, realice las siguientes sustituciones:

    • PROJECT_ID: El ID del proyecto
    • INSTANCE_ID: El ID de la instancia
    • VPC_NETWORK_NAME: Especifique el nombre de la red de nube virtual privada (VPC) que desea usar para esta instancia. El acceso a servicios privados debe estar configurado previamente para la red.
    • RANGE_NAME: Opcional. Si se especifica, establece un nombre de rango para el cual se asigna un rango IP. El nombre del rango debe cumplir con RFC-1035 y contener entre 1 y 63 caracteres.
    • AUTHORIZED_NETWORKS: Para conexiones IP públicas, especifique las conexiones de redes autorizadas que pueden conectarse a su instancia.

    Para el parámetro ipv4Enabled , establezca el valor en true si está usando una dirección IP pública para su instancia o false si su instancia tiene una dirección IP privada.

    Si establece el parámetro enablePrivatePathForGoogleCloudServices en true , entonces permite otros Google Cloud Servicios como BigQuery para acceder a datos en Cloud SQL y realizar consultas sobre estos datos a través de una conexión IP privada. Al establecer este parámetro en false , otros... Google Cloud Los servicios no pueden acceder a los datos en Cloud SQL a través de una conexión IP privada.

    Método HTTP y URL:

    POST https://sqladmin.googleapis.com/v1beta4/projects/PROJECT_ID/instances

    Cuerpo JSON de la solicitud:

    {
      "name": "INSTANCE_ID",
      "region": "region",
      "databaseVersion": "database-version",
      "settings": {
        "tier": "machine-type",
        "ipConfiguration": {
          "ipv4Enabled": false,
          "privateNetwork": "projects/PROJECT_ID/global/networks/VPC_NETWORK_NAME",
          "allocatedIpRange": "RANGE_NAME"
          "authorizedNetworks": [AUTHORIZED_NETWORKS],
          
          "enablePrivatePathForGoogleCloudServices": true
          
        }
      }
    }
    

    Para enviar su solicitud, expanda una de estas opciones:

    Debería recibir una respuesta JSON similar a la siguiente:

  3. Confirme sus cambios:

    Antes de utilizar cualquiera de los datos solicitados, realice las siguientes sustituciones:

    • project-id : El ID del proyecto
    • instance-id : El ID de la instancia
    • machine-type El tipo de máquina de instancia
    • zone La zona de instancia

    Método HTTP y URL:

    GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id?fields=settings

    Para enviar su solicitud, expanda una de estas opciones:

    Debería recibir una respuesta JSON similar a la siguiente:

Solucionar problemas

Asunto Solución de problemas
Aborted connection . El problema podría ser:
  • Inestabilidad de la red.
  • No hay respuesta a los comandos de mantenimiento de conexión TCP (el cliente o el servidor no responden, posiblemente estén sobrecargados)
  • Se excedió el tiempo de vida útil de la conexión del motor de base de datos y el servidor finaliza la conexión.

Las aplicaciones deben tolerar fallos de red y seguir las prácticas recomendadas, como la agrupación de conexiones y los reintentos. La mayoría de los agrupadores de conexiones detectan estos errores siempre que es posible. De lo contrario, la aplicación debe reintentar o fallar correctamente.

Para reintentar la conexión, recomendamos los siguientes métodos:

  1. Retroceso exponencial . Aumenta exponencialmente el intervalo entre cada reintento.
  2. Agregue también un retroceso aleatorio.

La combinación de estos métodos ayuda a reducir la limitación.

Certificate verify failed .

Los certificados del cliente han expirado o la ruta a los certificados no es correcta.

Regenerar los certificados volviéndolos a crear .

¿Qué sigue?