Product Requirements
Obsidian 3.0 cuenta con una arquitectura nativa cloud. Para entornos de producción, se recomienda su despliegue sobre kubernetes o sobre OpenShift, aunque también es posible realizar un despliegue all-in-one sobre un servidor o un contenedor.
A continuación se detallan los requisitos recomendados para dimensionar la plataforma Obsidian 3.0.
Despliegue sobre Kubernetes/Openshift
En este bloque se contempla que Kafka esté incluido dentro del propio sistema.
Se dimensiona para tener microservicios duplicados para asegurar la escalabilidad de la plataforma.
Requisitos Cluster de kubernetes
Hardware
CPU | RAM | ALMACENAMIENTO PERSISTENTE | PODS |
---|---|---|---|
32 cores | 64 GB | 200 GB | 100 |
Versión mínima de k8s
1.28
Software adicional (aplicaciones HELM)
- cert-manager
- loki
- ingress-nginx
- sealed-secrets
- grafana
- kube-prometheus
- redis
- promtail
Políticas de red y dominios
- Acceso externo a los puertos:
- 443
- 80
- Asignación de un dominio sobre el cual se puedan asignar subdominios con wildcard (*)
Permisos
- Rol con accesos "get, list, watch" a los recursos "services, endpoints, pods"
- Recomendable tener un usuario con acceso a los namespaces de la aplicación, sus bds y monitorización
Servidor de MongoDB
Si no se dispone de un servidor de MongoDB, se considera que los requisitos necesarios para el mismo, por nodo, serían los siguientes:
CPU | RAM | ALMACENAMIENTO |
---|---|---|
2 cores | 8 GB | 80 GB |
Servidor de Kafka
En caso de instalación de servidor de Kafka externo, se considera que los requisitos necesarios para el mismo por nodo (recomendable 3 nodos), serían los siguientes:
CPU | RAM | ALMACENAMIENTO |
---|---|---|
2 cores | 3 GB | 40 GB |
Despliegue en un servidor all-in-one
Esta opción se recomienda para pruebas de concepto, entornos de desarrollo y preproducción o entornos de producción muy acotados. Obsidian 3.0 está diseñado para tener una arquitectura distribuida.
- SO: Limitado a aquellos sistemas compatibles con Docker + Docker Compose (Linux, Mac, Windows). Preferentemente recomendamos un Ubuntu Server o un Debian, pero no existe ningún requerimiento para ello.
Servidor de Obsidian
Requisitos mínimos:
CPU | RAM | ALMACENAMIENTO |
---|---|---|
8 cores | 24 GB | 128 GB |
Requisitos recomendados:
CPU | RAM | ALMACENAMIENTO |
---|---|---|
8 cores | 32 GB | 256 GB |
Se puede separar el servidor de Kafka y el motor de persistencia para aportar de mayor robustez a la plataforma. También podría utilizarse un servidor corporativo si el cliente lo dispone. Se adjuntan requisitos de éstas plataformas por separado. Se recomienda seguir manteniendo los requisitos recomendados en Obsidian pudiendo solamente reducir su almacenamiento a la mitad.
Servidor de Kafka
CPU | RAM | ALMACENAMIENTO |
---|---|---|
4 cores | 6 GB | 40 GB |
Motor de persistencia MongoDB
Si no se dispone de un servidor de MongoDB, se considera que los requisitos necesarios para el mismo, por nodo, serían los siguientes:
CPU | RAM | ALMACENAMIENTO |
---|---|---|
2 cores | 8 GB | 80 GB |