Cómo analizar el rendimiento de una instancia de AlloyDB con pgbench

En este instructivo, integrarás una instancia de AlloyDB y una instancia de VM de Compute Engine en una red de nube privada virtual (VPC). Luego, instala pgbench en la instancia de VM de Compute Engine para verificar la integración y usa esta herramienta de comparativas para realizar pruebas de rendimiento en la instancia de AlloyDB.

Objetivos

En este instructivo, aprenderás a realizar lo siguiente:

  • Crea una red de VPC para tu instancia de AlloyDB y tu instancia de VM de Compute Engine para que la comunicación pueda pasar entre la instancia y la VM de forma segura.
  • Crea una instancia de AlloyDB y una instancia de VM de Compute Engine, y asigna y configura tu red de VPC para ambas instancias.
  • Instala pgbench en la instancia de VM de Compute Engine, ejecútalo en la instancia de AlloyDB y úsalo para realizar pruebas de rendimiento en la instancia de AlloyDB.

Costos

En este instructivo, se usan componentes facturables de Google Cloud, como la red de VPC, AlloyDB y Compute Engine. Usa la calculadora de precios para generar una estimación de los costos según el uso previsto.

Antes de comenzar

  1. En la consola de Google Cloud , en la página del selector de proyectos, selecciona o crea un proyecto de Google Cloud .

    Ir a la página de selección de proyecto

  2. Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud . Descubre cómo confirmar que tienes habilitada la facturación en un proyecto.

  3. Habilita las APIs de la red de VPC, AlloyDB y Compute Engine.

    Habilitar las API

  4. Asegúrate de tener asignado el rol de administrador de AlloyDB a tu cuenta de usuario.

    Ve a la página IAM

Crear red de VPC

En esta sección, crearás una red de VPC para tu instancia de AlloyDB y tu instancia de VM de Compute Engine para que la comunicación pueda pasar de forma segura entre la instancia y la VM.

  1. Ve a la página Redes de VPC en la consola de Google Cloud .

    Ir a la página Redes de VPC

  2. Haz clic en Crear red de VPC. Aparecerá la página Crear una red de VPC.

  3. Ingresa my-vpc-network para el Nombre de tu red de VPC.

  4. En la sección Modo de creación de subred, selecciona la opción Personalizado.

  5. Haz clic en AGREGAR SUBRED.

  6. Ingresa my-subnet para el Nombre de tu subred.

  7. Selecciona una Región y, luego, ingresa un Rango de direcciones IP para tu subred.

  8. Haz clic en LISTO.

  9. Haz clic en CREAR.

Crea una instancia de AlloyDB

En esta sección, crearás una instancia de AlloyDB y asignarás y configurarás tu red de VPC para la instancia.

  1. En la consola de Google Cloud, ve a la página Clústeres.

    Ir a los clústeres

  2. Haga clic en Crear clúster.

  3. Configura tu clúster de la siguiente manera:

    1. En el campo ID de clúster de la sección Información básica, ingresa my-cluster.

    2. En el campo Contraseña, ingresa la contraseña que desees. Anota esta contraseña, ya que la volverás a usar más adelante en este instructivo.

    3. En el campo Región de la sección Ubicación, selecciona us-central1 (Iowa).

    4. En el campo Versión de la base de datos, mantén el valor predeterminado.

    5. En el menú Red, selecciona my-vpc-network. Creaste esta red de VPC en Crea una red de VPC.

    6. Como tu red de VPC aún no inicializó el acceso a servicios privados, haz clic en Configurar conexión.

    7. En el panel Crear una conexión a servicio privado que aparece, haz lo siguiente:

      1. Selecciona la opción Usar un rango de IP asignado automáticamente para que Google Cloud seleccione un rango de IP asignado automáticamente en tu red.

      2. Haga clic en Continuar.

      3. Haz clic en Crear conexión (Create connection).

  4. Configura tu instancia principal de la siguiente manera:

    1. En el campo ID de instancia, ingresa un ID para tu instancia principal.

    2. En Disponibilidad zonal, selecciona una de las siguientes opciones:

      1. Para crear una instancia de producción con alta disponibilidad y conmutación por error automática, selecciona Varias zonas (con alta disponibilidad).

      2. Para crear una instancia básica que no necesite tener alta disponibilidad, selecciona Zona única.

    3. Selecciona un tipo de máquina.

  5. Haz clic en Crear clúster para crear el clúster y la instancia principal juntos.

  6. Anota la dirección IP privada de tu instancia de AlloyDB que aparece en la página Instancias de AlloyDB. Necesitarás esta dirección para verificar la integración entre la instancia de AlloyDB y la instancia de VM de Compute Engine.

Crea una instancia de VM de Compute Engine

En esta sección, crearás una instancia de VM de Compute Engine y asignarás y configurarás tu red de VPC para la instancia.

  1. Ve a la página Instancias de VM en la consola de Google Cloud .

    Ir a la página Instancias de VM

  2. Haz clic en Crear instancia.

  3. En el campo Nombre de la página Crear una instancia, ingresa un identificador único para la instancia de VM de Compute Engine que estás creando. Para este instructivo, ingresa my-compute-engine-vm-instance en el campo.

  4. En la sección Permisos de acceso de la página, selecciona la opción Permitir el acceso total a todas las APIs de Cloud.

  5. Expande Opciones avanzadas y completa los siguientes pasos:

    1. Haz clic en la pestaña secundaria Herramientas de redes.

    2. Haz clic en Agregar una interfaz de red.

    3. En el menú Red, selecciona my-vpc-network. Creaste esta red de VPC en Crea una red de VPC.

    4. Haz clic en Listo. En la sección Interfaces de red de la página, aparecen dos redes de VPC: default y my-vpc-network.

  6. Haz clic en Borrar para borrar la red de VPC predeterminada.

    Si borras la red de VPC predeterminada, obligas a tu instancia de VM de Compute Engine a usar la red de VPC que creaste en este instructivo.

  7. Haz clic en Crear.

    La instancia de VM de Compute Engine puede tardar unos segundos en crearse. Después de esto, la instancia aparecerá en la página Instancias de VM y su estado será Running (como lo indica la marca de verificación).

Verifica la integración

En esta sección, instalarás pgbench en la instancia de VM de Compute Engine, la ejecutarás en la instancia de AlloyDB y la usarás para realizar pruebas de rendimiento en la instancia de AlloyDB.

  1. Conéctate a tu instancia de VM de Compute Engine. Para ello, haz clic en el menú SSH que se encuentra a la derecha de la instancia de la VM y, luego, selecciona Abrir en la ventana del navegador.

  2. Instala el paquete Contributed Extensions and Additions to PostgreSQL en tu instancia de VM de Compute Engine.

    sudo apt-get -y install postgresql-contrib
  3. Inicializa una base de datos para pgbench en tu instancia de AlloyDB para PostgreSQL. Por ejemplo, usa la base de datos postgres predeterminada:

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

    Reemplaza lo siguiente:

    • INSTANCE_PRIVATE_IP: Es la dirección IP privada de tu instancia de AlloyDB. Cuando creaste la instancia, tomaste nota de esta dirección IP.
    • PORT_NUMBER: Es el número de puerto reservado para tu instancia de AlloyDB. Para este instructivo, el número de puerto es 5432.
    • USERNAME: Es el nombre de usuario de administrador de tu instancia de AlloyDB. En este instructivo, el nombre de usuario es postgres.
  4. En el mensaje Password, ingresa la contraseña de tu instancia de AlloyDB. Cuando creaste la instancia, proporcionaste una contraseña para ella o AlloyDB generó una contraseña por ti.

  5. Ejecuta pgbench sin argumentos para verificar las funciones básicas.

    pgbench --host=INSTANCE_PRIVATE_IP --port=PORT_NUMBER --username=USERNAME
  6. En el mensaje Password, ingresa la contraseña de tu instancia de AlloyDB.

    Debería ver un resultado similar al siguiente:

    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. Usa algunas opciones para realizar una prueba útil. Algunas opciones importantes son -c (la cantidad de clientes) y --transactions (la cantidad de transacciones por cliente).

    En este instructivo, realiza una prueba de rendimiento en clientes 10 que acceden a tu base de datos de AlloyDB para PostgreSQL y a las transacciones 100 de cada cliente.

    pgbench --host=INSTANCE_PRIVATE_IP --port=PORT_NUMBER --username=USERNAME -c 10 --transactions=100
  8. En el mensaje Password, ingresa la contraseña de tu instancia de AlloyDB.

    Debería ver un resultado similar al siguiente:

    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)

Limpia

Una vez que termines este instructivo, puedes limpiar los recursos que creaste para que no consuman la cuota y no se te facturen en el futuro.

Sigue estos pasos para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos que usaste en este instructivo.

  1. Usa la consola de Google Cloud para borrar tu proyecto, la instancia de AlloyDB, la instancia de VM de Compute Engine y la red de VPC.

En las secciones siguientes, se describe cómo borrar o desactivar estos recursos.

Borra tu proyecto

La manera más fácil de eliminar la facturación es borrar el proyecto que creaste para este instructivo.

  1. Ve a la página Administrar recursos en la consola de Google Cloud .

    Ir a la página Administrar recursos

  2. En la lista de proyectos, elige el proyecto que deseas borrar y haz clic en Borrar.

  3. En el diálogo, escribe el ID del proyecto y, luego, haz clic en Cerrar para borrarlo.

Borra la instancia de AlloyDB

  1. Ve a la página Instancias de AlloyDB en la consola de Google Cloud .

    Ve a la página Instancias de AlloyDB

  2. Haz clic en el nombre de tu instancia de AlloyDB. En este instructivo, haz clic en my-instance.

  3. Haz clic en BORRAR.

  4. En el cuadro de diálogo, ingresa el nombre de tu instancia de AlloyDB en el campo de texto y, luego, haz clic en BORRAR.

Borra la instancia de VM de Compute Engine

  1. Ve a la página Instancias de VM en la consola de Google Cloud .

    Ir a la página Instancias de VM

  2. Haz clic en el nombre de tu instancia de VM de Compute Engine. En este instructivo, haz clic en my-compute-engine-vm-instance.

  3. Haz clic en el ícono Borrar. Este ícono se parece a un bote de basura.

  4. En el cuadro de diálogo, haz clic en BORRAR.

Borra la red de VPC

  1. Ve a la página Redes de VPC en la consola de Google Cloud .

    Ir a la página Redes de VPC

  2. Haz clic en el nombre de tu red de VPC. En este instructivo, haz clic en my-vpc-network.

  3. Haz clic en BORRAR RED DE VPC.

  4. En el cuadro de diálogo, haz clic en BORRAR.