Nella impostazione della infrastruttura per il monitoraggio dei sensori costituiti da dispositivi ESP8266 in articoli pubblicati in precedenza
Mqtt con Beaglebone ed ESP8266 – Freeboard
si era impostato Freeboard per la visualizzazione dei dati provenienti dai sensori.
In questa nuova serie di articoli, si intende impostare Grafana
come ambiente per visualizzare i dati dei vari sensori.
L’ambiente in questo caso lo implementiamo su una scheda Orange Pi PC, ma può essere utilizzato altro sistema arm o pc.
Di seguito l’architettura utilizzata in questa serie di articoli
Nel corso di questi articoli si useranno utenze con il massimo delle autorizzazioni per ciascun ambiente, non si useranno autorizzazioni su mosquitto e non vengono utilizzare connessioni cifrate. In un ambiente di test tale impostazione va bene, ma in un ambiente di esercizio occorre impostare le corrette autorizzazioni e possibilmente le cifrature nelle connessioni in tutti gli ambienti.
Abbiamo installato una versione da noi compilata di Debian 9 Stretch per Orange PI PC. L’immagine usata è la seguente
E’ stato creato l’utente monitor, mentre l’hostname è stata rinominato in dashboardora. Se non installato procedere ad installare il demone avahi
1 |
sudo apt-get install avahi-daemon |
In tale modo i servizi sono accessibili tramite la pubblicazione dell’hostname, utilizzando dashboardora.local.
Utilizzando la utility armbian disabilitare ip6 sul sistema; per eseguire tale impostazione lanciare armbian-config
1 |
sudo armbian-config |
Procedere alla disabilitazione dell’ip6
Come primo passo installiamo il broker mqtt mosquitto
1 2 |
sudo apt-get install mosquitto sudo apt-get install mosquitto-clients |
Installare i servizi http ed i database Mysql e MySqlWorkbench
Apache2
1 |
sudo apt-get install apache2 |
e vari prerequisiti
1 |
sudo apt-get install libapache2-mod-php |
Avviare apache
1 |
sudo systecmtl start apache2 |
e controllare che il server risponde all’indirizzo web, che nel nostro caso corrisponde a http://dashboardora.local
MySql
1 |
sudo apt-get install mysql-server mysql-client |
Con Debian 9 si installa MariaDB; bisogna impostare la password dell’utenza di amministrazione root del database con il seguente comando
1 2 |
sudo systemctl start mysql sudo mysql_secure_installation |
Impostiamo la password di root e la possibilità di accesso da altri host come root
Il resto delle opzioni scelte sono elencate di seguito
Installiamo phpmyadmin per la gestione del database
1 |
sudo apt-get install phpmyadmin |
Alla schermata successiva scegliere apache2
Infine scegliere NO
Eseguire i comandi di seguito elencati
1 2 3 4 |
sudo mysql -u root -p mysql update user set plugin=' 'where user='root'; flush privileges; exit |
Controllare che il sistema funzioni correttamente accedendo tramite web browser aggiungendo all’indirizzo di apache phpmyadmin, nel nostro caso
http://dashboardora.local/phpmyadmin
Collegarsi con le credenziali di root del database.
Per poter accedere dall’esterno occorre abilitare mariadb ad accettare connessioni da altri host. Per tale scopo accedere in
1 |
/etc/mysql/mariadb.conf.d |
ed editare come root il file 50-server.cnf, modificando l’impostazione
1 |
bind-address= 127.0.0.1 |
in
1 |
bind-address= 0.0.0.0 |
Per consentire all’utente root del database di poter accedere da un client esterno, occorre accedere su mariadb localmente con il suo client ed abilitare tale opzione; si esegue pertanto quanto segue
1 2 3 4 5 6 7 8 |
mysql -u root -p GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION; FLUSH PRIVILEGES; exit |
Installazione su PC di Mysql Workbench
Accedere al link
e scaricare la versione per il proprio sistema operativo per poi procedere alla installazione.
Sulle distribuzioni Linux è presente anche nei repository.
Dopo aver configurato la connessione si accede alla schermata di controllo del systema MySql
Nel prossimo articolo continueremo la installazione degli altri componenti per il monitoraggio dei sensori