Criar uma instância do pool de leitura em um cluster

As instâncias do pool de leitura em um cluster do AlloyDB para PostgreSQL permitem escalonar a capacidade de leitura e descarregar cargas de trabalho de consulta somente leitura da instância principal. É possível criar uma instância de pool de leitura usando o console do Google Cloud ou a Google Cloud CLI.

Uma instância de pool de leitura pode usar uma série de máquinas e um tipo de máquina diferentes da série de máquinas e do tipo de máquina da instância principal. Todos os nós em uma única instância de pool de leitura usam a mesma série de máquinas e tipo de máquina. Para atender ao tráfego de leitura em várias séries de máquinas ou tipos de máquinas diferentes ao mesmo tempo, implante instâncias de pool de leitura separadas para cada configuração. Para mais informações sobre as séries de máquinas compatíveis, consulte Escolher um tipo de máquina do AlloyDB.

Se quiser, ative o encaminhamento transparente de consultas para otimizar a utilização de recursos roteando automaticamente o tráfego somente leitura.

Antes de começar

  • O projeto do Google Cloud que você está usando precisa ter sido ativado para acessar o AlloyDB.
  • Você precisa ter um destes papéis do IAM no Google Cloud projeto que está sendo usado:
    • roles/alloydb.admin (o papel predefinido do IAM de Admin do AlloyDB)
    • roles/owner (o papel básico do IAM de Proprietário)
    • roles/editor (o papel básico do IAM de Editor)

    Se você não tiver nenhum desses papéis, entre em contato com o Administrador da organização para solicitar o acesso.

Criar uma instância do pool de leitura

Console

  1. No Google Cloud console, acesse a página Clusters.

    Acessar Clusters

  2. Clique em um cluster na coluna Nome do Recurso.

  3. Acesse a seção Instâncias no cluster e clique em Adicionar pool de leitura.

  4. Configure a instância do pool de leitura:

    1. No campo ID da instância do pool de leitura, insira um ID para a instância do pool de leitura.

    2. No campo Contagem de nós, insira uma contagem de nós.

      O número de nós em uma instância de pool de leitura determina a capacidade geral de computação da instância.

    3. Selecione uma das seguintes séries de máquinas para a instância do pool de leitura, que pode ser diferente da série de máquinas da instância principal:

      • C4A (série de máquinas baseadas no Google Axion)

      • N2 (série de máquinas baseadas em x86). Essa série de máquinas é o padrão.

      • C4 (série de máquinas baseadas em x86)

      • Z3 (série de máquinas baseadas em Intel Xeon)

    4. Selecione um tipo de máquina. Todos os nós na instância do pool de leitura usam a série de máquinas e o tipo de máquina que você selecionar. As contagens de vCPU compatíveis dependem da série de máquinas:

      • A C4A é compatível com 1, 2, 4, 8, 16, 32, 48, 64 e 72 vCPUs.

      • A N2 é compatível com 2, 4, 8, 16, 32, 64, 96 e 128 vCPUs.

      • A C4 é compatível com 4, 8, 16, 24, 32, 48, 96, 144, 192 e 288 vCPUs.

      • A Z3 é compatível com 8, 14, 16, 22, 32, 44 e 88 vCPUs.

      Para mais informações sobre como usar a série de máquinas C4A baseada em Axion, incluindo o tipo de máquina de 1 vCPU, consulte Considerações ao usar a série de máquinas C4A baseada em Axion.

    5. Opcional: para conectar seus aplicativos e clientes pela Internet pública, clique em Ativar IP público em Conectividade de IP público. A ativação do IP público pode exigir uma configuração adicional para proteger sua conexão. Para mais informações, consulte Conectar usando IP público.

      Por padrão, o IP privado está sempre ativado. Para mais informações, consulte Ativar o acesso a serviços particulares.

    6. Opcional: para ativar o pool de conexões gerenciado, selecione Ativar pool de conexões gerenciado em Pool de conexões gerenciado. Para mais informações, consulte Configurar o pool de conexões gerenciadas.

    7. Escolha as configurações de segurança de rede. Para manter seus dados seguros, use a criptografia mTLS com conectores do AlloyDB ou a criptografia SSL.

      Quando você muda as configurações de segurança, a instância permanece disponível para uso, mas o AlloyDB descarta as conexões não compatíveis.

    8. Opcional: defina flags personalizadas para sua instância. Para cada flag, siga estas etapas:

      1. Clique em Opções de configuração avançadas.
      2. Clique em Adicionar um flag de banco de dados.
      3. Selecione uma flag na lista Nova flag de banco de dados.
      4. Forneça um valor para a flag.
      5. Clique em Concluído.
  5. Clique em Adicionar pool de leitura.

gcloud

Para usar a CLI gcloud, você pode instalar e inicializar a Google Cloud CLI ou usar o Cloud Shell.

Use o comando gcloud alloydb instances create para criar uma instância de pool de leitura.

gcloud alloydb instances create INSTANCE_ID \
 --instance-type=READ_POOL \
 --read-pool-node-count=NODE_COUNT \
 --region=REGION_ID \
 --cluster=CLUSTER_ID \
 --cpu-count=CPU_COUNT \
 --machine-type=MACHINE_TYPE \
 --project=PROJECT_ID

Substitua:

  • INSTANCE_ID: o ID da instância que você está criando. Ele precisa começar com uma letra minúscula e pode conter letras minúsculas, números e hifens.

  • NODE_COUNT: o número de nós na instância. Especifique um número de 1 a 20, inclusive. Não é possível ter mais de 20 nós em todas as instâncias do pool de leitura em um cluster.

  • REGION_ID: a região do cluster atual em que você quer criar a instância do pool de leitura.

  • CLUSTER_ID: o ID do cluster em que você quer criar a instância do pool de leitura.

  • CPU_COUNT: o número de vCPUs que você quer para a instância.

    • É preciso especificar cpu_count ou machine_type.
    • Se apenas cpu_count for fornecido, uma instância N2 será criada com as seguintes especificações:
      • 2: 2 vCPUs, 16 GB de RAM
      • 4: 4 vCPUs, 32 GB de RAM
      • 8: 8 vCPUs, 64 GB de RAM
      • 16: 16 vCPUs, 128 GB de RAM
      • 32: 32 vCPUs, 256 GB de RAM
      • 64: 64 vCPUs, 512 GB de RAM
      • 96: 96 vCPUs, 768 GB de RAM
      • 128: 128 vCPUs, 864 GB de RAM
    • Se machine_type e cpu_count forem fornecidos, o valor de cpu_count precisará estar alinhado ao número de vCPUs especificado em machine_type. Por exemplo, se machine_type for n2-highmem-4, defina cpu_count como 4.
  • MACHINE_TYPE: um tipo de máquina compatível com a instância do pool de leitura, como n2-highmem-4, c4-highmem-4-lssd, c4a-highmem-4-lssd ou z3-highmem-14-standardlssd. A instância do pool de leitura pode usar uma série de máquinas e um tipo de máquina diferentes da série de máquinas e do tipo de máquina da instância principal, e todos os nós na instância do pool de leitura usam esse tipo de máquina. Para mais informações sobre os tipos de máquina compatíveis, consulte Escolher um tipo de máquina do AlloyDB.

  • PROJECT_ID: o ID do projeto em que o cluster atual está localizado.

Para criar uma instância de pool de leitura para um cluster ativado para o Private Service Connect, adicione a flag --allowed-psc-projects para definir uma lista separada por vírgulas de IDs de projeto ou números de projeto que você quer permitir o acesso à instância, por exemplo, my-project-1, 12345,my-project-n.

gcloud alloydb instances create INSTANCE_ID \
   --instance-type=READ_POOL \
   --region=REGION_ID \
   --cluster=CLUSTER_ID \
   --cpu-count=CPU_COUNT \
   --machine-type=MACHINE_TYPE \
   --project=PROJECT_ID \
   --allowed-psc-projects=ALLOWED_PROJECT_LIST

Substitua:

  • ALLOWED_PROJECT_LIST (opcional): a lista separada por vírgulas de IDs do projeto ou números de projetos que você quer permitir o acesso à instância,por exemplo, my-project-1,12345, my-project-n. É necessário definir uma lista de projetos ou números permitidos se o cluster usar o Private Service Connect como o método de conexão com a instância.

Para ativar o pool de conexões gerenciado na instância do pool de leitura, adicione a flag --enable-connection-pooling ao comando gcloud alloydb instances create:

gcloud alloydb instances create INSTANCE_ID \
 --instance-type=READ_POOL \
 --region=REGION_ID \
 --cluster=CLUSTER_ID \
 --cpu-count=CPU_COUNT \
 --machine-type=MACHINE_TYPE \
 --project=PROJECT_ID \
 --enable-connection-pooling

Para criar uma instância de pool de leitura para um cluster com IP público, adicione o parâmetro --assign-inbound-public-ip=ASSIGN_IPV4.

gcloud alloydb instances create INSTANCE_ID \
   --instance-type=READ_POOL \
   --region=REGION_ID \
   --cluster=CLUSTER_ID \
   --cpu-count=CPU_COUNT \
   --machine-type=MACHINE_TYPE \
   --project=PROJECT_ID \
   --assign-inbound-public-ip=ASSIGN_IPV4

Se quiser, transmita a lista separada por vírgulas de blocos CIDR, como 64.233.160.0/16, para o parâmetro --authorized-external-networks para definir redes externas autorizadas na instância.

A seguir