Publicada Release 4.3.0 (Quest) de la Onesait Platform
El viernes 13 de enero de 2023 se ha publicado la Release 4.3.0 de la Onesait Platform (nemotécnico Quest), siguiendo nuestra política de versionado: Version Policy Onesait Platform.
Puedes seguir nuestro Roadmap y encontrar más información sobre las capacidades de la Plataforma en el nuevo Portal del Desarrollador.
- 1 ENGINE
- 1.1 Soporte Google Cloud Storage en File Repository
- 1.2 Queries Profiler UI: Dashboard para profilingde Queries
- 1.3 Config Manager
- 1.4 Uso de Java 17 (LTS) como JVM por defecto de la Plataforma
- 1.5 Editor git para funciones en Serverless Manager
- 1.6 Soporte encriptado/desencriptado de de atributos sobre Hashicorp Vault
- 1.7 Librería GIS
- 1.8 Actualización del marco de referencia de Arquitectura
- 1.9 GeoServer como servidor GIS
- 2 INTELLIGENCE
- 3 CENTER
- 4 THINGS
- 5 EXPERIENCE
- 6 DEMOSTRADORES
- 7 COMMUNITY
ENGINE
Optimiza el desarrollo de soluciones de negocio independizando de la capa tecnológica con estrategia Lowcode
Aplicamos estrategias ágiles y de Lowcode para el desarrollo e integración de soluciones empresariales, basado en estándares, independientes de vendors cloud específicos, y desplegable sobre IaaS, SaaS o infraestructuras On Premise:
Escalabilidad y estabilidad de cualquier infraestructura
El dato en el centro
Seguridad integrada de extremo a extremo
Más info en Guías Engine
Soporte Google Cloud Storage en File Repository
El File Repository es un componente de plataforma que permite subir y compartir ficheros desde plataforma, tanto desde el Control Panel como desde un API REST.
Hasta ahora, este componente era capaz de funcionar con GridFS cuando teníamos MongoDB en la instalación o con MinIO para instalaciones en las que usábamos este sistema de ficheros distribuidos.
En esta versión se ha soportado Google Cloud Storage como otro de los repositorios sobre los que almacenar los ficheros gestionados por el File Repository, este escenario es muy interesante para proyectos de plataforma que se despliegan en GCP y que pueden usar estos servicios nativos.
Además se ha unificado las UIs de gestión, de modo que desde la misma sección se podrá seleccionar el mecanismo de almacenamiento (típicamente cada proyecto usará sólo uno):
Queries Profiler UI: Dashboard para profilingde Queries
En la release 4.2 se creó un sistema de métricas para queries para tener mayor información sobre las consultas que se ejecutan en el sistema (estas métricas se almacenan en la Entidad QueryMetrics).
En esta versión se ha creado una nueva UI (construida como un dashboard) que permite hacer un completo profiling de las queries que ejecutan dentro de plataforma, incluyendo las queries más lentas, las que dan error,…
La UI está accesible en la sección Tools>Queries Profiler UI
Config Manager
Se ha generado la primera versión de este acelerador de Arquitectura, que contempla:
El módulo multi-idioma para gestionar los idiomas y literales por idioma de cada aplicación
El gestor de datos maestros de una aplicación
Uso de Java 17 (LTS) como JVM por defecto de la Plataforma
Hasta ahora, las imágenes de Plataforma usaban por defecto Java 8, aunque también estaba certificada para Java 12 y Java 15.
En esta versión se ha adoptado como JVM por defecto OpenJDK 17. Se ha usado esta versión por ser la última versión LTS de Oracle Java SE por lo que nos garantiza el soporte.
Editor git para funciones en Serverless Manager
Se ha creado un componente visual (sobre Vue) que permite la edición de archivos en git.
Este componente se ha habilitado en el módulo serverless de plataforma para facilitar la creación de funciones, gracias a esta mejora , se podrán subir , editar y seleccionar los archivos necesarios para la ejecución de una función durante la creación o edición de la misma.
Puedes ver cómo usar esta herramienta aquí.
Soporte encriptado/desencriptado de de atributos sobre Hashicorp Vault
Vault de Hashicorp es una popular herramienta utilizada para gestionar de forma segura la información sensible. Hashicorp Vault viene con varios componentes plugeables llamados secrets engines y authentication methods que le permiten integrarse con sistemas externos. La finalidad de estos componentes es gestionar y proteger tus secretos en infraestructuras dinámicas (por ejemplo, credenciales de bases de datos, contraseñas o claves API).
En Plataforma existe la funcionalidad que permite encriptar y desencriptar atributos de una Entidad de forma automática a partir de una clave maestra almacenada en plataforma. Con esta integración el Vault gestiona esta clave maestra.
Más información sobre la integración en esta entrada.
Librería GIS
Se ha desarrollado una librería de GIS centrada en la representación de datos geoespaciales. Para su diseño, nos hemos basado en todo el trabajo de recopilación de necesidades de los diferentes productos y proyectos donde existen visores de mapas.
En esta primera versión se utiliza OpenLayers en su versión 6.14.1. La librería se encuentra diseñado de tal modo que permita la actualización de versiones de OpenLayers, así como para contemplar en un futuro el uso de otras librerías diferentes (CesiumJS, Leaflet, etc.).
Más info en esta entrada.
Actualización del marco de referencia de Arquitectura
En este trimestre se ha actualizado el marco de referencia de Arquitectura con información como esta:
Catálogo Swagger Centralizado (microservicios): https://blog.onesaitplatform.com/2022/11/23/catalogo-swagger-centralizado-microservicios/
Kafka Connect, CDC y Sink Connector: https://blog.onesaitplatform.com/2022/12/16/kafka-connect/
R2DBC (Reactive Relational Database Connectivity): https://blog.onesaitplatform.com/2022/12/02/r2dbc-reactive-relational-database-connectivity/
Schema Registry: https://blog.onesaitplatform.com/2022/12/23/schema-registry/
GeoServer como servidor GIS
Además de generar una librería de GIS para los productos y proyectos, en esta versión se ha trabajado en la implementación de un servidor GIS, acorde al marco de referencia de Onesait para GIS, el servidor elegido ha sido GeoServer.
Concretamente, hemos instalado la versión 2.22.0 de GeoServer sobre un PostgreSQL en su versión 13 y la extensión de PostGIS con la versión 3.1.
El servidor se encuentra funcionando y sirviendo capas en diferentes formatos OGC: WMS, TMS, WMS-C, WMTS, WFS, WCS y WPS.
INTELLIGENCE
Maximiza el valor de tu información con nuestra metodología y algoritmia
Virtualizamos y simplificamos el acceso a los datos entre organizaciones, departamentos y sistemas, logrando una visión 360º de las entidades de negocio y facilitando su explotación mediante reglas en tiempo real, ejecución de algoritmia compleja o análisis tradicional:
Modelo único de datos multi-repositorio
Entorno colaborativo para Data Scientist
Acceso, gestión y consumo de APIs
Más información en Guías Intelligence
Integración Presto como motor de queries multirepositorio
En la release 3.1.0 de Plataforma integramos Presto+MinIO como soporte para el almacenamiento tipo DataLake para escenarios de migración desde Hadoop.
En esta release hemos soportado Presto como motor de consultas SQL multirepositorio, lo que nos permitirá hacer consultas analíticas sobre todas las Entidades/Ontologías de Plataforma independientemente del repositorio donde estén almacenadas (esto por ejemplo nos permitirá hacer JOINs entre un Postgresql y un MongoDB, o entre un MinIO y un Oracle).
Para esto hemos creado un nuevo tipo de Entidad: Presto Entity:
que permite a los usuarios conectar a los diferentes catálogos dados de alta en Presto por el administrador de Plataforma creando entidades PRESTO.
Una vez creadas las entidades PRESTO podremos hacer JOINS entre ellas de forma transparente al repositorio:
Más información en esta entrada.
Concepto de DataClass (Gobierno del Dato)
La funcionalidad de DataClass asociada al Gobierno del Dato, permite asociar tanto a Entidades (a nivel general) como a atributos de estas, estas reglas permiten definir reglas de validación y formato del dato, permitiendo así ejecutar un preprocesado antes de insertar los datos.
Este preprocesado permitirá definir mensajes de error que se insertarán en la entidad de auditoría del usuario, facilitando así la visualización de los datos fallidos y estadísticas de carga en un dashboard. Las reglas se pueden crear en Groovy y Javascript.
Las reglas pueden asociarse a un atributo de una ontología, en cuyo caso se lanzarán para ese atributo:
O bien a nivel de la Entidad, en cuyo caso podrán usarse en la regla todos los atributos de la Entidad.
Soporte comunicación REST en Dashboard Engine
El Dashboard Engine permite crear dashboards a partir de gadgets construidos sobre datasources, que se traducen en queries sobre las Entidades de plataforma. A nivel de ejecución el navegador establece una comunicación con el Dashboard Engine para pasarle parámetros y recuperar la información.
En las versiones anteriores la comunicación podía ser WebSockets o XHR en modo Fallback. Para el tipo de aplicación, la comunicación WebSockets es ideal porque establece un canal seguro que mantiene entre el cliente y el servidor. Sin embargo, en algunos escenarios esta comunicación plantea problemas ante los elementos de seguridad periféricos como WAFs.
Por esto se ha implementado un nuevo canal de comunicación REST en el Dashboard Engine.
Una vez activad este modo de trabajo del Dashboard Engine el funcionamiento es transparente para el desarrollador y usuario final de los dashboards.
Componente Destination en DataFlow CRUD Plataforma
Se ha desarrollado un nuevo componente para el DataFlow que nos permite realizar un CRUD sobre una o varias entidades destino.
Con este componente, puedo cargar datos a plataforma desde otros orígenes de forma sencilla.
Para más detalles se tiene un post dedicado al nuevo componente.
CENTER
Herramienta de soporte a la modernización de sistemas y la migración al Cloud.
Onesait Platform Center (Center) es una herramienta que da soporte en estas áreas:
Guiar las fases de un proyecto (arranque, desarrollo, operación, gestión del cambio) a través de un enfoque LowCode (*) aportando herramientas visuales de alto nivel a todas las fases
Apoyar en el proceso de modernización de aplicaciones y migración al Cloud
Estandarizar la creación de soluciones incluyendo su arquitectura y despliegue
Simplificar la operación del sistema
Más información en Guías Center
Soporte aplicaciones Spring Boot y aplicaciones Arquitectura Onesait
En la nueva release del Center se ha añadido al Assessment la categoría Spring Boot. Esto permite añadir a un proyecto este tipo de aplicaciones, mas modernas y en línea con la tendencia de descomposición de la aplicación en microservicios, desde la fase inicial de inventariado.
Se pueden añadir aplicaciones ya existentes, en cuyo caso indicaré cierta información y la ruta al código fuente del proyecto en Git.
O para una nueva aplicación, en cuyo caso el Center creará el arquetipo del nuevo proyecto Spring Boot como un proyecto Maven listo para desarrollar. En este caso para crear el arquetipo de proyecto podemos uesar el Initializr de Arquitectura Onesait o el Initializr de Spring.io
Más información sobre el uso de esta capacidad en esta entrada.
Soporte CLI ODS
Onesait Design System (ODS) ofrece a los desarrolladores una herramienta CLI (línea de comando) para crear arquetipos de aplicaciones Front sobre esta tecnología .
En esta release se ha incluido en el Onesait Platform Center integración con esta herramienta para que en la fase de Asssessment se puedan generar dichos arquetipos de aplicaciones Front e incluirlos en el ciclo de contenerización y despliegue en cloud gestionado por el Onesait Platform Center..
Diagrama de Infraestructura
A través de este nuevo diagrama, desde el Center podemos de forma sencilla modelar la infraestructura de una solución, de modo que el Center se encarga de orquestar llamadas a Terraform y Ansible para desplegar la infraestructura requerida:
En esta url podéis encontrar un vídeo con un ejemplo de despliegue de unas VMs y redes sobre GCP.
Editor Ficheros Git integrado
Los proyectos del Center tienen asociado un repositorio Git donde se almacena y versiona todo el código relativo al proyecto. Para facilitar la edición de los ficheros del proyecto se ha integrado un editor Git en el propio proyecto, accesible desde las pestañas del proyecto:
Una vez que estamos en la sección, podemos seleccionar una rama de nuestro repositorio:
Y automáticamente se carga el árbol de directorios del editor en el que podemos elegir cualquier fichero para editar:
Más info en esta entrada.
THINGS
Despliegue basado en Ansible
El despliegue de servicios en campo es un pilar principal en la gestión de nodos. Por ello, se han incluido nuevos sistemas de orquestación remota, mejorando y ampliando las capacidades de Onesait Edge. Hasta ahora, el despliegue remoto se basaba en la utilización de docker-compose como orquestador de los servicios Edge, en esta release Onesait Edge incorpora métodos de despliegue mediante la actualización del agente IoT (iota), permitiendo la instalación mediante Ansible.
Certificación sistemas operativos Red Hat
Se ha trabajado con el equipo de Red Hat para la certificación de despliegue del Onesait Edge en sus sistemas operativos, tanto Cloud como en Edge.
Despliegue sobre Openshift:
Se ha validado el despliegue del Onesait Edge en Openshift, realizando algunos cambios con el Helm utilizado en Kubernetes, adaptándolos a las peculiaridades de Openshift, algunas de las imágenes utilizadas se han modificado para la utilización de sistemas certificados por Red Hat (OpenJDK, Node.js, etc)
Soporte RHEL for Edge
Red Hat dispone de un sistema operativo ligero para la implantación en campo de manera remota.
Desde Onesait Edge se ha realizado la integración y validación completa con el Rhel for Edge: instalación de imagen base con agente IoT (iota), orquestación mediante Podman, validación de hardware y software (programas específicos, módems de diversos fabricantes).
Aceleradores de campo
La facilidad de poder realizar operaciones complejas en campo e implantar inteligencia artificial es un requerimiento esencial para Onesait Edge, por ello se ha integrado el sistema con aceleradores Nvidia Jetson. Cada Nvidia Jetson es un sistema completo en módulo (SOM) que incluye GPU, CPU, memoria, administración de energía, interfaces de alta velocidad, sensores, etc.
Estas máquinas Jetson, son compatibles con los frameworks de IA más populares del mercado: TensorFlow, PyTorch, Caffe, Keras, MXNet y con SDKs para nuevos desarrollos. Esta integración realizada con los sistemas Jetson, permite a Onesait Edge no solo la ejecución de IA más complejas en campo, sino la evolución de la misma.
El equipo utilizado ha sido el Jetson Nano, que sus principales capacidades son:
Arquitectura NVIDIA CUDA®: Maxwell™ GPU 128 cores
CPU Quad-core ARM® Cortex®-A57 MPCore
IA: Alto rendimiento informático de IA con procesamiento mediante GPU
Ideal para aplicaciones de ciudades inteligentes con IA perimetral
Soporte PoE GbE 15 W para cámaras
EXPERIENCE
Conversión de componentes ODS a Web Components
Se ha realizado el planteamiento, diseño, adaptación y desarrollo de componentes del ODS a Web Components, incluyendo un storybook con los para Web Components disponibles y una política de migración de los sistemas existentes.
Como primer proyecto construido sobre estos Web Components se ha creado un Chatbot:
Evolutivos y mantenimiento ODS
ODS XR, creación de un escenario de onboarding reutilizable para proyectos de realidad virtual y adaptación del ODS y creación de recursos de interacción para proyector VR
Evolución de componentes y soporte (Mejoras de accesibilidad, evolución estilo, correcciones en diseño de componentes como Steps, tabs, popover, dropdown, Action menu...)
Librerías y metodología, adaptación de las librerías y documentación de nuevos procesos, covers y organización de archivos en Figma
Soporte y documentación, evolución de la documentación por componentes con más detalle
Planteamiento design tokens para interacciones y animaciones
DEMOSTRADORES
Demostrador ingesta, correlación y actuación sobre sistemas
Este demostrar se encarga de la detección, notificación y solución de problemas en múltiples sistemas remotos montados en una red topológica con la información dada por los logs en bruto de estos sistemas.
Para eso se usan módulos como el DataFlow para la ingesta de los logs, Kafka,
el FlowEngine para el lanzamiento de procesos de corrección sobre sistemas remotos
Entidades de Grafos para modelar la topología de servicios:
y dashboards para explotación de la información:
El detalle completo sobre el demostrador lo podéis encontrar aquí.
Demostrador integración con IBM Maximo
Este demostrador permite para la explotación de los datos almacenados en IBM Maximo desde Plataforma. En el demostrador se optó por conectar con la base de datos de Maximo, para eso se usó el módulo DataFlow para conectar con las tablas de Maximo, extraer la información y almacenarla en las entidades de plataforma,
para luego explotarla en dashboards.
Puedes encontrar el alcance completo del demostrador aquí.
Demostrador Migración al Cloud con el Center
En este demostrar partimos de una aplicación legacy desplegada de forma tradicional y pasamos a contenerizarla, aplantillarla en un cluster Kubernetes a través de Charts Helm
y finalmente desplegarla sobre OpenShift en Google Cloud Platform.
Más información sobre el demostrador aquí.
COMMUNITY
Versiones Comunidad
Publicación de la release 4.3.0-ce en Github: en las próximas semanas publicaremos la versión 4.3.0 Community de la Plataforma en nuestro repositorio de Github, donde podréis descargarla y probarla: GitHub - onesaitplatform/onesaitplatform-cloud: Onesait Platform Community edition is a free, open-source Digital Platform that anyone can download and use to build a complete solution over it. This repo contains the Cloud Side of the Platform.
Actualizada la instancia de CloudLab con versión 4.2.0-predator
Canales de la Comunidad
Son los que utilizamos para estar en contacto con vosotros. Cada trimestre que pasa seguimos creciendo tanto en contenidos como en seguidores (¡muchas gracias a todos!). A lo largo de este último trimestre del año:
Alcanzamos los 1.250 usuarios en el CloudLab de la Onesait Platform, nuestro entorno gratuito y de experimentación.
Contamos con 175 suscriptores en nuestro canal de YouTube, sumando +830 horas totales de visualización y superando las 100.000 impresiones.
Nuestra versión Community de la Plataforma en GitHub supera las +1200 clonaciones, y con un total de 258 desarrolladores actualmente siguiendo el proyecto.
Nuestro Blog suma un total de +320.000 lecturas de nuestros artículos, aumentando este trimestre en +65.000 lecturas.
Superamos las +340.000 impresiones totales en Twitter, con casi 170.000 visitas a nuestro perfil, +900 retweets y casi +1400 me gustas de nuestros píos.
Si queréis estar al día con nuestros eventos especiales, no dejéis de apuntaros a nuestra comunidad de Meetup, en donde hay ya +700 suscritos.