Publicada Release 1.6.0 (empire) de onesait Platform
El 17 de enero de 2020 se ha publicado la release 1.6.0 de la onesait Cloud Platform (versión empire, siguiendo nuestra política de versiones: /wiki/spaces/PT/pages/60326117).
Puedes seguir nuestro roadmap en Roadmap onesait Platform
A continuación puedes ver las principales funcionalidades de esta release:
Engine
Esta versión da soporte al desarrollo de aplicaciones y microservicios, para lo que la plataforma ofrece una consola web centralizada que soporta la administración, configuración y desarrollo de todo tipo de aplicaciones , integrando la creación de aplicaciones, su despliegue sobre la infraestructura CaaS, apificación, visualización,..
En esta release se han incorporado las siguientes funcionalidades:
Soporte al despliegue de soluciones multitenant sobre la Plataforma: esta funcionalidad permite que una misma instalación de Plataforma gestione de forma transparente varios verticales/soluciones/proyectos (pj Vertical Iluminación, Smart Home, Smart Industry,...), además de permitir que cada uno de estos verticales soporte diversos clientes o tenants (pj que solución Smart Home ofrezca el servicio a una telco XXX y a una operadora YYY).
Más información aquí: ¿Cómo funciona el Multitenant en Plataforma?
Servicio Transaccionalidad distribuida sobre repositorios de Plataforma: esta funcionalidad permite manejar transacciones distribuidas sobre los diferentes bases de datos soportadas por plataforma (Mongo, Elastic, BD relacionales,...) de forma sencilla. Este servicio se puede usar desde el API REST o bien desde integración con Cliente Java/Spring Boot:
Servicio de Internacionalización: este servicio permite gestionar traducciones en diversos idiomas de forma visual desde el Control Panel de Plataforma. Además ofrece un API REST y el servicio está integrado con el Motor de Dashboards, lo que permite internacionalizar los textos de un Dashboard.
Más información en este tutorial: /wiki/spaces/PT/pages/220397617
Servicio de Planificación de Servicios REST: este servicio integrado en plataforma nos permite planificar de forma sencilla la llamada a servicios REST:
permitiendo definir para cada servicio el CRON de invocación, método HTTP, fechas de activación y parámetros de invocación al servicio HTTP:
Para más detalle podéis consultar la guía de uso del componente: /wiki/spaces/PT/pages/302645306
Monitorización del componente FlowEngine: se han incorporado diferentes funcionalidades que ayudarán a los usuarios del componente a saber el estado del componente.
Entre estas Endpoint Healhcheck:
Autoreinicio de mi tenant FlowEngine ante errores
Monitorización de sockets abiertos en el tenant
Componentes FlowEngine para orquestar DataFlows: este componente nos permite usar el FlowEngine como motor de orquestación de los pipelines creados en el DataFlow. De esta forma puedo liberar al DataFlow de esta lógica de control y dedicarlo a su funcionalidad principal de ingesta ETL o en streaming.
Estos componentes permiten hacer las siguientes operaciones sobre un pipeline del DataFlow:
START: permite lanzar un pipeline pasándole una serie de parámetros:
STOP: para un pipeline
STATUS: devuelve el estado de un pipeline
Más información en este post. /wiki/spaces/PT/pages/308445197
Publicación de APIS REST siguiendo estándar Open API 3: durante la iniciativa https://www.onesaitplatformrevolution.com/ uno de los equipos se encargó de soportar Open API 3 como mecanismo de publicación de las APIS REST de Plataforma y se integró en la versión Community de Plataforma. Conforme nuestro mecanismo de gobierno esta funcionalidad se ha integrado en la versión Enterprise de Plataforma, y es el mecanismo estándar de publicación de las APIs (también soportando Swagger 2).
Mejoras en el servicio Encriptado y Desencriptado: la plataforma permite encriptar atributos de una ontología de modo que estos se almacenan así y la plataforma lo gestiona de forma transparente. En esta versión se han incorporado nuevas capacidades como la capacidad para hacer queries sobre un atributo encriptado:
o el encriptado sobre atributos de tipo array y object.
Más información sobre esta funcionalidad aquí: /wiki/spaces/PT/pages/213188642
Mejoras en el Servicio de Auditoría (incluida API REST): todas las operaciones que se realizan sobre la plataforma se auditan almacenando esta información en un Elasticsearch y disponibilizándolo como una ontología por usuario. Se han incluído diversas mejoras en el servicio de auditoría, que van desde nuevas herramientas de explotación:
a un API REST que pueden usar las aplicaciones para auditar sus operaciones y que estas queden registradas en plataforma):
Ver más en /wiki/spaces/PT/pages/246317302
Reorganización del menú del Control Panel: con la incorporación de las nuevas features de esta versión han aparecido nuevas opciones de menú, hemos considerado reorganizar estas opciones para intentar darle más lógica.
En este post podéis ver cómo ha quedado organizado el menú: /wiki/spaces/PT/pages/311132171
Y recordad que el administrador de una instancia de Plataforma puede decidir reorganizar este menú en su instalación: /wiki/spaces/PT/pages/62324805
Intelligence
Esta versión de la plataforma se centra en dar soporte al desarrollo de sistemas y aplicaciones que necesitan usar las capacidades analíticas, de AI o de ingesta distribuida de la plataforma.
En este trimestre nos hemos centrado en:
Soporte Multitenant en DataFlow/Gestión de varias instancias del DataFlow: desde esta versión la plataforma permite definir y gestionar diferentes instancias del DataFlow, de modo que cada usuario pueda crear sus pipelines en una de las instancias manejadas por plataforma.
La plataforma gestiona estas instancias de forma transparente al usuario:.
Toda la información sobre la funcionalidad se encuentra aquí: Multitenant Support on Dataflow
Publicación automática de Notebooks como microservicios: esta funcionalidad permite desarrollar un notebook en cualquiera de los lenguajes soportados por plataforma (Spark, Python, R,...) y una vez testado y entrenado disponibilizarlo como un microservicio que puede ser invocado como una URL. Para esto se usa la funcionalidad de gestión de microservicios de plataforma.
Desde la propia opción de menú de los Notebooks:
En esta guía ¿Cómo usar la funcionalidad "Publicar Notebook como Servicio"? de describe todo el proceso.
Nuevo Gadget Data Discovery: se ha creado este nuevo tipo de Gadget, que hace uso de las operaciones DataDiscovery y por tanto trabaja en servidor para las mismas. Se trata un gadget que, dado un datasource, permite hacer una exploración de datos sobre el mismo en formato tabla, además de permitir o no, la edición del mismo en modo visualización:
En este post se explica cómo crear y configurar un gadget de este tipo: /wiki/spaces/PT/pages/291405828
Mejoras en el Motor de Reports para permitir la carga de recursos extra, como fuentes, imágenes,...
Más info aquí: How to create Reports with extra resources
Nuevo Editor Monaco para Gadgets Templates: para que la creación de nuestros gadgets Templates sea más sencilla se ha sustituido el antiguo editor por otro basado en el Editor Monaco (la base del editor de Visual Studio Code):
Actualización del motor de Notebooks para usar por defecto Python 3
DevOps
Dentro de esta categoría incluímos todas las herramientas que ayudan en el Desarrollo y la Operación de la plataforma.
En este trimestre hemos incorporado estas nuevas herramientas:
Herramienta de paso entre entornos integrada en Control Panel: atendiendo a las peticiones de diversos usuarios de plataforma se ha creado un pipeline Jenkins que es capaz de extraer toda la información de un entorno origen de Plataforma (info en ConfigDB, Ontologías, APIS, Flows, DataFlows, Notebooks, info en RealTimeDB), comprimirla y cargarla en un origen destino haciendo un backup previo del entorno destino por si hubiera un problema.
En este tutorial se explica la funcionalidad en detalle: Herramienta de paso entre entornos
Plugin de Eclipse para ayuda en desarrollo sobre plataforma: se ha desarrollado una primera versión del plugin de Eclipse para el desarrollador Java de Plataforma que permite conectarnos a un entorno, gestionar mis ontologías (listado, edición, creación,..), hacer consultas sobre estas y generar el código Java que representa una ontología:
En esta guía podéis ver cómo instalar y usar el plugin: /wiki/spaces/PT/pages/290488515
Herramienta para desarrollo local de dashboards: en algunos escenarios un mismo equipo de desarrolladores está trabajando sobre un mismo dashboard, incluso sobre un mismo gadget. En esos escenarios puede ser interesante que cada desarrollar pueda trabajar en su espacio local, y luego hacer un merge de las funcionalidades. Para eso se ha creado una pequeña utilidad que permite desarrollar en local estos dashboards y luego subirlos a plataforma de forma sencilla.
Más información aquí: /wiki/spaces/PT/pages/290226216/wiki/spaces/PT/pages/290226216
Ampliación de Funcionalidad Utilidad Exportación e Importación esta útil herramienta ahora también se encarga de exportar e importar los dominios del FlowEngine existentes:
Más info en /wiki/spaces/PT/pages/16973827
Automatización del despliegue de la Plataforma sobre Rancher 2: el instalador de plataforma (Ansible) ya es capaz de desplegar en Rancher 1.6, Rancher 2.X y OpenShift 4.X
Nuevas Guías DevOps: se ha creado una nueva sección en la documentación donde se incluye diversa información sobre el proceso DevOps seguido en plataforma.
Open Source Initiative
Esta línea de trabajo contempla todas las tareas relacionadas con la versión Open Source de la Plataforma (Onesait Platform Community).
En este trimestre hemos continuado con la línea lanzada en Q3 de 2019, concretamente:
Publicación de la versión 1.1.0-ce de Onesait Platform: la versión Open source de la plataforma está disponible en Github (https://github.com/onesaitplatform/). Además se han incluido nuevos manuales y se han mejorado los existentes, de modo que el usuario de plataforma tenga más sencillo ejecutar y usar la plataforma.