Configura AlloyDB Omni para producción

Selecciona una versión de la documentación:

En esta página, se muestran las configuraciones comunes cuando se usa AlloyDB Omni para cargas de trabajo de producción.

Habilita páginas enormes

Al igual que PostgreSQL, AlloyDB Omni admite el uso de páginas enormes. Para ello, tu máquina debe tener habilitadas las páginas enormes, y también debes habilitar la configuración de la base de datos huge_pages.

  1. Ejecuta la secuencia de comandos proporcionada para habilitar páginas enormes en tu máquina:

    docker run --rm --privileged google/alloydbomni setup-host
  2. Agrega la siguiente línea a tu postgresql.conf para habilitar páginas enormes:

    huge_pages=on
    

Habilita el intercambio

El intercambio en el sistema operativo permite extender la memoria física disponible moviendo las páginas de memoria inactivas entre la memoria de acceso aleatorio (RAM) y el disco duro para liberar espacio de RAM para los procesos activos. AlloyDB Omni usa el intercambio cuando está bajo una carga alta y requiere memoria adicional.

Para verificar cuánto espacio de intercambio está habilitado en tu sistema, ejecuta lo siguiente:

cat /proc/meminfo | grep SwapTotal

El resultado es similar al siguiente:

SwapTotal:      165748732 kB

Para habilitar el intercambio en tu sistema operativo si el valor de salida es 0, consulta lo siguiente:

Habilita los volcados de memoria

Si AlloyDB Omni encuentra un error irrecuperable y falla, es útil tener un volcado de memoria para el análisis. Un volcado de memoria es una instantánea de la memoria del proceso de AlloyDB Omni en el momento de su falla.

Para configurar los volcados de memoria, configura kernel.core_pattern de la siguiente manera:

  1. Usa el comando sysctl para configurar los parámetros del kernel en tiempo de ejecución.
  2. Para configurar kernel.core_pattern de inmediato, usa lo siguiente:

    sysctl -w kernel.core_pattern="CORE_PATTERN"

    Reemplaza CORE_PATTERN por un patrón de nombre de archivo principal, como "%e-%t.core".

    Para obtener más información sobre los patrones de nombres de archivos principales, consulta Cómo configurar nombres de archivos principales de procesos para obtener detalles.

    El controlador systemd-coredump permite configurar aún más los parámetros de configuración de coredump. La herramienta se instala de forma predeterminada en RHEL. En los sistemas Debian y Ubuntu, ejecuta sudo apt install coredumpctl para instalar la herramienta.

    Cuando inicies AlloyDB Omni, asegúrate de pasar el argumento --ulimit=core:-1:-1 en el comando docker run:

    docker run --name CONTAINER_NAME \
    -e POSTGRES_PASSWORD=NEW_PASSWORD \
    --ulimit=core:-1:-1 \
    -p HOST_PORT:5432 -d google/alloydbomni

    Reemplaza lo siguiente:

    • CONTAINER_NAME: Es el nombre de un contenedor nuevo de AlloyDB Omni, por ejemplo, my-omni-1.
    • <code>NEW_PASSWORD: Es la contraseña asignada al usuario postgres del contenedor nuevo después de su creación.

Configura unidades systemd para ejecutar operaciones de forma automática

Si ejecutas AlloyDB Omni en un servidor dedicado, es posible que desees configurar ciertas operaciones para que se inicien automáticamente cuando se inicie el servidor. Una forma de hacerlo es a través de unidades systemd.

Por ejemplo, los siguientes pasos configuran systemd para que las páginas enormes se habiliten automáticamente cada vez que se inicia el servidor.

  1. Crea un archivo en /etc/systemd/system/alloydb-setup-env.service:

    [Unit]
    Description=Setup huge pages for AlloyDB Omni
    
    [Service]
    Type=oneshot
    
    ExecStart=/usr/bin/docker run --rm --privileged google/alloydbomni setup-host
    
    [Install]
     WantedBy=multi-user.target
    
  2. Habilita el servicio de la siguiente manera:

    sudo systemctl enable alloydb-setup-env.service

¿Qué sigue?