Analisar o desempenho de uma instância do AlloyDB com o pgbench

Neste tutorial, você vai integrar uma instância do AlloyDB e uma instância de VM do Compute Engine em uma rede de nuvem privada virtual (VPC). Em seguida, verifique a integração instalando pgbench na instância de VM do Compute Engine e use essa ferramenta de comparativo de mercado para realizar testes de desempenho na instância do AlloyDB.

Objetivos

Neste tutorial, você aprenderá a realizar as seguintes tarefas:

  • Crie uma rede VPC para a instância do AlloyDB e a instância de VM do Compute Engine para que a comunicação possa passar entre elas com segurança.
  • Crie uma instância do AlloyDB e uma instância de VM do Compute Engine, além de atribuir e configurar sua rede VPC para ambas as instâncias.
  • Instale o pgbench na instância de VM do Compute Engine, execute-o na instância do AlloyDB e use-o para realizar testes de performance na instância do AlloyDB.

Custos

Neste tutorial, usamos componentes faturáveis do Google Cloud, incluindo rede VPC, AlloyDB e Compute Engine. Use a calculadora de preços para gerar uma estimativa de custo com base no uso previsto.

Antes de começar

  1. No console do Google Cloud , na página do seletor de projetos, selecione ou crie um Google Cloud projeto.

    Acessar a página do seletor de projetos

  2. Verifique se o faturamento está ativado para seu projeto do Google Cloud . Saiba como confirmar se o faturamento está ativado para o projeto.

  3. Ative as APIs de rede VPC, AlloyDB e Compute Engine.

    Ativar as APIs

  4. Verifique se você tem o papel de administrador do AlloyDB atribuído à sua conta de usuário.

    Acessar a página do IAM

Crie uma rede VPC

Nesta seção, você cria uma rede VPC para a instância do AlloyDB e a instância de VM do Compute Engine para que a comunicação possa passar entre elas com segurança.

  1. Acesse a página Redes VPC no console Google Cloud .

    Acessar a página "Redes VPC"

  2. Clique em Criar rede VPC. A página Criar uma rede VPC aparece.

  3. Insira my-vpc-network no Nome da sua rede VPC.

  4. Na seção Modo de criação de sub-rede, selecione a opção Personalizado.

  5. Clique em ADICIONAR SUB-REDE.

  6. Insira my-subnet no Nome da sub-rede.

  7. Selecione uma Região e insira um Intervalo de endereços IP para sua sub-rede.

  8. Clique em CONCLUÍDO.

  9. Clique em CRIAR.

Criar uma instância do AlloyDB

Nesta seção, você vai criar uma instância do AlloyDB e atribuir e configurar sua rede VPC para ela.

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

    Acessar Clusters

  2. Clique em Criar cluster.

  3. Configure o cluster desta maneira:

    1. No campo ID do cluster da seção Informações básicas, insira my-cluster.

    2. No campo Senha, digite a senha que quiser. Anote essa senha, porque você vai usá-la novamente mais tarde neste tutorial.

    3. No campo Região da seção Local, selecione us-central1 (Iowa).

    4. No campo Versão do banco de dados, mantenha o valor padrão.

    5. No menu Rede, selecione my-vpc-network. Você criou essa rede VPC em Criar uma rede VPC.

    6. Como sua rede VPC ainda não inicializou o acesso a serviços particulares, clique em Configurar conexão.

    7. No painel Criar uma conexão de serviço particular que aparece:

      1. Selecione a opção Usar um intervalo de IP alocado automaticamente para que o Google Cloud selecione um intervalo de IP alocado automaticamente na sua rede.

      2. Clique em Continuar.

      3. Clique em Criar conexão.

  4. Configure a instância principal da seguinte maneira:

    1. No campo ID da instância, insira um ID para a instância primária.

    2. Em Disponibilidade por zona, selecione uma das seguintes opções:

      1. Para criar uma instância de produção altamente disponível com failover automatizado, selecione Várias zonas (Altamente disponível).

      2. Para criar uma instância básica que não precisa ser altamente disponível, selecione Zona única.

    3. Selecione um tipo de máquina.

  5. Clique em Criar cluster para criar o cluster e a instância principal juntos.

  6. Anote o endereço IP particular da sua instância do AlloyDB que aparece na página Instâncias do AlloyDB. Você vai precisar desse endereço para verificar a integração entre a instância do AlloyDB e a instância de VM do Compute Engine.

Crie uma instância de VM do Compute Engine

Nesta seção, você vai criar uma instância de VM do Compute Engine e atribuir e configurar sua rede VPC para a instância.

  1. Acesse a página Instâncias de VM no Google Cloud Console.

    Acessar a página "Instâncias de VM"

  2. Clique em Criar instância.

  3. No campo Nome da página Criar uma instância, insira um identificador exclusivo para a instância de VM do Compute Engine que você está criando. Neste tutorial, insira my-compute-engine-vm-instance no campo.

  4. Na seção Escopos de acesso da página, selecione a opção Permitir acesso total a todas as APIs do Cloud.

  5. Abra Opções avançadas e siga estas etapas:

    1. Clique na subguia Rede.

    2. Clique em Adicionar uma interface de rede.

    3. No menu Rede, selecione my-vpc-network. Você criou essa rede VPC em Criar uma rede VPC.

    4. Clique em Concluído. Duas redes VPC aparecem na seção Interfaces de rede da página: default e my-vpc-network.

  6. Clique em Excluir para excluir a rede VPC padrão.

    Ao excluir a rede VPC padrão, você força a instância de VM do Compute Engine a usar a rede VPC criada neste tutorial.

  7. Clique em Criar.

    A criação da instância de VM do Compute Engine pode levar alguns segundos. Depois disso, a instância vai aparecer na página Instâncias de VM, e o status dela será Em execução (indicado pela marca de seleção).

Verificar a integração

Nesta seção, você instala o pgbench na instância de VM do Compute Engine, executa na instância do AlloyDB e usa para realizar testes de performance na instância do AlloyDB.

  1. Conecte-se à instância de VM do Compute Engine. Para fazer isso, clique no menu SSH à direita da instância de VM e selecione Abrir na janela do navegador.

  2. Instale o pacote "Contributed Extensions and Additions to PostgreSQL" na instância de VM do Compute Engine.

    sudo apt-get -y install postgresql-contrib
  3. Inicialize um banco de dados para pgbench na sua instância do AlloyDB para PostgreSQL. Por exemplo, use o banco de dados postgres padrão:

    pgbench -i --host=INSTANCE_PRIVATE_IP --port=PORT_NUMBER --username=USERNAME

    Substitua:

    • INSTANCE_PRIVATE_IP: o endereço IP particular da sua instância do AlloyDB. Você anotou esse endereço IP ao criar a instância.
    • PORT_NUMBER: o número da porta reservada para sua instância do AlloyDB. Para este tutorial, o número da porta é 5432.
    • USERNAME: o nome de usuário do administrador da instância do AlloyDB. Neste tutorial, o nome de usuário é postgres.
  4. No prompt Password, insira a senha da instância do AlloyDB. Ao criar a instância, você forneceu uma senha ou pediu para o AlloyDB gerar uma.

  5. Execute pgbench sem argumentos para verificar os recursos básicos.

    pgbench --host=INSTANCE_PRIVATE_IP --port=PORT_NUMBER --username=USERNAME
  6. No prompt Password, insira a senha da instância do AlloyDB.

    A resposta será semelhante a esta:

    starting vacuum...end.
    transaction type: <builtin: TPC-B (sort of)>
    scaling factor: 1
    query mode: simple
    number of clients: 1
    number of threads: 1
    number of transactions per client: 10
    number of transactions actually processed: 10/10
    latency average = 3.794 ms
    tps = 263.560171 (including connections establishing)
    tps = 345.375423 (excluding connections establishing)
  7. Use algumas opções para fazer um teste útil. Algumas opções importantes são -c (o número de clientes) e --transactions (o número de transações por cliente).

    Para este tutorial, faça um teste de desempenho em 10 clientes que estão acessando seu banco de dados do AlloyDB para PostgreSQL e 100 transações para cada cliente.

    pgbench --host=INSTANCE_PRIVATE_IP --port=PORT_NUMBER --username=USERNAME -c 10 --transactions=100
  8. No prompt Password, insira a senha da instância do AlloyDB.

    A resposta será semelhante a esta:

    starting vacuum...end.
    transaction type:  TPC-B (sort of)>
    scaling factor: 1
    query mode: simple
    number of clients: 10
    number of threads: 1
    number of transactions per client: 100
    number of transactions actually processed: 1000/1000
    latency average = 36.421 ms
    tps = 274.563444 (including connections establishing)
    tps = 275.733225 (excluding connections establishing)

Limpar

Depois de concluir este tutorial, limpe os recursos criados para que eles não ocupem cota e você não seja cobrado por eles no futuro.

Para evitar cobranças na sua conta do Google Cloud pelos recursos usados neste tutorial, siga estas etapas.

  1. Use o console Google Cloud para excluir seu projeto, a instância do AlloyDB, a instância de VM do Compute Engine e a rede VPC.

As próximas seções descrevem como excluir ou desativar esses recursos.

Excluir o projeto

O jeito mais fácil de evitar cobranças é excluindo o projeto que você criou para este tutorial.

  1. Acesse a página Gerenciar recursos no console Google Cloud .

    Acessar a página "Gerenciar recursos"

  2. Na lista de projetos, selecione o projeto que você quer excluir e clique em Excluir.

  3. Na caixa de diálogo, digite o ID do projeto e clique em Encerrar para excluí-lo.

Excluir a instância do AlloyDB

  1. Acesse a página Clusters do AlloyDB no Google Cloud console.

    Acessar a página "Clusters do AlloyDB"

  2. Clique no nome da sua instância do AlloyDB. Neste tutorial, clique em my-instance.

  3. Clique em EXCLUIR.

  4. Na caixa de diálogo, insira o nome da sua instância do AlloyDB no campo de texto e clique em EXCLUIR.

Exclua a instância de VM do Compute Engine

  1. Acesse a página Instâncias de VM no Google Cloud Console.

    Acessar a página "Instâncias de VM"

  2. Clique no nome da instância de VM do Compute Engine. Para este tutorial, clique em my-compute-engine-vm-instance.

  3. Clique no ícone Excluir. Esse ícone parece uma lixeira.

  4. Na caixa de diálogo, clique em EXCLUIR.

Excluir a rede VPC

  1. Acesse a página Redes VPC no console Google Cloud .

    Acessar a página "Redes VPC"

  2. Clique no nome da sua rede VPC. Neste tutorial, clique em my-vpc-network.

  3. Clique em EXCLUIR REDE VPC.

  4. Na caixa de diálogo, clique em EXCLUIR.