Configura AlloyDB Omni para producción

En esta página, se muestra la configuración común cuando se usa AlloyDB Omni para cargas de trabajo de producción.

Servidor único

Habilita las 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 un parámetro de configuración de la base de datos huge_pages.

  1. Ejecuta la secuencia de comandos proporcionada para habilitar las 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 las páginas grandes:

    huge_pages=on
    

Habilita el intercambio

El intercambio en el sistema operativo permite extender la memoria física disponible moviendo 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 el 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:

Cómo habilitar los volcados de memoria

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

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

  1. Usa el comando sysctl para configurar los parámetros del kernel del tiempo de ejecución.
  2. Para configurar kernel.core_pattern de inmediato, usa lo siguiente: posix-terminal 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 archivo principales, consulta Cómo configurar los nombres de archivo principales del proceso. El controlador systemd-coredump permite configurar mejor la 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: posix-terminal 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 nuevo contenedor de AlloyDB Omni, por ejemplo, my-omni-1.
  • <code>NEW_PASSWORD: La contraseña asignada al usuario postgres del contenedor nuevo después de su creación.

Cómo configurar unidades systemd para ejecutar operaciones automáticamente

Si ejecutas AlloyDB Omni en un servidor dedicado, te recomendamos que configures 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 grandes 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?