Lista para producción
Lo que revisar antes de llevar un clúster de TeselaDB a producción.
Repasa esta lista antes de abrir el clúster a tus aplicaciones.
Máquinas
- Linux en x86_64 o aarch64. macOS sirve para desarrollar, sin garantías de latencia.
- Discos NVMe. TeselaDB escribe con
O_DIRECTy usa io_uring; si el kernel no lo tiene, usa hilos de E/S y lo dice en el log. - Al menos tres nodos, en máquinas distintas, para que cada rango siga respondiendo si cae uno.
- Relojes sincronizados con NTP. Un nodo cuyo reloj se aleja más de 125 ms de la mediana del clúster cede sus liderazgos y no acepta ninguno hasta volver al margen.
Recursos
| Opción | Por defecto | Qué hace |
|---|---|---|
--cores | núcleos lógicos | Un hilo por núcleo, igual en todos los nodos |
--cpu-list | CPU permitidas al proceso | En qué CPU se fija cada hilo |
--memory-limit | 75 % del mínimo entre la memoria física y el límite del cgroup | Memoria total del nodo |
--io-executor | auto | uring o threads |
--direct-io | auto | on u off |
Red
Abre entre los nodos el puerto 27100, a tus aplicaciones el 27017 y, si las usas, la API REST en el 27080. El puerto de administración 27200 solo debe verlo tu equipo de operación y tu sistema de métricas. Detalle en Puertos.
Seguridad
- No uses
--insecure. - Crea un usuario por aplicación con sus roles y guarda la contraseña de
rootfuera del servidor. - Activa el cifrado en reposo si tus discos no lo hacen ya: Cifrado en reposo.
Operación
- Programa copias con
teseladb admin backup: Copias y restauración. - Lleva
/metricsa Prometheus y/healthza tu balanceador: Monitorización. - Para apagar una máquina, drénala antes: Nodos.