Por padrão, um cluster de banco de dados só permite conexões de dentro do cluster de usuário e do mesmo projeto. Para permitir conexões externas de endereços IP fora da sua organização Google Distributed Cloud com isolamento físico:
Console
- Faça login no console do GDC com uma conta vinculada ao papel
project-networkpolicy-adminpara criar regras de firewall. - No menu principal do console do GDC, escolha Firewall.
- Na seção User created rules, clique em Create.
- Em Firewall rule details, crie um nome para a regra de firewall.
- Na caixa de diálogo Direction of traffic, escolha INGRESS.
- Na caixa de diálogo Target, escolha Service e selecione dbs.
- Na caixa de diálogo From, escolha Outside the organization e insira o intervalo CIDR em que você quer permitir a conectividade externa.
- Clique em Criar.
- Aguarde até que a coluna Status da nova regra mostre Ready.
- Faça login no console do GDC com uma conta vinculada ao
project-db-admin. - No menu principal do console do GDC, escolha Database Service.
- Selecione o cluster de banco de dados em que você quer ativar conexões externas.
- Verifique a linha Allow external connections da seção Connectivity da visão geral do cluster de banco de dados para saber se as conexões externas já estão permitidas.
- Na seção Connectivity da visão geral do cluster de banco de dados, clique em editar Edit.
- Marque a caixa de seleção Allow external connections.
- Clique em SALVAR.
API
Crie um recurso
ProjectNetworkPolicypara permitir conexões 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 ```Atualize o cluster de banco de dados para ativar conexões externas à organização:
kubectl patch dbcluster.postgresql.dbadmin.gdc.goog DBCLUSTER_NAME -p '{"spec":{"allowExternalIncomingTraffic":true}}' --type=merge -n USER_PROJECT
Substitua:
USER_PROJECT: o nome do projeto do usuário em que o cluster de banco de dados foi criado.CIDR_RANGE: o intervalo CIDR em que você quer permitir a conectividade externa.DBCLUSTER_NAME: o nome do cluster de banco de dados.