Las compañías deben tener un stack tecnológico capaz de escalar, dar servicio a los requerimientos presentes (y futuros) y con las capas de seguridad adecuadas. De esta forma, cuando el volumen de usuarios aumenta, las llamadas a las APIs se disparan o cuando hay eventos concretos que requieren mayor disponibilidad de servicio, el sistema es capaz de monitorizarlo y escalar de forma adecuada.
DruID es un SaaS flexible, configurable y escalable desde sus orígenes, por ello, apostamos por realizar nuestro despliegue mediante Kubernetes ya que potencia aún más nuestro diseño original.
Para hablaros sobre este tipo de despliegue, es mejor comenzar con un paso previo, Docker.
DruID con Docker
De forma resumida Docker es una plataforma que empaqueta código, herramientas, bibliotecas…, es decir, diferentes piezas que estructuran nuestro software en contenedores.
Esta modalidad permite desplegar aplicaciones de manera limpia y sencilla en diferentes sistemas Windows, Linux o Mac mediante contenedores estándar para cada aplicación. En nuestro caso con DruID, podemos desplegar aplicaciones como Login, Register, Pulse, Rewards, independientemente de donde se hagan, modo cloud u on-premise.
Las ventajas de desplegar DruID utilizando Docker es que permite estandarizar operaciones y además ejecutar arquitecturas de servicios distribuidos de manera simultánea.
Automatización con Kubernetes
Kubernetes es una plataforma portable y extensible open-source que permite administrar y automatizar cargas de trabajo y servicios.
Kubernetes entra en juego en el despliegue de DruID para automatizar el proceso y la configuración del software.
Permite administrar servicios y cargas de trabajo cuando, por ejemplo, ocurren determinados eventos, como una campaña de adquisición potente o un hito en el calendario como Black Friday, que anticipan picos de tráfico puntuales que requieren de mayores llamadas a nuestros servicios y, por tanto, demandan un escalado rápido pero controlado.
DruID tiene 3 modalidades de arquitectura que permiten diferentes niveles de escalado a disposición de nuestros clientes. Cuando una compañía requiere un servicio distribuido es Kubernetes el encargado de hacer esta gestión distribuyendo aplicaciones y cargas de trabajo entre máquinas de manera automática.
Este sistema para orquestar máquinas proporciona numerosas ventajas a los desarrolladores y departamentos de TI durante la fase de despliegue y, además, hace de nuestra plataforma de Identidad, Tracking en Tiempo Real y Activación una solución óptima, no sólo por sus capacidades, sino por su eficiencia operativa y tipo configuración.
Beneficios de un despliegue mediante Kuberneters:
- Resiliencia tecnológica: ya que permite definir ciertas aplicaciones de servicios (servicios de login, servicio de cualificación avanzada, etc) de DruID para que estén disponibles de manera constante y, por tanto, si hay algún error o actualización, que nuestros clientes siempre tengan a su disposición esos servicios.
- Zero-donwtime en actualizaciones: permite que virtualmente no haya cortes de servicio al realizar actualizaciones u operaciones de mantenimiento de DruID o Pulse (nuestro motor de Real Time Tracking y monitorización de consumidor).Es decir, Kubernetes es capaz de desplegar un nuevo pod (grupo de uno o más contenedores con especificaciones concretas) de un servicio en la version X+1 y hasta no estar seguro de que el despliegue ha sido correcto, no eliminar el anterior pod (el de la version X).
- Disminución de costes: optimizar el uso de las máquinas que se utilizan. Gracias al clúster de Kubernetes puedes incorporar varios servicios en una misma máquina, y en caso de necesitar mayor disponibilidad delegar en Kubernetes la distribución de servicios.
- Disminución de tiempos de espera: gracias al soporte constante de determinadas aplicaciones y cargas de trabajo.
Las cargas de trabajo definen las aplicaciones que se ejecutan en un clúster de Kubernetes, las cuales se pueden predefinir para que se ejecuten de manera constante, estén disponibles y con ello, no tener tiempos muertos. - Escalado: cómo hemos comentado, permite disponer y optimizar los servicios y administrar el tráfico entre los mismos, así como definir nuevas máquinas y ponerlas a disposición de la demanda.
Cada día es un nuevo aprendizaje. Nosotros como plataforma flexible y con numerosos servicios nos apoyamos en Kubernetes para cualquier proceso de despliegue on-premise, en tu cloud o en la de un tercero.
Como siempre estamos aquí para inspirar y compartir nuestra metodología. DruID propone una metodología que abarca todas las fases del funnel táctico de una compañía. Desde el despliegue del software hasta la explotación de datos a través de la activación inteligente que reporta numerosos beneficios a compañías Direct-To-Consumer.
¿Quieres aprender más con nosotros?