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
- Inicia sesión en la consola de GDC con una cuenta vinculada al rol
project-networkpolicy-admin
para crear reglas de cortafuegos. - En el menú principal de la consola de GDC, elige Firewall.
- En la sección Reglas creadas por usuarios, haz clic en Crear.
- En Detalles de regla de cortafuegos, asigna un nombre a la regla de cortafuegos.
- En el cuadro de diálogo Dirección del tráfico, elige ENTRADA.
- En el cuadro de diálogo Destino, elige Servicio y, a continuación, selecciona dbs.
- 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.
- Haz clic en Crear.
- Espere a que en la columna Estado de la nueva regla aparezca Lista.
- Inicia sesión en la consola de GDC con una cuenta vinculada a la
project-db-admin
- En el menú principal de la consola de GDC, elige Database Service (Servicio de base de datos).
- Selecciona el clúster de base de datos al que quieras habilitar las conexiones externas.
- 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.
- En la sección Conectividad del resumen del clúster de base de datos, haz clic en editar Editar.
- Marca la casilla Permitir conexiones externas.
- Haz clic en GUARDAR.
API
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 ```
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 seralloydbomni
,postgresql
ooracle
.DBCLUSTER_NAME
: el nombre del clúster de la base de datos.