Release 2.3.0-immortal de la Onesait Platform

Header Onesait Platform Release

Pues un cuatrimestre más, aquí os traemos la nueva release de la Onesait Platform, alcanzando su versión 2.3, y la cual nos habéis ayudado a nombrar como «Immortal», siguiendo como sabéis la política de versionado que tenemos establecida.

Con ello completamos el roadmap de 2020, habiendo alcanzando casi todos los puntos que nos habíamos propuesto.

Si no tenéis lupa a mano, pinchad sobre la imagen.

Así que bueno, veamos qué novedades hemos incluido en este Q4.


Engine

Esta versión da soporte al desarrollo de microservicios y todo tipo de aplicaciones. Para simplificar el desarrollo de estas funcionalidades la plataforma permite el desarrollo visual con un enfoque LowCode, incorporando una consola web centralizada que soporta la administración, configuración, desarrollo y despliegue.

En esta versión hemos incorporado importantes características:

Log centralizado

Esta es una funcionalidad que nos habíais solicitado en diferentes ocasiones, y aunque las plataformas CaaS ya ofrecen soporte a esto, hemos decidido incorporar una solución de gestión centralizada de logs.

Hemos optado por basarla en Graylog, que es una solución Open Source especializada en la gestión centralizada de logs, y además así aprovechar los trabajos previos que otros compañeros hicieron en la iniciativa Onesait Revolution (concretamente el equipo de onesaitplatform-revolution-onelog).

En esta primera versión de la funcionalidad, se han centralizado los logs de los componentes de la Plataforma, y se indica cómo adaptar los logs de otros componentes (por ejemplo, un microservicio) permitiendo hacer completas búsquedas por componente, tiempo, tipo de log, etc.

En la próxima release tenemos intención de integrar el UI de Graylog dentro del Control Panel de la Plataforma.

Podéis encontrar más información sobre esta funcionalidad en el siguiente artículo: Logs centralizados.

Integración Keycloak como Identity Manager Advanced

Como sabéis, la Plataforma incluye un Identity Manager construido sobre Spring Cloud Security, el cual cubre los casos de uso de seguridad típicos como la autenticación, autorización, realms, plugins, etc. (echadle un ojo a las guías de Identity Manager si queréis conocer más al respecto).

Hemos detectado que en algunos casos, esta funcionalidad no es suficiente en los Proyectos y Productos; por ejemplo, cuando se necesita autenticar contra múltiples repositorios de usuarios y proveedores de autenticación (user federation), integración con otros IM (identity brokering), personalización del flujo de autenticación y sesiones, etc. Por ello, hemos decidido incorporar Keycloak como un Identity Manager alternativo para estos escenarios el cual es una solución Open Source referente en este ámbito.

En esta integración hemos mapeado los realms de Keycloak con los verticales de la Plataforma, los Keycloak Clients con los Realms de la Plataforma y como Provider por defecto usamos la ConfigDB de la Plataforma (aunque puede utilizarse también LDAP).

Podéis encontrar más información sobre la integración en esta guía: Soporte Keycloak como Identity Manager Advanced.

Generación de aplicaciones web Vue.js desde diseño FIGMA

En la actualidad, FIGMA se ha convertido en la herramienta estándar para diseñar los UIs de las aplicaciones, siendo por ejemplo la herramienta que se usa en el equipo de Onesait UX.

A partir del plugin figma-low-code, creado por Klaus Schaefers (un auténtico referente en el mundo Open Source en este ámbito) y a partir de la información sobre las variables y métodos introducidas en el plugin dentro de la Plataforma, se puede mapear esa información con métodos de nuestras APIs REST.

A partir de ahí, la Plataforma es capaz de generar una aplicación en Vue.js completamente operativa, en la que además podemos integrar los Dashboards de la Plataforma de forma muy sencilla.

Podéis encontrar una guía de uso aquí: Generación de aplicaciones web Vue.js a partir de un diseño FIGMA.

(Nueva) configuración centralizada

Aunque esta funcionalidad ya existía, estaba más pensada para usar por administradores de la Plataforma, e internamente por la Plataforma. En esta release, se ha remodelado la funcionalidad para que los developers puedan crear sus propias configuraciones y, además, puedan usarlas desde sus propios microservicios o aplicaciones.

¿Interesados? Podéis encontrar más información en la sección: Central Configuration Guides.

Exportación de queries desde Query Tool

Muchos de vosotros echabais en falta una utilidad que permitiese exportar los datos de una consulta realizada desde el Query Tool en diversos formatos. Pues bien, ¡aquí lo tenéis por fin!

La utilidad permite exportar los resultados de la consulta en formato CSV y JSON. Además, si eres usuario administrador no se aplicará el límite de registros que configura la Plataforma, por lo que en una consulta podrás exportar todos los datos.

Esto lo tenemos explicado en la guía de Query Tool Guides.

Caché en APIs

A la hora de definir un API en la Plataforma, se podrá introducir un intervalo de cacheado (en minutos) como atributo de configuración, el cual será el tiempo en el que los registros serán válidos en la caché. Una vez superado ese periodo de permanencia, se volverá a recuperar la información del origen de datos.

Podéis ver cómo funciona esta funcionalidad en detalle en la siguiente guía: Caché en APIs.

Lanzamiento asíncrono de herramienta de importación/exportación

En esta versión, hemos mejorado la herramienta que permite exportar e importar los elementos de la Plataforma para que el lanzamiento sea asíncrono y de esta forma no os sucedan esos incómodos timeouts que tanto nos molestan.

Tenéis más información al respecto en la sección de Export-Import Tool Guides.

Mejoras varias

Como sabéis, siempre estamos atentos a vuestras opiniones y comentarios, por lo que en esta release hemos incorporado varias de las mejoras que vienen de vuestras peticiones, tanto de las que hacéis vía ticket de soporte, como desde Delibera, una nueva herramienta que estamos utilizando y que nos ha permitido una participación más global aplicando Inteligencia Colaborativa.

Las mejoras aplicadas han sido las siguientes:

  • Paginado en listado de usuarios de Realms:
  • Configuración para no cargar datos de ejemplo en instalación de la Plataforma.
  • Soporte Bulk de upserts en componente UPDATE de Dataflow:
  • Mejoras en APIs de Gestión del componente Open Data.
  • Mejoras en nuevo SQL Engine: soportando operadores (pj select 2+3*6/(5-3) from Restaurants, unions, etc.
  • Eliminación física de usuarios (desde listado y detalle).

Intelligence

Esta distribución de la Plataforma da soporte al desarrollo de sistemas que hacen uso de las capacidades de Inteligencia, bien sea con sus capacidades IA, de ingesta desde diferentes fuentes, analítica, visualización, etc.

En este trimestre hemos trabajado en:

Soporte DocumentDB en DataHub

A partir de esta release, puede usarse DocumentDB como otros de los motores de persistencia soportados por la Plataforma (ya sabéis que soportamos cualquier base de datos relacional, MongoDB, Elasticsearch, Kudu, HIVE, CosmosDB, etc.).

DocumentDB es un servicio de base de datos de documentos ágil, escalable, de alta disponibilidad y completamente administrado en Amazon AWS que es completamente compatible con el API y operación de MongoDB.

Gracias al nuevo motor de consultas SQL, podremos usar una instancia de DocumentDB como si fuera un MongoDB 4.0, permitiendo que todo el desarrollo realizado sea compatible.

En el siguiente enlace podéis ver los Storages soportados en la Plataforma: Storage Engines.

Soporte AuroraDB en Semantic DataHub

Amazon Aurora es una base de datos relacional compatible con MySQL y PostgreSQL ofrecida por AWS como servicio.

La integración con AuroraDB nos permite usarla como ConfigDB para despliegues de la Plataforma, pero también como Base de datos relacional sobre la que manejar los conceptos de plataforma.

API REST para componente DataRefiner

En esta release ampliamos las APIs para poder acceder al componente DataRefiner vía API REST, y así automatizar la carga y limpieza de los datos que vengan en diversos formatos (como XSL, CSV, XML, JSON) antes de cargarlos en la Plataforma.


Things

Esta distribución de la Plataforma da soporte al desarrollo de sistemas IoT, tanto en el ámbito Cloud como Edge.

En este trimestre hemos avanzado en:

Extensibilidad de motor de sinópticos con librerías SVG externas

Nuestro potente motor de sinópticos se basa en SVG para la creación de todo el UI al estilo SCADA. En esta release hemos incorporado una mejora que permite cargar nuevas librerías de componentes SVG para así componer nuestros sinópticos:


Si os interesa conocer más al respecto, no dejéis de visitar la guía de posibilidad de incluir librerías de imágenes en sinópticos.

DevOps

Dentro de esta sección incluimos todas las herramientas, utilidades y capacidades de plataforma que ayudan en el Desarrollo y la Operación.

Nuevo Manual de Operaciones

En esta versión hemos revisado y mejorado toda la documentación sobre la operación de la Plataforma ya existente para crear un completo manual de operaciones.

Este manual pretende servir de base a los equipos usuarios de la versión Enterprise que necesiten conocer la operación de la Onesait Platform Engine & Intelligence, e incluye operación básica, operaciones especiales y troubleshooting.

Inclusión de Facturación en Consola de Operación

Seguimos trabajando en la Consola de Operación, y hemos añadido la funcionalidad de Facturación.

Desde este apartado, el usuario podrá consultar el coste mensual de cada uno de sus entornos de cada Proyecto, así como el coste mensual total de todo el Proyecto, incluyendo en este coste las suscripciones de la Plataforma (tipo, tamaño, módulos) y el tamaño del namespace de OpenShift:

Distribuciones de Plataforma sobre Helm Charts

En esta release, se han añadido mejoras importantes en el Chart Helm de despliegue de la Plataforma para clústeres de Kubernetes como Openshift.

Partiendo de las distintas distribuciones de la Plataforma, se ha realizado en el Chart una división en Charts independientes siguiendo la misma lógica. Además, se ha trabajado en automatizar aún más el proceso de despliegue no siendo necesaria prácticamente la intervención manual.

Podéis encontrar más información al respecto en el siguiente artículo: Distribuciones de la Plataforma en Helm Charts.

Distribución firmada de módulos de plataforma con Docker Content Trust

A partir de esta versión, a la hora de generar las imágenes Docker de la Plataforma, estas se firman para garantizar que las imágenes distribuidas no han sido alteradas en el proceso, algo conocido en Docker como DCT (Docker Content Trust):

Toda la información al respecto la podéis encontrar en la siguiente guía: Distribución firmada de los módulos de Plataforma con Docker Content Trust.


Comunidad de la Onesait Platform 

En esta línea de trabajo se contemplan todas las tareas relacionadas con la Comunidad de la Plataforma, de la que forma parte la versión Open Source de Onesait Platform, así como de los diferentes canales de comunicación de la Plataforma.

Al respecto de la estrategia marcada para 2021 sobre las líneas de la Comunidad, a lo largo de este último trimestre hemos trabajado en los siguientes puntos:

Webcast de la Onesait Platform

El pasado jueves 17 de diciembre llevamos a cabo nuestro primer webcast sobre la Plataforma, en donde hemos explicado cómo instalar esta versión de Comunidad de la Onesait Platform en dos entornos diferentes; uno en Linux y otro en Windows.

De esto os hablamos hace no mucho en el blog: Webcast de la Onesait Platform.

Canales de la Comunidad

Seguimos incrementando nuestra presencia en los canales web y redes sociales alrededor de nuestra comunidad:

  • ¡Hemos publicado varios artículos en DZone!¡ Con más de 43.400 lecturas! Todo un éxito para ser la primera vez.
  • 45 nuevos usuarios en el entorno CloudLab de la Onesait Platform. Ya son más de 900 usuarios los que utilizan nuestra plataforma en Cloud.
  • Crecemos hasta los 240 desarrolladores en Github, en este periodo se han realizado más de 50 clonaciones de nuestra versión Community de la Plataforma.
  • Hemos incrementado nuestra presencia en Twitter, más de 200 tweets publicados y 44.600 impresiones totales.
  • Crecemos en contenido en el Blog, tanto en castellano como en inglés, con 38 nuevas entradas.
  • Nuevos suscriptores en nuestro canal de YouTube, sumando 45 horas de tiempo de visualización y más de 6.249 impresiones.

2 Comments

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *