En este documento se describe cómo preparar la ejecución de AlloyDB Omni en cualquier entorno Linux que admita tiempos de ejecución de contenedores.
Para obtener una descripción general de AlloyDB Omni, consulta el artículo Descripción general de AlloyDB Omni.
Tamaño y capacidad
El tamaño y la capacidad influyen directamente en el rendimiento, la fiabilidad y la rentabilidad de tu instancia de AlloyDB Omni. Cuando migras una base de datos, los recursos de CPU y memoria necesarios son similares a los requisitos del sistema de la base de datos de origen.
Planifica empezar con una implementación que use recursos de CPU, RAM y disco coincidentes, y usa la configuración del sistema de origen como configuración de referencia de AlloyDB Omni. Es posible que puedas reducir el consumo de recursos después de realizar suficientes pruebas de tu instancia de AlloyDB Omni.
Para dimensionar un entorno de AlloyDB Omni, debes seguir estos pasos:
Define tu carga de trabajo.
Volumen de datos: calcula la cantidad total de datos que almacenarás en AlloyDB Omni. Ten en cuenta tanto los datos actuales como el crecimiento previsto a lo largo del tiempo.
Tasa de transacciones: determina el número de transacciones por segundo (TPS) esperado, incluidas las lecturas, las escrituras, las actualizaciones y las eliminaciones.
Simultaneidad: estima el número de usuarios o conexiones simultáneos que acceden a la base de datos.
Requisitos de rendimiento: define los tiempos de respuesta aceptables para los distintos tipos de consultas y operaciones.
Asegúrate de que tu hardware cumpla los requisitos de tamaño.
CPU: AlloyDB Omni se beneficia de los sistemas con varios núcleos de CPU y se escala de forma lineal en función de la carga de trabajo. Sin embargo, PostgreSQL de código abierto no suele beneficiarse de más de 16 vCPUs. Ten en cuenta lo siguiente:
- El número de núcleos en función de la simultaneidad de la carga de trabajo y las necesidades de computación.
- Cualquier ganancia que pueda producirse debido a un cambio en la generación de la CPU o en la plataforma.
Memoria: asigna suficiente RAM a los búferes compartidos de AlloyDB Omni para almacenar en caché los datos y a la memoria de trabajo para procesar las consultas. El requisito exacto depende de la carga de trabajo. Empieza con 8 GB de RAM por vCPU.
Almacenamiento
Tipo: en función de tus necesidades, elige entre almacenamiento NVMe local para mejorar el rendimiento o almacenamiento SAN para aumentar la escalabilidad y compartir datos.
Capacidad: asegúrate de que haya suficiente almacenamiento para el volumen de datos, los índices, el registro de escritura anticipada (WAL), las copias de seguridad y el crecimiento futuro.
IOPS: estima las operaciones de entrada/salida por segundo (IOPS) necesarias en función de los patrones de lectura y escritura de tu carga de trabajo. Cuando ejecutes AlloyDB Omni en una nube pública, ten en cuenta las características de rendimiento de tu tipo de almacenamiento para saber si necesitas aumentar la capacidad de almacenamiento para alcanzar un objetivo de IOPS específico.
Requisitos previos para ejecutar AlloyDB Omni
Antes de ejecutar AlloyDB Omni, asegúrate de que cumples los siguientes requisitos de hardware y software.
Requisitos de hardware
SO/Plataforma | Hardware mínimo | Hardware recomendado |
---|---|---|
Linux |
|
|
macOS |
|
|
- Te recomendamos que utilices una unidad de almacenamiento de estado sólido (SSD) específica para almacenar tus datos. Si utilizas un dispositivo físico para ello, te recomendamos que lo conectes directamente al equipo host.
Requisitos de software
SO/Plataforma | Software mínimo | Software recomendado |
---|---|---|
Linux1 |
|
|
macOS |
|
|
- AlloyDB Omni da por hecho que, si SELinux está presente, se configura en el host para permitir que se ejecute el contenedor, incluido el acceso al sistema de archivos (o que SELinux se haya configurado como permisivo).
Tipos de almacenamiento admitidos
AlloyDB Omni admite sistemas de archivos en volúmenes de almacenamiento en bloques en instancias de bases de datos. En el caso de sistemas de desarrollo o de prueba más pequeños, utiliza el sistema de archivos local del host en el que se ejecuta el contenedor. Para las cargas de trabajo empresariales, usa el almacenamiento reservado para las instancias de AlloyDB Omni. En función de las exigencias de la carga de trabajo de tu base de datos, configura tus dispositivos de almacenamiento en una configuración singleton con un dispositivo de disco por cada contenedor o en una configuración consolidada en la que varios contenedores lean y escriban en el mismo dispositivo de disco.
Almacenamiento NVMe o SAN local
Tanto el almacenamiento local Non-Volatile Memory Express (NVMe) como el almacenamiento de red de área de almacenamiento (SAN) ofrecen ventajas distintas. Elegir la solución adecuada depende de los requisitos específicos de tu carga de trabajo, tu presupuesto y tus necesidades de escalabilidad futuras.
Para determinar la mejor opción de almacenamiento, ten en cuenta lo siguiente:
- Para priorizar el rendimiento absoluto, elige NVMe local.
- Si necesitas almacenamiento compartido a gran escala, elige una SAN.
- Si necesitas equilibrar el rendimiento y el uso compartido, considera la posibilidad de usar una SAN con NVMe over Fabrics para disfrutar de un acceso más rápido.
Almacenamiento NVMe local
NVMe es un protocolo de alto rendimiento diseñado para unidades de estado sólido (SSDs). En el caso de las aplicaciones que necesitan un acceso rápido a los datos, el almacenamiento NVMe local ofrece las siguientes ventajas:
- Las unidades SSD NVMe se conectan directamente al bus Peripheral Component Interconnect Express (PCIe) para ofrecer velocidades de lectura y escritura rápidas.
- El almacenamiento NVMe local ofrece la latencia más baja.
- El almacenamiento NVMe local proporciona el mayor rendimiento.
Para escalar el almacenamiento NVMe local, es necesario añadir más unidades a servidores individuales. Sin embargo, añadir más unidades a servidores individuales provoca que los grupos de almacenamiento se fragmenten y que la gestión sea más compleja. El almacenamiento NVMe local no está diseñado para compartir datos entre varios servidores. Como el almacenamiento NVMe local es local, los administradores de servidores deben protegerse contra los fallos de disco mediante RAID (matriz redundante de discos independientes) de hardware o software. De lo contrario, si falla un solo dispositivo NVMe, se perderán los datos.
Almacenamiento SAN
Una SAN es una red de almacenamiento dedicada que conecta varios servidores a un conjunto compartido de dispositivos de almacenamiento, a menudo SSDs o almacenamiento NVMe centralizado. Aunque las SAN no son tan rápidas como las NVMe locales, las SAN modernas, especialmente las que usan NVMe over Fabrics, siguen ofreciendo un rendimiento excelente para la mayoría de las cargas de trabajo empresariales.
Las SANs son muy escalables. Para añadir más capacidad de almacenamiento o rendimiento, añade nuevas matrices de almacenamiento o actualiza las que ya tienes. Las SANs proporcionan redundancia en la capa de almacenamiento, lo que ofrece protección contra fallos en los medios de almacenamiento.
Las SANs son excelentes para compartir datos. En entornos empresariales que requieren alta disponibilidad, varios servidores pueden acceder a los datos almacenados en la SAN y compartirlos. En caso de que falle un servidor, puedes presentar el almacenamiento SAN a otro servidor del centro de datos, lo que permite una recuperación más rápida.