Salta al contingut

Categoria: IoT

FIWARE gestionat: Orion, IoT Agents i sèries temporals al vostre compte

La vostra plataforma FIWARE amb el context broker, els agents de dispositius i l'històric funcionant com un sol sistema, amb accessos protegits, còpies i actualitzacions al dia.

On es munta
Al vostre compte, a nom vostre
Còpies
Amb restauració provada
Actualitzacions
Planificades i documentades
Llicència
Open source: Orion, Orion-LD i IoT Agents amb AGPL-3.0; QuantumLeap, Keyrock i Wilma amb MIT

En resum

FIWARE és un conjunt de components de codi obert per a gestionar dades de context, com l'estat de sensors, vehicles o edificis, amb les API NGSI-v2 i NGSI-LD. Muntem i operem al vostre compte el context broker (Orion o Orion-LD), els IoT Agents que tradueixen els protocols dels dispositius, QuantumLeap amb la seua base de dades de sèries temporals i Keyrock amb Wilma per a la identitat i l'accés.

De què ens encarreguem?

Una plataforma FIWARE són diverses peces que es parlen per subscripcions: si una subscripció cau o un agent perd la connexió amb el broker MQTT, el panell continua mostrant l’últim valor i ningú no nota que les dades ja no són d’avui. La nostra feina és que això es detecte en minuts.

  • Context broker

    Orion o Orion-LD en diverses rèpliques, amb MongoDB en replica set i índexs revisats.

  • IoT Agents

    Agents per a JSON, UltraLight 2.0 o altres protocols, connectats al broker MQTT amb TLS.

  • Històric

    QuantumLeap o Mintaka amb la seua base de dades de sèries temporals i retenció definida.

  • Identitat

    Keyrock i Wilma, o el proveïdor d’identitat que ja tingueu, davant de totes les API.

  • Subscripcions

    Estat de cada subscripció i de les seues notificacions fallides, amb alertes.

  • Actualitzacions

    Versions de cada component fixades, provades juntes i actualitzades per ordre.

Quina arquitectura recomanem?

Els dispositius publiquen en un broker MQTT o criden per HTTP; els IoT Agents tradueixen aquests missatges a entitats NGSI i les actualitzen en el context broker. El broker guarda només l’estat actual, així que per a l’històric una subscripció envia cada canvi a QuantumLeap, que l’escriu en CrateDB o TimescaleDB. Amb Orion-LD, l’API temporal de NGSI-LD la proporciona Mintaka, que llig la base de dades TimescaleDB que alimenta el mateix Orion-LD.

Situació El que muntem Per què
Plataforma existent en NGSI-v2 Orion, IoT Agents i QuantumLeap El més provat i documentat de l’ecosistema
Projecte nou que ha d’interoperar Orion-LD amb Mintaka i TimescaleDB NGSI-LD d’ETSI amb API temporal
Requisits que Orion-LD no cobreix Scorpio o Stellio, altres brokers NGSI-LD El mateix estàndard amb una altra arquitectura interna

Totes les API queden darrere d’un proxy amb autenticació: el broker no s’exposa a internet sense control d’accés, encara que les dades semblen públiques.

Per a qui és?

  • Ajuntaments i entitats públiques: volen una plataforma de ciutat intel·ligent pròpia, amb dades de trànsit, residus, enllumenat o qualitat de l’aire en un model comú.
  • Integradors de projectes de ciutat o territori: despleguen sensors i aplicacions, i necessiten que algú opere la plataforma després de l’entrega.
  • Empreses que reben dades d’una plataforma FIWARE: necessiten el seu propi broker o històric per a intercanviar dades amb NGSI.

Quins problemes trobem més sovint?

  • Plataforma entregada i sense operar: es va muntar per a un projecte i ningú no l’ha actualitzada des de l’entrega.
  • Broker obert sense autenticació: qualsevol pot llegir o modificar entitats.
  • Subscripcions caigudes sense avís: l’històric deixa de créixer i es descobreix en fer un informe.
  • MongoDB en un sol node i sense còpia: l’estat de totes les entitats viu en un disc.
  • Versions d’imatges sense fixar: un reinici descarrega una versió nova i trenca alguna cosa.
  • Models de dades inventats: cada projecte anomena les entitats a la seua manera i no es poden creuar dades.

Com fem les còpies i les actualitzacions?

Copiem MongoDB, que guarda l’estat de les entitats, les subscripcions i la configuració dels agents, i la base de dades de sèries temporals; en TimescaleDB, amb recuperació a un moment concret com en PostgreSQL gestionat. Els grups de servei, les subscripcions i la configuració de cada component són, a més, al repositori. Restaurem periòdicament en un entorn de prova i comprovem que una mesura de prova arriba de l’agent a l’històric.

Cada component de FIWARE té el seu propi ritme de versions. Fixem la versió de cada imatge, llegim les notes abans de canviar-la, provem el conjunt en un entorn a part i actualitzem una peça cada vegada, començant per les que no guarden estat.

Com és el suport dia a dia?

Les mètriques del broker, de MongoDB, dels agents i de la base de dades de sèries temporals van a Prometheus i Grafana, com expliquem en monitoratge amb Grafana i Prometheus, amb alertes quan una entitat o un grup de sensors deixa d’actualitzar-se. Si feu servir Keycloak per a la identitat, el gestionem com en Keycloak per a empreses. La vigilància automàtica és contínua; la resposta humana, el següent dia feiner en horari laboral, dins de l’SRE com a servei. Cada mes rebeu un informe amb versions, incidències, creixement de l’històric i canvis fets.

Com encaixen les peces
  1. DispositiusMQTT o HTTP
  2. IoT AgentsTradueixen a NGSI
  3. Orion o Orion-LDEstat actual, sobre MongoDB
  4. QuantumLeapHistòric per subscripció
  5. CrateDB o TimescaleDBSèries temporals
  6. GrafanaPanells i alertes

On ho muntem?

Al vostre compte, al proveïdor que ja feu servir o al que encaixe millor. Si les dades s'han de quedar a la UE, Hetzner i OVHcloud són les opcions europees.

Proveïdors on ho muntem

  • Hetzner
  • AWS
  • Google Cloud
  • Azure
  • OVH
  • Servidor propi
ProveïdorCom ho muntemA tindre en compte
HetznerEls components en servidors cloud amb Docker o en Kubernetes, amb MongoDB i la base de dades de sèries temporals muntades per nosaltres.Cap proveïdor no ofereix FIWARE gestionat: en tots els casos l'operem nosaltres.
AWSEls components en EKS o EC2, amb MongoDB propi o MongoDB Atlas i TimescaleDB en un PostgreSQL propi.Abans comprovem la compatibilitat si es proposa una base de dades compatible amb MongoDB en lloc de MongoDB.
Google CloudEls components en GKE o Compute Engine, amb MongoDB propi o MongoDB Atlas.
AzureEls components en AKS o màquines virtuals, amb MongoDB propi o MongoDB Atlas.
OVHEls components en Public Cloud o en Managed Kubernetes, amb MongoDB gestionat d'OVHcloud o propi.
Servidor propiLa plataforma completa en els vostres servidors o en el centre de dades de la vostra organització.MongoDB necessita tres nodes per a tindre rèplica de veritat; en una sola màquina, les còpies són l'única protecció.

Què inclou

  • Orion Context Broker per a NGSI-v2 o Orion-LD per a NGSI-LD, amb MongoDB replicat al darrere.
  • IoT Agents (JSON, UltraLight 2.0 o altres) connectats al vostre broker MQTT o per HTTP, amb grups de servei i dispositius declarats en codi.
  • QuantumLeap amb CrateDB o TimescaleDB per a l'històric, o Mintaka sobre TimescaleDB si el broker és Orion-LD.
  • Keyrock com a gestor d'identitat i Wilma com a proxy davant de les API, o Keycloak si ja el feu servir.
  • Models de dades basats en Smart Data Models, revisats abans de donar d'alta les entitats.
  • Còpies de MongoDB i de la base de dades de sèries temporals, amb restauració de prova.
  • Mètriques del broker, dels agents i de les subscripcions, amb alertes quan deixen d'arribar dades.
  • Actualitzacions de cada component assajades en un entorn a part, amb les imatges i versions fixades.

Preguntes freqüents

NGSI-v2 o NGSI-LD?

NGSI-v2 és més senzill i el fa servir Orion, amb molta documentació i desplegaments. NGSI-LD és l'especificació d'ETSI, amb contextos JSON-LD i relacions entre entitats; l'implementen Orion-LD, Scorpio i Stellio. Per a un projecte nou que ha d'interoperar amb altres plataformes acostumem a proposar NGSI-LD; si ja teniu una plataforma en NGSI-v2 que funciona, no hi ha pressa per migrar.

FIWARE serveix per a projectes amb finançament públic?

Moltes convocatòries de ciutat intel·ligent demanen plataformes obertes, interoperables i basades en estàndards, i FIWARE amb NGSI-LD encaixa amb aquest tipus de requisit. Però si un projecte és subvencionable ho decideixen les bases de cada convocatòria i l'òrgan que la gestiona, no la tecnologia triada. Nosaltres ens ocupem que la plataforma funcione i quede documentada.

Keyrock o Keycloak per a la identitat?

Keyrock és el gestor d'identitat de FIWARE i, amb Wilma davant de les API, protegeix el broker amb OAuth2. Tots dos fa temps que tenen poques versions noves, així que en revisem l'estat abans de proposar-los. Si la vostra organització ja té Keycloak o un altre proveïdor d'identitat, sol ser millor fer-lo servir i posar davant de les API un proxy que valide els seus tokens, per a no mantindre dos sistemes d'usuaris.

Què passa amb les dades si cau el context broker?

L'estat actual de les entitats és a MongoDB i l'històric a la base de dades de sèries temporals, així que no es perden. Mentre el broker està caigut, els agents no poden actualitzar les entitats; per això, en producció, el broker va en diverses rèpliques i MongoDB en replica set.

Podeu fer el projecte de ciutat intel·ligent complet?

Ens ocupem de la plataforma: instal·lar, protegir, vigilar, copiar i actualitzar els components de FIWARE al vostre compte. Els sensors, la seua instal·lació al carrer i les aplicacions de negoci damunt de la plataforma solen ser d'altres equips, amb els quals ens coordinem.

Expliqueu-nos el vostre cas

En una trucada gratuïta de 20 minuts veiem on sou i per on començar. Sense compromís.

Reservar una trucada de 20 minuts

Documentació oficial consultada

Les dades tècniques d'aquesta pàgina es basen en:

Revisat el

WhatsApp