Difference between revisions of "Plateforme CampusIoT"
Jump to navigation
Jump to search
Line 14: | Line 14: | ||
** Replication (postgres, redis, rabbitmq, jorammq) |
** Replication (postgres, redis, rabbitmq, jorammq) |
||
** Alertes pour gateway, E2E device, cluster |
** Alertes pour gateway, E2E device, cluster |
||
− | *** Containers InfluxDB, Kapacitor, Alerta |
+ | *** Containers InfluxDB, Kapacitor, Alerta, Grafana |
* Sécurité |
* Sécurité |
||
** SSO Keycloak https://www.loraserver.io/lora-app-server/integrate/auth/ |
** SSO Keycloak https://www.loraserver.io/lora-app-server/integrate/auth/ |
||
** Fail2Ban |
** Fail2Ban |
||
+ | *** MQTT auth |
||
+ | *** Appserver/Keycloak auth |
||
** Rate Limit (MQTT rate limit) https://www.rabbitmq.com/flow-control.html |
** Rate Limit (MQTT rate limit) https://www.rabbitmq.com/flow-control.html |
||
** Load balancer Nginx |
** Load balancer Nginx |
||
+ | *** Multi-domain names (x.campusiot.imag.fr with x=lora,grafana,demo,alerta |
||
* Extension appserver |
* Extension appserver |
||
** Organization tokens (for MQTT ACL) |
** Organization tokens (for MQTT ACL) |
||
Line 28: | Line 31: | ||
* Extra services |
* Extra services |
||
** Dataviz TTNMapper |
** Dataviz TTNMapper |
||
− | * Extension |
+ | * Extension loraserver |
+ | ** Gateway duty cycle |
||
+ | * Extension loraserver et bridge |
||
** frames filtering and caching |
** frames filtering and caching |
||
+ | * Monitoring lora networks (and alerting) |
||
+ | ** Gateways duty cycle |
||
+ | ** Devices duty cycle |
||
* Benchmarking |
* Benchmarking |
||
** Load injection |
** Load injection |
||
** Tuning ([https://www.loraserver.io/lora-gateway-bridge/use/data/ protobuf message format] ...) |
** Tuning ([https://www.loraserver.io/lora-gateway-bridge/use/data/ protobuf message format] ...) |
||
− | * Implementation of a location server (based on RSSI) |
+ | * Implementation of a location server (based on RSSI) |
+ | ** see https://air.imag.fr/index.php/PM2M-2016-GeolocOutdoor/Suivi |
Revision as of 09:20, 30 January 2019
Enseignant: Didier Donsez
L'objectif du projet est d'améliorer l'infrastructure de support du projet CampusIoT (Learn-by-doing platform for teaching Internet of Things technologies and businesses).
- https://github.com/campusiot
- https://github.com/campusiot/tutorial
- https://github.com/CampusIoT/loraserver-docker
Quelques taches qui devront être réalisées :
- DevOps
- Cluster Kubernetes sur 3 machines.
- Disponibilité
- Replication (postgres, redis, rabbitmq, jorammq)
- Alertes pour gateway, E2E device, cluster
- Containers InfluxDB, Kapacitor, Alerta, Grafana
- Sécurité
- SSO Keycloak https://www.loraserver.io/lora-app-server/integrate/auth/
- Fail2Ban
- MQTT auth
- Appserver/Keycloak auth
- Rate Limit (MQTT rate limit) https://www.rabbitmq.com/flow-control.html
- Load balancer Nginx
- Multi-domain names (x.campusiot.imag.fr with x=lora,grafana,demo,alerta
- Extension appserver
- Organization tokens (for MQTT ACL)
- Gateway tokens (for MQTT ACL)
- Map of organizations gateways
- Map of organizations devices
- Map and track of a geo-located device
- Extra services
- Dataviz TTNMapper
- Extension loraserver
- Gateway duty cycle
- Extension loraserver et bridge
- frames filtering and caching
- Monitoring lora networks (and alerting)
- Gateways duty cycle
- Devices duty cycle
- Benchmarking
- Load injection
- Tuning (protobuf message format ...)
- Implementation of a location server (based on RSSI)