Publicada Release 3.1.0 (KickOff) de Onesait Platform
Info general
El 30 de julio de 2021 se ha publicado la Release 3.1.0 de la Onesait Platform (nemotécnico KickOff), siguiendo nuestra política de versiones: Version Policy onesait Cloud Platform.
Puedes seguir nuestro roadmap en Roadmap Onesait Platform
A continuación puedes ver las principales funcionalidades de esta release.
Engine
Esta distribución de plataforma da soporte al desarrollo de microservicios y todo tipo de aplicaciones. Para ayudar en este tipo de desarrollos, la plataforma permite 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:
Evolución del concepto Ontología a Entidad: en Plataforma usábamos el nombre de Ontología para referirnos a las Entidades gestionadas por Plataforma, el nombre provenía de los orígenes de la Plataforma en el ámbito I+D europeo. Como nos habéis transmitido en varias ocasiones, el término a veces resultaba confuso, os hemos escuchado y a partir de esta versión en el Control Panel veréis que nos referimos a las Entidades de Plataforma:
Nueva UI Home del Control Panel: esta funcionalidad da a los usuarios administradores información sobre el estado global de la plataforma. Utilizando las métricas proporcionadas por Prometheus, la nueva UI permite al usuario tener una visión unificada del estado y rendimiento de cada uno de los componentes que se encuentran desplegados en su instalación. Más info
Creación de Web Project Hasta esta versión la creación de proyectos web en controlpanel solo permitía subir un archivo donde el usuario adjuntaba todos los archivos que va a necesitar para el funcionamiento de su proyecto web, Con esta mejora el usuario puede decidir si quiere usar como base de su proyecto web el Template Web que provee la plataforma (Onesait Platform Web Template) lo que nos da integrados y configurables vía JSON login, seguridad, menús, header, etc.
Entidades sin ContextData Se ha añadido una nueva configuración a la hora de crear una Ontología que permite habilitar/deshabilitar la opción de añadir el objeto ContextData a la información que se inserta en Plataforma. Más info.
Intelligence
Esta distribución de la plataforma da soporte al desarrollo de sistemas que usan las capacidades de Inteligencia de plataforma, bien sea con sus capacidades IA, de ingesta desde diferentes fuentes, analítica, visualización,...
Y en este trimestre hemos trabajado en esto:
Almacenamiento Big Data sobre Presto+MinIO: Presto es un motor de consultas SQL distribuido open-source que permite lanzar consultas analíticas interactivas contra un gran número de fuentes de datos, y MinIO es un almacenamiento distribuido que implementa la API de AWS S3. Estas dos tecnologías unidas nos permiten reemplazar los servicios de almacenamiento de Hadoop (HDFS) y de Datawarehouse (HIVE). El uso de estas 2 tecnologías nos permite tener una solución más elástica, dinámica y fácilmente gestionable que con Hadoop (leer más). La guía de uso indica cómo usar esta nueva característica: https://onesaitplatform.atlassian.net/wiki/spaces/PT/pages/2156101633
Manager de Modelos con MLFlow: Con el objetivo de ofrecer nuevas herramientas a los científicos de datos que hagan su trabajo más productivo, hemos integrado MLFlow para ayudar a la gestión de los modelos ML creado sobre plataforma.
El usuario con Rol Analytics podrá acceder a esta nueva herramienta desde la nueva opción My Models Manager:
MLflow es una plataforma open-source para gestionar el ciclo de vida del desarrollo Machine Learning incluyendo tracking de experimentos para registrar y comparar parámetros y resultados (MLflow Tracking), empaquetado el código ML de forma reutilizable y reproducible para compartirlo con otros científicos de datos y desplegarlo en producción (MLflow Projects), gestión y despliegue de modelos (MLflow Models) y almacén central de modelos para gestionar de forma colaborativa el ciclo de vida completo de un modelo MLflow, incluyendo el versionado de modelos, las transiciones de etapas y las anotaciones (MLflow Model Registry).
Podemos usar MLFlow tanto desde Notebooks que ya tienen establecido Plataforma como Tracking Server
Más información en esta nueva sección: https://onesaitplatform.atlassian.net/wiki/pages/createpage.action?spaceKey=DOCT&title=Models%20Manager%20Guides
Soporte TimescaleDB como BD TimeSeries sobre Entidades: TimescaleDB es una base de datos open-source para almacenamiento y análisis de Time Series con la potencia y ventajas de usar SQL., TimescaleDB está construida sobre PostgreSQL lo que tiene la ventaja de poder usar las herramientas del ecosistema Postgresql. TimescaleDB incluye capacidades de gestión de datos específicas, como retención de datos, downsamplings, compresión nativa, gestión del ciclo de vida de los datos, políticas de agregado además de funciones orientadas a analítica Time Series, como la creación de ventanas, relleno de huecos, queries LOCF, etc. Y al estar construida sobre PostgreSQL puede almacenar tus datos de negocio en la misma base de datos permitiendo hacer JOINS.
A la hora de crear la Entidad tipo TimeSeries podremos seleccionar TimescaleDB
Y a partir de ahí configurar el modo de uso de Timescale, desde el Chunk time interval que define la ventana temporal que se tiene en cuenta para crear los chunks.
Window frequency indicando si queremos que la timeserie tenga intervalos discretos a la hora de almacenar las medidas o no:
Funciones de agregación: En el caso de seleccionar una frecuencia, se podrá seleccionar entre distintas funciones de agregación (LAST, SUM) para saber cómo agregar los datos de cada señal si se reciben más de un registro para un conjunto de TAGs y una frecuenca/timestap en concreto
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:
Monitorización activa y telemetría Landscape: se ha añadido al IoT/Edge Agent la capacidad de reportar mediante el Canal de Control (Flujo Device2Cloud), información relativa al uso de recursos (RAM, CPU y disco) del Edge Device correspondiente por cada una de las cargas desplegadas en el dispositivo. Esta telemetría es configurable mediante CLI en el propio Edge Device y el comando ‘iotagent’.
Conector Nativo Kafka IoT/Edge HUB: dentro de la sección de conectores, ya está disponible la creación y despliegue de un conector bidireccional (Productor y Consumidor), multi-tópico Kafka<->MQTT que permite conectar de forma sencilla el Canal de Negocio de todos los tipos de dispositivos incluidos en el Lanscape. Un sistema de gestión de properties, permite la configuración dinámica de todos los parámetros habituales de Kafka para su versión>=2.7 (https://kafka.apache.org/27/documentation.html ).
Agente Edge Agent (basado en Go 1.15.8) en Orquestación Edge Device con interface avanzado para Podman: se ha actualizado el IoT/Edge Agent para poder interactuar con despliegues de Podman>=3.0 sobre RHEL 8 o distribuciones relacionadas. Es posible la ejecución aislada de contenedores o mediante el empleo de emulación docker-compose disponible en Podman.
Despliegue IoT/Edge HUB sobre VM/Baremetal usando microk8s: Se ha certificado y liberado el despliegue de IoT/Edge HUB sobre microk8s empleando VMs o Baremetal. Ya está disponible el despliegue Helm parametrizado para un despliegue mediante el Addon Helm v.3 de microk8s.
Despliegue IoT/Edge HUB para VM/Baremetal usando Rancher 2.5.: Se ha certificado y liberado el despliegue de IoT/Edge HUB sobre Rancher 2.5 empleando VMs o Baremetal. Ya está disponible el despliegue Helm parametrizado para dos ingress distintos Traefik (default en Rancher) y Apache Kong.
Agente Edge (basado en Go 1.15.8) en Orquestación de Clusters Edge con interfaces para microk8s: Ya es posible orquestar workloads sobre microk8s en clusters remotos con el despliegue de la nueva versión del IoT/Edge Agent. Diseña tus despliegues con Helm v.3, inclúyelos en la estructura de despliegues de IoT/Edge HUB y el agente se encargará de distribuir y levantar la carga de forma segura, dando acceso mediante kubectl al cluster remoto.
DevOps
Dentro de esta línea de trabajo incluimos todas las herramientas, utilidades y capacidades de plataforma que ayudan en el Desarrollo y la Operación.
Charts Helm de despliegue de recursos de Plataforma en alta disponibilidad: en esta versión se han creado charts Helm para desplegar diferentes componentes de Plataforma en alta disponibilidad, tanto en Kubernetes como en Openshift. Podemos destacar el Chart para desplegar un Replica-Set de MongoDB en Kubernetes
Onesait Platform Community
Esta línea de trabajo incluye las tareas que realizamos en relación con la Comunidad de la Plataforma, de la que forma parte la versión Open Source de la Plataforma Onesait, así como los diferentes canales de comunicación de la Plataforma.
A lo largo de este primer trimestre de 2021, hemos trabajado en:
Publicada version 2.3.0-ce en Github https://github.com/onesaitplatform/onesaitplatform-cloud/tree/2.3.0-ce
Actualizada instancia CloudLab con versión 3.0.0-jailbreak
Webcast de la Onesait Platform: hemos publicado el webcast con las novedades de la versión 3.0.0-jailbreak.
Si queréis estar al día con nuestros webcasts, no dejéis de apuntaros a nuestra comunidad de Meetup, en donde hay ya +700 suscritos.
Canales de la Comunidad: son los que utilizamos para estar en contacto con vosotros, y seguimos creciendo tanto en contenidos como en seguidores (¡muchas gracias a todos!). A lo largo de esta segundo trimestre del año hemos:
Alcanzados los 1.073 usuarios en el CloudLab de la Onesait Platform, nuestro entorno gratuito y de experimentación.
Hemos crecido en +16 nuevos suscriptores en nuestro canal de YouTube, superando los 145 suscriptores totales, sumando +70 horas de visualización y consiguiendo +8.000 impresiones durante este trimestre.
Superadas las 80 clonaciones en GitHub de nuestra versión Community de la Plataforma, ganando +4 nuevos desarrolladores, alcanzando un total de 248 desarrolladores siguiendo el proyecto.
Seguimos preparando contenidos para DZone, y que de momento nuestros artículos suman un total de +50.000 lecturas.
Hemos publicado un total de 24 entradas en nuestro Blog, alcanzando +30.000 lecturas trimestrales.
Alcanzados los 287 seguidores en Twitter, tuiteando 165 veces, consiguiendo 50 retweets y superando las 30.000 impresiones.