Habilita las 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 fuera de tu organización aislada de Google Distributed Cloud, haz lo siguiente:

Console

  1. Accede a la consola de GDC con una cuenta vinculada al rol project-networkpolicy-admin para crear reglas de firewall.
  2. En el menú principal de la consola de GDC, elige Firewall.
  3. En la sección User created rules, haz clic en Create.
  4. En Firewall rule details, crea un nombre para tu regla de firewall.
  5. En el cuadro de diálogo Direction of traffic, elige INGRESS.
  6. En el cuadro de diálogo Target , elige Service y, luego, selecciona dbs.
  7. En el cuadro de diálogo From , elige Outside the organization y, luego, ingresa el rango de CIDR desde el que deseas permitir la conectividad externa.
  8. Haz clic en Crear.
  9. Espera a que la columna Status de la regla nueva muestre Ready.
  10. Accede a la consola de GDC con una cuenta vinculada a project-db-admin.
  11. En el menú principal de la consola de GDC, elige Database Service.
  12. Selecciona el clúster de base de datos al que deseas habilitar las conexiones externas.
  13. Marca la línea Allow external connections de la sección Connectivity de la descripción general del clúster de base de datos para ver si ya se permiten las conexiones externas.
  14. En la sección Connectivity de la descripción general del clúster de base de datos, haz clic en editar Editar.
  15. Selecciona la casilla de verificación Allow external connections.
  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 base de datos para habilitar las conexiones externas a la organización:

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

Reemplaza lo siguiente:

  • USER_PROJECT: Es el nombre del proyecto de usuario en el que se creó el clúster de base de datos.
  • CIDR_RANGE: Es el rango CIDR desde el que deseas permitir la conectividad externa.
  • DBCLUSTER_NAME: Es el nombre del clúster de base de datos.