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
No Google Cloud console, acesse a página Clusters.
Clique em um cluster na coluna Nome do Recurso.
Acesse a seção Instâncias no cluster e clique em Adicionar pool de leitura.
Configure a instância do pool de leitura:
No campo ID da instância do pool de leitura, insira um ID para a instância do pool de leitura.
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.
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)
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.
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.
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.
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.
Opcional: defina flags personalizadas para sua instância. Para cada flag, siga estas etapas:
- Clique em Opções de configuração avançadas.
- Clique em Adicionar um flag de banco de dados.
- Selecione uma flag na lista Nova flag de banco de dados.
- Forneça um valor para a flag.
- Clique em Concluído.
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_IDSubstitua:
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 de1a20, 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_countoumachine_type. - Se apenas
cpu_countfor 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_typeecpu_countforem fornecidos, o valor decpu_countprecisará estar alinhado ao número de vCPUs especificado emmachine_type. Por exemplo, semachine_typeforn2-highmem-4, definacpu_countcomo4.
- É preciso especificar
MACHINE_TYPE: um tipo de máquina compatível com a instância do pool de leitura, comon2-highmem-4,c4-highmem-4-lssd,c4a-highmem-4-lssdouz3-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_LISTSubstitua:
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-poolingPara 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_IPV4Se 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.