Published Release 2.1.0 (gradius) of onesait Platform
On July 10, 2020, Release 2.1.0 of onesait Platform (gradius) has been published (gradius name ),following our release policy: Version Policy onesait Cloud Platform).
You can follow our roadmap on Roadmap onesait Platform.
Below you can see the main features of this release.
Engine
This version supports the development of applications and microservices, for which the Platform offers a centralized web console that supports the administration, configuration and development of all types of applications, integrating the creation of applications, their deployment on the CaaS infrastructure, apification, visualization, etc.
The following features have been incorporated in this version:
- New Java API Java for develop in a transparent way with ontologies: You know that the Ontologies as an abstraction of entities are the core of the Platform, and that the execution of many components starts from here; but there are situations in which you choose to manage persistence using frameworks such as Spring Data. From Platform we want you can use ontologies in those scenarios so you can use all the Platform capabilities (for example to trigger a flow or a rule after inserting in an ontology).
Onesait Platform's Java client library now provides a client -NotifierClient- that allows us to create the ontologies from Java classes and inform the Platform of the CRUD operations on ontologies we perform with our framework, so that even if the Platform does not perform these operations, it will be aware of them, and since the ontology definition exists, all the modules can be used without any inconvenience.
You can find all the details about this new API in this guide: /wiki/spaces/OP/pages/795777855.
- Migration of Platform modules to Spring Boot 2: In this version the migration of all Platform modules from Spring Boot 1.5 to Spring Boot 2 has been completed, this has allowed us to align the Platform version of Spring Boot with the Architecture version of the products, in addition to interesting features such as the following.
- New Monitoring UI: which includes a new, much more powerful UI with more capabilities, for example:
Integrated display of the module's logs:
Integration with the microservices deployed from the Platform, so that they can be monitored:
Read more about the capabilities of the new Monitoring UI: Monitoring UI Module.
- Integration of Open Data CKAN Portal as a new Platform module: taking advantage of the fact that in the Smart Cities projects in which our Platform has so much presence, this module was always required, it has been decided to integrate the Open Data CKAN Portal in the Platform.
CKAN (https://ckan.org) is an Open Data Open Source portal that has become the standard for Open Data publishing because it is an open source data management solution, mature and complete. Its basic nest is the datasets, where the data is published, which are made up of different resources and metadata.
The integration allows the creation of datasets from different Platform resources, including ontologies:
and is fully integrated with the Platform security, making SSO between the Open Data Portal and the Control Panel and allowing Platform users to access the portal according to their role.
You can find a fully detailed guide here: /wiki/spaces/PT/pages/593854465.
- Notifications about Kafka topics: this new functionality completes the insertion in the Platform via Kafka topic and allows to activate a Kafka topic by ontology so that every time it is inserted in the Platform it is notified by this topic:
In this complete tutorial you can see an example of use with a Kafka client: /wiki/spaces/OP/pages/569802798.
In this guide /wiki/spaces/PT/pages/572882945 you can find information about it.
- Support for working with Git in FlowEngine: in the new version of FlowEngine the concept of NodeRED Project has been enabled, this allows us to manage the versions of all the flows, initially in a local git, but we can also hook it up against a centralized git. The FlowEngine UI allows you to make commits, pull, push and check changes between versions.
You can find more information about its use here: /wiki/spaces/PT/pages/797376527.
- Control of retries in FlowEngine: for scenarios in which FlowEngine is used to process insertions in Ontologies. This allows the user to configure if he wants to have retries in the notification process, as well as to assign a TTL to them:
Read more: /wiki/spaces/PT/pages/715653150.
- Files Repository pagination support and new Files Repository component in DataFlow: in this version a functionality has been added to the Files Repository REST API, which allows the pagination of the content of text files, also a new component has been added to the DataFlow to manage in a simple and integrated way the files stored in the Files Repository.
You can read the full tutorial in this article: /wiki/spaces/PT/pages/784531928.
- In addition to a large number of corrections and performance improvements identified through your requests to the Platform support mailbox that help us improve the Platform on a daily basis, such as the control of concurrency on the elements managed by the Platform:
Intelligence
This version of the Platform focuses on supporting the development of systems and applications that need to use the analytical, AI or distributed ingest capabilities of the Platform.
In this quarter we have focused on:
- CosmosDB integration as a repository to work with Ontologies: full support to work with Platform ontologies has been incorporated to this interesting Azure's multimodel database (Cosmos DB is a distributed multimodel database service with horizontal scaling that allows to distribute data globally over any number of Azure's regions, with a transparent data scaling and replication process).
You can find more information about integration in this article: Ontologías en CosmosDB
- Support for working with Git in Notebooks development: Until now, when you wanted to manage Notebook versions, you had to do it using the export and import APIS REST. With this integration, the data scientist can version his Notebooks and check how his model behaves according to the changes:
You can find more information in this entry: /wiki/spaces/PT/pages/797343753.
- Plugin architecture in Dashboard Engine: this allows to extend the security in the access to the dashboards and to be able, for example, to parameterize that certain data of a DataSource can only be accessed by certain roles or users with a specific attribute.
- Update of Dashboard Engine styles: to adapt them more to the global look of the Platform:
Things
This version of the Platform focuses on supporting the development of IoT systems, both in the Cloud and Edge environments.
In this quarter we have focused on:
- Virtual PLC: In this version the Eclipse 4diac has been integrated into the containers managed by Onesait Things Edge Engine. Thanks to this integration, the Onesait Platform now has the possibility of virtualizing PLCs according to the IEC 61499 standard. Using the 4diac-IDE modeling environment, it is now possible to distribute complex PLC logic schemes to the various FORTE runtimes included in the Edge Engine. All the process information of the different PLC functional blocks has been connected through MQTT to the data bus of our Edge architecture and is available to interact with other components.
- Integration of Edge Devices with Digital Clients (IoTDigitalClient Container): The new DigitalClient on MQTT is now available that allows the bi-directional flow Cloud2Device and Device2Cloud using this IoT protocol in an easily configurable way. The Edge Parser component of parsing and data model adaptation recently included in Edge Engine is used to define the mapping between ontologies and acquisition protocols. The IoTDigitalClient Container is in charge of the connection and data transport once adapted using the credentials of the digital client registered in the Platform.
- Edge Parser (Protocols mapping module): From this version onwards, the Edge Parser module is available as a container for the Onesait Things. This module allows the mapping of the data models of Southbound OT protocols (Modbus, OP-DA, etc) with specific Ontologies or data models (case of DDS) in a simple way using "Transformers". Edge Parse allows the definition in runtime or consumed of a repository the set of transformers available for an instance of Edge Engine.
As shown in the images, Edge Parser is an event-driven component that applies the different transformations each time a message is received on the internal Edge Engine bus. Additionally, it offers a REST API access to manage the set of transformers deployed in an instance.
- Edge BacNET Protocol: The protocol container for BacNET based on the open source framework BACnet4J by Serotonin is now available. This version of the protocol allows its use in TCP and MSTP for serial. Two example services are included: (1) device self-discovery and (2) obtaining events from a device.
DevOps
Within this category we include all the tools that help in the Development and Operation of the Platform.
In this quarter we have incorporated these new tools:
- Update of the Platform Installer, now Rancher 2 and Openshift compatible: One of the main improvements in this category is the compatibility of the Platform installer for:
Full Kubernetes + Rancher 2 cluster deployments with Ansible and Platform deployment with Helm Chart.- Platform deployment with Helm Chart in existing clusters of AKS (Azure) and GKE (Google)
- Platform deployment with Helm Chart on existing Openshift (Red Hat) clusters
- HELM plugin for generation and deployment of Route manifest in Openshift: A HELM v3 compatible plugin has been introduced that allows, given a domain name (with or without wildcard) and a host name, to generate and display the Route in an existing Openshift cluster as well as to include in it the tls termination with auto-generated certificates and keys for that domain. The plugin is available for download and use in GitHub: https://github.com/onesaitplatform/helm-certgen
Open Source Initiative
This line of work includes all the tasks related to the Open Source version of the Platform (Onesait Platform Community).
In this quarter we continued with the line launched in Q1 2020, specifically:
- Release of Onesait Platform version 1.2.0-ce: the Open source version of the Platform is available on Github (https://github.com/onesaitplatform/).