¿Cómo instalar Plataforma Sofia2 en un SO Linux CentOS con Ansible?

En este post vamos a ver paso a paso cómo instalar la RI (Reference Implementation) de los componentes base de Sofia2 IoT Platform en una única VM, esto es:

0. Lo primero es conectar vía SSH con la VM (últimamente yo soy bastante fan de MovaXterm):

1. Tras esto instalaremos Ansible con el comando: sudo yum install ansible

2. Tras esto instalaremos git: sudo yum install git

Y lo configuraremos: git config –global http.sslVerify “false”

3. Y ya podemos empezar con la instalación de la Plataforma. Haremos un clone del repositorio git, donde está disponible todo lo necesario para instalar la Plataforma.

En este caso:

4. A continuación personalizaré algunas propiedades que se usarán en la instalación con Ansible. Estas propiedades están en la carpeta descargada /ansible-automation/Ansible/vars

La mayoría de propiedades pueden mantenerse, las unidades propiedades a modificar son nginx_console_public_ip y sofia_url

5. En el fichero infraestructure.yml puedo configurar:

Lo abriré y configuraré: nginx_console_public_ip con la IP pública de mi máquina (si sólo quiero acceder desde local puedo mantener esta IP):

6. En el fichero sofia.yml puedo editar estas propiedades. En mi caso sólo tocaré la URL en la que despliego Sofia2, a través de sofia_url:

Dejando en mi caso:

7. Tras modificar estos parámetros ya puedo iniciar la instalación, para eso desde la carpeta ansible-automation/Ansible lanzaré: sudo ansible-playbook playbook-all.yml

Que comenzará la instalación de los diferentes servicios.

Pasados unos minutos y si todo ha funcionado bien saldrá:

La instalación lanza los servicios necesarios (Mongo, MySQL, Tomcats,…) de modo que la plataforma queda en ejecución.

8. Una vez instalado todo, para comprobar que la instalación se ha hecho de forma correcta lanzaré un navegador a la URL https://<sofia_url>/console/ accediendo con el usuario y password establecidos por configuración (sofia).

Para poder navegar es importante que tenga abiertos los puertos 443 y 80 de esa máquina. En Azure por ejemplo en Redes:

9. El usuario que hemos creado es un usuario Administrador, por lo que podrá dar de alta otros usuarios desde Administración/Gestión de usuarios. Los usuarios también pueden registrarse como Usuarios desde https://13.73.161.0/console/login?loggedout#

Una vez creado un usuario y pasado a rol COLABORADOR este verá:

10. Para desinstalar todo basta con lanzar el comando sudo ansible-playbook uninstall/uninstall-all.yml

(Gracias por el trabajo Roberto! ;))

 

¿Cómo instalar Plataforma Sofia2 en un SO Linux CentOS con Ansible?

Publicada Release 4.1 de Sofia2 IoT Platform

Ya está disponible la release 4.1 de Sofia2 IoT Platform.

Esta release se ha disponibilizado en la Plataforma de Experimentación Sofia2 CloudLab.

Ver otras releases

Esta release se ha centrado en mejorar e incorporar nuevas herramientas para el desarrollador, entre estas podemos destacar:

MEJORAS EN EL PANEL DE CONTROL

Dentro de la propuesta de valor de la Plataforma Sofia2, el desarrollador es un punto clave, en esa línea estamos trabajando de continuo en mejorar la relación del desarrollador con la consola:

  • Nueva Pantalla de Inicio del Control Panel: a partir de ahora cuando un usuario accede a la plataforma ve un grafo con su “Universo Sofia”, esto es las entidades creadas (Ontologías), clientes (ThinKPs), dashboards, reglas,…y sus relaciones, además pinchando en cada uno de los elementos puedo navegar directamente a su UI de edición:

  • Ayuda integrada en la consola: a partir de ahora desde dentro de la consola podéis buscar cualquier término, esta búsqueda se hace sobre el Blog

y sobre la web de ayuda de la plataforma:

Y NUEVAS UTILIDADES PARA EL USUARIO DE LA PLATAFORMA

Y siguiendo con simplificar la vida de los usuarios de la plataforma hemos incorporado nuevas herramientas que esperamos simplifiquen su día a día:

  • Exportación e importación de elementos entre entornos: esta funcionalidad permite desde el panel de control seleccionar los elementos creados en un entorno (ontologías, proyectos, ThinKPs, APIS,…) y exportarlos, la plataforma genera un ZIP que luego podré importar en otra instancia de la plataforma. Con este mecanismo puedo comenzar el desarrollo en un entorno y luego migrar de forma sencilla todo este desarrollo.

  •  Integración de Proyecto Sofia2 con Git: la plataforma permite configurar una conexión con un repositorio Git, una vez configurado por el administrador cuando creamos un proyecto esto replicará la estructura en este repositorio Git.

  •  Conversión de Ontologías a DTOs Java: permite generar desde una ontología la clase Java que la representa (incluidas anotaciones para pasar de Java a JSON y JSON a Java), de este modo podré trabajar en este lenguaje con la ontología como una clase más

  • Mejoras en Motor Scripting: para ayudar en la creación de scripts, el editor de scripts soporta el autocompletado (pulsando Ctrl+Espacio)

Además en el log de procesos pueden encontrarse los errores en la ejecución del script:

NUEVAS FUNCIONALIDADES EN MOTOR DASHBOARDS

En base a las necesidades identificadas en algunos de los proyectos en los que colaboramos se han incluido:

  • Paso de parámetros tanto a gadgets como a dashboards para que estos lo pasen a la consulta con la que se cargan los datos
  • Internacionalización de los textos: desde el propio editor podremos definir un JSON de internacionalización que luego se utiliza en los campos:

  • Plantillas de Gadget: esta funcionalidad permite disponilibilizar un gadget tipo HTML5 como plantilla de modo que otros usuarios puedan crear sus propios gadgets completando los parámetros asociados al gadget
  • Gadget tipo Weather: en función de la configuración es capaz de mostrar para una localización temperatura y previsiones

NUEVAS FUNCIONALIDADES EN MOTOR SINÓPTICOS

Este módulo se inició como demostración de lo que podíamos hacer con la plataforma y tecnologías Web (SVG) en un ámbito tradicionalmente copado por los SCADAS.

Gracias a las mejoras identificadas por los colaboradores en esta nueva versión soportamos:

NUEVAS FUNCIONALIDADES EN API MANAGER:

El API Manager cada vez es un componente más habitual en arquitecturas SW, este componente que cumple ya 3 años en la plataforma sigue incorporando novedades como:

DIFUSIÓN DE LA PLATAFORMA

Uno de los focos de trabajo en la plataforma es que la plataforma sea usable tanto para un rol usuario como para un rol Desarrollador avanzado o científico de datos, y para eso disponer de material formativo es muy importante.

En esta versión hemos generado estas guías:

Publicada Release 4.1 de Sofia2 IoT Platform

Release 4.1 Sofia2 IoT Platform Published

Release 4.1 of Sofia2 IoT Platform is already available.

In this release has been made available the Sofia2 CloudLab Experimentation Platform

See other releases

This release has been centered on improving and incorporating new tools for the developer, among them we can highlight:

IMPROVEMENTS IN THE CONTROL PANEL

Inside the value proposal for the Sofia2 platform, the developer is a key element, and in this line we are continuously working on improving the relationship of the developer with the console:

  • New control panel landing page: From now on when a user accesses the console is presented with a graph displaying his ‘Sofia Universe’, that is, created entities (ontologies), clients (ThinKPs), dashboards, rules… and their relationships. Also, clicking on each of this elements you can navigate straight to their specific UI.

  • Console integrated help: From now one you can search for any term directly from the console, for example, this search is done over the blog:

and over the platform web help:

AND NEW UTILIDES FOR THE USER OF THE PLATFORM:

Also, following the line of simplifying the platform user’s daily life, we have incorporated new tool we hope can ease their day-to-day:

  • Exportation and importation of elements between environments: This functionality allows, from the control panel, to select the elements created in an environment (ontologies, projects, ThinKPs, APIs) and export them. The platform generates a ZIP file able to be used later for import on another platform. With this mechanism I can start development on one environment and later migrate everything to another in a simple way.
  • Sofia2 project integration with Git: The platform allows to configure a connection with a git repository. Once this is configured by an administrator, when we create a project, this will replicate the structure in the Git repository.
  • Ontology to Java DTOs: This allows to generate a Java class from an ontology (including annotations to migrate from Java to Json and viceversa).

  • Improvements on the scripting engine: To help with the script creation, the editor now supports autocompletion (using to Ctrl+Space combination).

Also on the process log the script errors can be found:

NEW FUNCTIONALITIES ON THE DASHBOARD ENGINE

Bases on the requirements identified on some projects we collaborate with we have also included:

  • Parameter passing either to gadgets or dashboards, so they can, in turn, pass them to the queries they use to load data
  • ·Text internationalization: From the editor we can now define an internationalization JSON to be used on the fields:

  • Gadget templates: This functionality allows to make available a HTML5 as a template so other users can create their own gadgets completing the template with their own parameters associated to the gadget.
  • Weather type gadget : Depending on the configuration now it is possible to display temperature and predictions based on location

NEW FUNCTIONALITIES ON THE SYNOPTIC ENGINE

This module started as a demonstration on what could we do with the platform and SVG web technologies on a field traditionally dominated by the SCADAs.

Thanks to the improvements identified by the collaborators, on this new version we support

NEW API MANAGER FEATURES:

The API Manager is an increasingly more commonly found on SW architectures. This component, now 3 years old, has incorporated features like:

PLATFORM DIFUSION

One of the work focus of the platform is for it to be accessible either for a user role, an advanced developer or a data scientist, and for that disposing of learning material is very important.

For this release we have generated the following guides:

Release 4.1 Sofia2 IoT Platform Published

Já está disponível a nova versão Sofia2 IoT Platform 4.0

Já está disponível a versão 4.0 de Sofia2 IoT Platform (f. FEEP IoT&Big Data Platform Sofia2). Esta versão também foi disponibilizada na Plataforma Experimental Sofia2 CloudLab.

Ver versões

Esta versão inclui numerosas novidades e melhorias, nomeadamente:

Seguir leyendo “Já está disponível a nova versão Sofia2 IoT Platform 4.0”

Já está disponível a nova versão Sofia2 IoT Platform 4.0