Habilitar conexiones externas

De forma predeterminada, un clúster de base de datos solo permite conexiones desde el clúster de usuario y el mismo proyecto. Para permitir conexiones externas desde direcciones IP que no pertenezcan a tu organización aislada de Google Distributed Cloud, haz lo siguiente:

Consola

  1. Inicia sesión en la consola de GDC con una cuenta vinculada al rol project-networkpolicy-admin para crear reglas de cortafuegos.
  2. En el menú principal de la consola de GDC, elige Firewall.
  3. En la sección Reglas creadas por usuarios, haz clic en Crear.
  4. En Detalles de regla de cortafuegos, asigna un nombre a la regla de cortafuegos.
  5. En el cuadro de diálogo Dirección del tráfico, elige ENTRADA.
  6. En el cuadro de diálogo Destino, elige Servicio y, a continuación, selecciona dbs.
  7. En el cuadro de diálogo Desde, elige Fuera de la organización e introduce el intervalo CIDR desde el que quieras permitir la conectividad externa.
  8. Haz clic en Crear.
  9. Espere a que en la columna Estado de la nueva regla aparezca Lista.
  10. Inicia sesión en la consola de GDC con una cuenta vinculada a la project-db-admin
  11. En el menú principal de la consola de GDC, elige Database Service (Servicio de base de datos).
  12. Selecciona el clúster de base de datos al que quieras habilitar las conexiones externas.
  13. Consulta la línea Permitir conexiones externas de la sección Conectividad de la página de descripción general del clúster de bases de datos para ver si ya se permiten las conexiones externas.
  14. En la sección Conectividad del resumen del clúster de base de datos, haz clic en editar Editar.
  15. Marca la casilla Permitir conexiones externas.
  16. Haz clic en GUARDAR.

API

  1. Crea un recurso ProjectNetworkPolicy para permitir conexiones externas:

    apiVersion: networking.gdc.goog/v1
    kind: ProjectNetworkPolicy
    metadata:
      name: allow-external-dbs
      namespace: USER_PROJECT
    spec:
      ingress:
      - from:
       - ipBlock:
         cidr: CIDR_RANGE
      policyType: Ingress
      subject:
        managedServices:
          matchTypes:
          - dbs
        subjectType: ManagedService
     ```
    
  2. Actualiza el clúster de la base de datos para habilitar las conexiones externas a la organización:

    kubectl patch dbcluster.DBENGINE_NAME.dbadmin.gdc.goog DBCLUSTER_NAME -p '{"spec":{"allowExternalIncomingTraffic":true}}' --type=merge -n USER_PROJECT
    

Haz los cambios siguientes:

  • USER_PROJECT: el nombre del proyecto de usuario en el que se creó el clúster de base de datos.
  • CIDR_RANGE: el intervalo CIDR desde el que quieres permitir la conectividad externa.
  • DBENGINE_NAME: el nombre del motor de la base de datos. Puede ser alloydbomni, postgresql o oracle.
  • DBCLUSTER_NAME: el nombre del clúster de la base de datos.