Arquitectura Data-Centric
Arquitectura Flexible basada en microservicios
Agile Platform
Arquitectura basada en contenedores
Independencia en el despliegue
Arquitectura multi-protocolo
Arquitectura segura
Plataforma Open Source construida sobre componentes Open
...
Table of Contents |
---|
Introducción
Onesait Platform ofrece una gran número de ventajas para el desarrollo y despliegues de todo tipo de soluciones (microservicios, IoT, AI,...).
Onesait Platform provee la flexibilidad para que los desarrolladores puedan construir sus propias soluciones de una forma sólida y ágil usando tecnologías Open Source y una arquitectura flexible basada en microservicios.
Onesait Platform cubre el ciclo de vida completo de la información (desde la ingesta a la visualización pasando por el procesado y analizado) y ofrece una consola web unificada para el desarrollo y operación de las soluciones construidas sobre la plataforma,
La plataforma ofrece diferentes asistentes para desarrollar sistemas con arquitecturas complejas en una forma sencilla y reduciendo el time2market.
...
Arquitectura Data-Centric
En la Plataforma los datos son el activo principal y permanente, El enfoque Data-Centric convierte el dato en su núcleo. Hay un modelo de datos, un modelo de datos semánticos y cada funcionalidad de la aplicación lee y escribe a través del modelo compartido.
La arquitectura Data-Centric se soporta a través del concepto de Ontología, y toda la funcionalidad de la plataforma se basa en este concepto.
...
La ontología puede persistir en diferentes repositorios y aísla al usuario del repositorio subyacente, de modo que el resto de los componentes no necesitan saber dónde están almacenadas las ontologías.
...
Arquitectura flexible basada en microservicios
Las capacidades de la plataforma, como la publicación, visualización, mensajería se basada en una arquitectura de microservicios. Esto asegura la separación de conceptos entre diferentes partes y ofrece flexibilidad para la personalización de las diferentes capacidades.
Los componentes de la plataforma interactúan vía Open APIs, lo que permite que estos puedan ampliarse o sustituirse según las necesidades, además son fácilmente integrables con otros sistemas
...
. A su vez la plataforma ofrece herramientas para poder crear, compilar y desplegar microservicios a través de sus asistentes.
Agile Platform
La plataforma está pensada para agilizar el desarrollo de sistemas complejos
Visión unificada:
...
las piezas se gestionan desde un entorno web único, con herramientas gráficas que guían el desarrollo
Desarrollo Business-Centric:
...
permite construir sistemas complejos aislándose de las complejidades de la tecnología subyacente
Gestión del ciclo de vida del software: la plataforma cubre todas las fases, desde el desarrollo al despliegue,
Desarrollo flexible: permite seleccionar qué piezas de la plataforma se quieren utilizar, uniendo estas piezas a un desarrollo tradicional.
...
Arquitectura basada en contenedores
La plataforma ejecuta sobre contenedores
...
Docker orquestados con Kubernetes y operados por un CaaS, esto permite:
Ahorro de costes vs despliegues tradicionales
Escalabilidad: todos los componentes de la plataforma desplegados como contenedores pueden escalar dinámicamente según las necesidades
Estandarización: garantizando la coherencia en múltiples entornos proporcionando entornos repetibles
Compatibilidad y Mantenibilidad: las imágenes se ejecutan igual sin importar donde, lo que aumenta la mantenibilidad del sistema
Enfoque DevOps: los contenedores nos ayudan a reducir el tiempo de despliegue además de automatizar el proceso de desarrollo y despliegue
Aislamiento y seguridad: los contenedores garantizan que las aplicaciones están aisladas y sólo tienen acceso a sus recursos, además de la seguridad que da esta separación.
Independencia en el despliegue
Todos los servicios de la plataforma se pueden desplegar donde se prefiera.
Puedes desplegar en cualquier Cloud pública o privada o un tu propio CPD (metal o VMs). Además la plataforma es perfecta para despliegues híbridos donde por ejemplo la persistencia esté en el Data Center del cliente y el procesamiento en el Cloud.
Para esto la plataforma tiene un instalador basado en Ansible que vía Terraform permite provisionar en los diferentes proveedores.
Además de esto la plataforma tiene integración con diferentes servicios de Clouds como los de Azure, GCP, Amazon y permite usar de forma transparente estos servicios (pj servicio Kubernetes en Azure o AWS, Google BigQuery, Azure Intelligence Services,...).
Arquitectura multi-protocolo
La plataforma soporta múltiples protocolos, de modo que en función del tipo del sistema se pueda elegir el más adecuado, así podemos usar:
Mensajería sobre MQTT para la comunicación con dispositivos, MQTT es uno de los principales protocolos en el ámbito IoT
APIS REST para comunicación con otros sistemas, la plataforma permite construir y desplegar estos interfaces de forma visual
Kafka para escenarios Big Data donde es fundamental el rendimiento y ser capaces de procesar cientos o miles de eventos por segundo
WebSockets para comunicación bidireccional en aplicaciones web
Otros muchos protocolos a través del componente DataFlow, como OPC, Amazon SQS, CoAP, Google PubSub, AQMP, JMS, Hadoop,...
Arquitectura segura
De cara al exterior toda la comunucación con y hacia la plataforma se hace con TLS y SSL
Toda la comunicación entre los microservicios de plataforma también se puede configurar para hacerse vía HTTPS, para eso los contenedores utilizan el patrón Sidecar que se encarga de establecer la seguridad.
La plataforma soporta diversos mecanismos de autenticación y autorización, usando por defecto OAuth2.
La plataforma también ofrece gestión del ciclo de vida de los credenciales, lo que permite proveerlos, suspenderlos, revocarlos.
Plataforma Open Source construida sobre componentes Open
La plataforma está construida sobre un gran número de componentes open-source ampliamente probados y estándares en su ámbito.
Esto reduce la curva de uso de estas tecnologías a los nuevos usuarios de plataforma, donde además esta ofrece herramientas que permiten usarlos de una forma más sencilla y productiva.
El compromiso con el Open Source es tal que además la plataforma es completamente open-source y está liberada en Github.
...
Más información
Child pages (Children Display) | ||||||||
---|---|---|---|---|---|---|---|---|
|