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 comparação 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 ser transmitida entre a instância e a VM com segurança.
  • Crie uma instância do AlloyDB e uma instância de VM do Compute Engine e atribua e configure a 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 desempenho na instância do AlloyDB.

Custos

Neste tutorial, usamos componentes faturáveis do Google Cloud, incluindo a rede VPC, o AlloyDB e o 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 projeto do Google Cloud .

    Acessar a página do seletor de projetos

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

  3. Ative a rede VPC, o AlloyDB e as APIs do 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 ser transmitida entre a instância e a VM com segurança.

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

    Acessar a página "Redes VPC"

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

  3. Digite my-vpc-network como Nome da rede VPC.

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

  5. Clique em ADICIONAR SUB-REDE.

  6. Digite my-subnet como Nome da sub-rede.

  7. Selecione uma Região e insira um Intervalo de endereços IP para a 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 a instância.

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

    Acessar Clusters

  2. Clique em Criar cluster.

  3. Configure o cluster da seguinte maneira:

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

    2. No campo Senha, digite qualquer senha. Anote essa senha. Você vai usá-la novamente mais adiante neste tutorial.

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

    4. No campo Database version, mantenha o valor padrão.

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

    6. Como a 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 principal.

    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 estar 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ê cria uma instância de VM do Compute Engine e atribui e configura a rede VPC para a instância.

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

    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 Network, 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 aparece na página Instâncias de VM e o status dela é Em execução (conforme 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-o na instância do AlloyDB e o usa para realizar testes de desempenho 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 Open in browser window.

  2. Instale o pacote "Extensions and Additions to PostgreSQL" na sua 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 quando criou 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 sua instância do AlloyDB. Neste tutorial, o nome de usuário é postgres.
  4. No prompt Password, insira a senha da sua instância do AlloyDB. Ao criar a instância, você forneceu uma senha ou gerou uma pelo AlloyDB.

  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 sua 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 criar 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, realize um teste de desempenho com clientes 10 que estão acessando o banco de dados do AlloyDB para PostgreSQL e as transações 100 de cada cliente.

    pgbench --host=INSTANCE_PRIVATE_IP --port=PORT_NUMBER --username=USERNAME -c 10 --transactions=100
  8. No prompt Password, insira a senha da sua 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 a 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 do 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 Instâncias do AlloyDB no console do Google Cloud .

    Acessar a página "Instâncias 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, digite o nome da sua instância do AlloyDB no campo de texto e clique em DELETE.

Exclua a instância de VM do Compute Engine

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

    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 se parece com uma lixeira.

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

Excluir a rede VPC

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

    Acessar a página "Redes VPC"

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

  3. Clique em EXCLUIR REDE VPC.

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