Una de las decisiones más importantes cuando estamos iniciando con Odoo en nuestras empresas es el esquema de despliegue. Me refiero a dónde y cómo alojar nuestra instancia de Odoo. Las opciones son distintas si es Odoo Community o si es Enterprise.
En este artículo vamos a ver las opciones para Odoo Enterprise. Para este caso tenemos: Odoo SaaS, Odoo.sh, On-Premises.
Veamos qué significa cada una y qué beneficios ofrecen. Además veremos las condiciones o desafíos que implican.
Odoo SaaS
En el esquema SaaS (Software as a Service) los usuarios pueden disfrutar de las bondades de Odoo sin necesidad de invertir en servidores, dispositivos de interconexión y otros. Solo requiere de un computador con un navegador web y acceso a Internet.
Para acceder a este servicio el cliente solo tiene que pagar el licenciamiento (usuarios y aplicaciones) y habilitar la nueva base de datos. La base de datos se habilita con las aplicaciones elegidas e incluidas en el contrato de licenciamiento.
En este esquema se debe usar el software tal cual, con las funcionalidades que ofrece de caja. No es posible incluir personalizaciones o módulos de terceros en este esquema. Por tanto, es ideal para clientes que operan en países para los que Odoo incluye localizaciones por defecto.
En este esquema Odoo (el sistema) está alojado en servidores de Odoo SA (la empresa) a los que los clientes no tienen acceso directo. Odoo lo gestiona absolutamente todo, desde el sistema operativo hasta los datos de la instancia.
Odoo.sh
Odoo.sh es una plataforma que ofrece capacidades adicionales a las de Odoo SaaS. Es mantenida por el propio Odoo SA y se adquiere con un licenciamiento de Odoo.
El principal beneficio de Odoo.sh es que permite disfrutar de Odoo como servicio (SaaS) a la vez que permite incluir personalizaciones y módulos de terceros. Por esto es ideal para clientes que prefieren SaaS y además, necesitan incluir localizaciones que no vienen por defecto en Odoo (desarrolladas por partners, como AteneoLab).
Odoo.sh es un PaaS e IaaS, como ellos mismos se definen (para mi es más un PaaS, luego hablaré más sobre esto). Por lo que ofrece ciertas libertades con nuestra instancia, como gestión de repositorio, módulos personalizados, monitoreo de la instancia, acceso al servidor mediante ssh y otros.
Odoo.sh implica que Odoo está alojado (al igual que SaaS) en servidores de Odoo.
On-premises
El esquema On-premises se refiere al alojamiento de Odoo en servidores del cliente (o al menos en servidores NO de Odoo. Por ejemplo en servidores de partners. Luego hablaré más sobre esto).
Esto implica que el cliente debe invertir en (o contar ya con) servidores e infraestructura para el alojamiento de Odoo. Este esquema ofrece el máximo de libertades respecto a la gestión de la instancia.
Esto puede parecer bueno en todos los sentidos (y puede serlo), pero hay que considerar que las "libertades" también implican responsabilidades.
¿A qué me refiero? A esto... Una vez que eres responsable por los servidores, también eres responsable por la infraestructura en general: disponibilidad del sistema, seguridad en cada una de las capas (red, sistema operativo, aplicación), respaldos, integración con servicios de terceros (email, repositorios, etc).
Este esquema es ideal para empresas que están preparadas para administrar su propio centro de datos. La preparación implica no solo los "fierros" (servidores, firewalls, dispositivos de interconexión, cableado, refrigeración, etc, etc, etc), sino además, personal capacitado para la administración de estos recursos.
Como puedes ver, cada esquema tiene sus ventajas y sus desafíos. Cada uno es ideal para tipos de clientes específicos. Para tener elementos más formales de comparación, hagamos eso propiamente, comparemos...
Odoo SaaS vs Odoo.sh vs On-premises
Criterio | SaaS | Odoo.sh | On-premises |
Alojamiento | Odoo | Odoo | Cliente |
Precio | Gratis | Según recursos: workers, disco, áreas de prueba, servidor dedicado o compartido. | Por cuenta del cliente |
Permite módulos personalizados | No | Sí | Sí |
Conocimientos técnicos necesarios | Ninguno | Intermedio | Avanzado |
Necesidad de personal técnico | No | Sí | Sí |
Requiere invertir en equipos | No | No | Sí |
Responsable de la disponibilidad | Odoo | Odoo | Cliente |
Responsable de la seguridad | Odoo | Odoo | Cliente |
Responsable de respaldos | Odoo | Odoo | Cliente |
Responsable de servidores | Odoo | La administración es compartida. Odoo administra el sistema operativo, el motor de bases de datos. El cliente administra módulos de 3ros o personalizados, librerías de python, logs de Odoo. | Cliente |
Acceso al código fuente | No | Sí | Sí |
Soporte | 100% Odoo | El soporte es compartido. Odoo y el desarrollador de los módulos de 3ros | Odoo ofrece soporte limitado, pues no tiene acceso completo a la instancia. |
Disponibilidad de recursos | Gestionado 100% por Odoo, no público para los clientes. | De acuerdo con los recursos contratados. | Gestionados 100% por el cliente. |