Ativar conexões externas

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

  1. Faça login no console do GDC com uma conta vinculada ao papel project-networkpolicy-admin para criar regras de firewall.
  2. No menu principal do console do GDC, escolha Firewall.
  3. Na seção User created rules, clique em Create.
  4. Em Firewall rule details, crie um nome para a regra de firewall.
  5. Na caixa de diálogo Direction of traffic, escolha INGRESS.
  6. Na caixa de diálogo Target, escolha Service e selecione dbs.
  7. Na caixa de diálogo From, escolha Outside the organization e insira o intervalo CIDR em que você quer permitir a conectividade externa.
  8. Clique em Criar.
  9. Aguarde até que a coluna Status da nova regra mostre Ready.
  10. Faça login no console do GDC com uma conta vinculada ao project-db-admin.
  11. No menu principal do console do GDC, escolha Database Service.
  12. Selecione o cluster de banco de dados em que você quer ativar conexões externas.
  13. 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.
  14. Na seção Connectivity da visão geral do cluster de banco de dados, clique em editar Edit.
  15. Marque a caixa de seleção Allow external connections.
  16. Clique em SALVAR.

API

  1. Crie um recurso ProjectNetworkPolicy para 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
     ```
    
  2. 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.