ELK, elasticsearch, logstash, kibana – Exemples de data analysis à l’aide de ELK
Il existe un trio remarquable pour la lecture des fichiers de logs. Triptyque qui rend intuitif et parlant un certain nombre d’informations-clés notamment si vous supervisez des serveurs. Ce trio se nomme elasticsearch, logstash, kibana et est plus connu sous l’acronyme de ELK *.
* ELK qui désigne soit dit en passant aussi un cerf en anglais d’où l’image.
Toutefois, si vous n’avez pas de serveurs à superviser, ce qui est le cas de la plupart d’entre nous, cet outil peut servir à tout à fait autre chose. La preuve nous en donné par le blog d’elasticsearch avec des études de cas assez étonnantes sur l’utilisation de cet ensemble ELK pour l’analyse de données (data analysis).
C’est en substance ce que propose deux des démonstrations suivantes :
- Using Elastic Stack to Analyze NYPD Motor Vehicle Collision Data
https://www.elastic.co/blog/byodemos-new-york-city-traffic-incidents - Kibana 4 & Civic Hacking: Investigating Campaign Contributions
https://www.elastic.co/blog/kibana-4-and-civic-hacking-investigating-campaign-contributions
Pour chacune de ces démonstrations, il existe un dépôt git qui fournit la totalité du code.
- Using Elastic Stack to Analyze NYPD Motor Vehicle Collision Data : https://github.com/elastic/examples/tree/master/ElasticStack_nyc_traffic_accidents
- Kibana 4 & Civic Hacking: Investigating Campaign Contributions : https://github.com/elastic/examples/tree/master/ElasticStack_usfec
L’installation de l’ensemble est un peu fastidieux mais cela peut fournir des informations et des rapprochements étonnants pour traiter une très grand nombre d’information. C’est un outil vraiment puissant dans ce que l’on nomme désormais le data-journalisme, qui s’apparente à tout ce qui est relatif à la data intelligence comme le vante Cambridge Analytica, grand ordonnateur de la victoire de Donald Trump !
Le plus court chemin pour installer kibana, elasticsearch et consorts, c’est de passer par homebrew.
Il est nécessaire d’avoir des instances d’elasticsearch et de kibana en fonctionnement.
Installer elasticsearch
Voilà dans le désordre quelques commandes utiles pour l’installation d’ elasticsearch.
# installation d'elasticsearch à l'aide de homebrew brew -v brew doctor brew update brew install elasticsearch |
Pour lancer ensuite elasticsearch dans un onglet de la console
elasticsearch
Installer kibana
L’installation de kibana est indiqué sur la page de démarrage, le plus simple est de télécharger puis de décompresser l’archive kibana
# installation de kibana shasum kibana-5.1.1-darwin-x86_64.tar.gz tar -xzf kibana-5.1.1-darwin-x86_64.tar.gz |
Démarrer kibana depuis un répertoire nommé kibana_dashboard
cd [chemin-d-installation-vers-le-répertoire]/kibana_dashboard/ cd kibana/ |
Une fois, lancer elasticsearch dans un onglet de la console, il vous faudra aussi lancer kibana dans un autre onglet de la console.
./bin/kibana |
Vous devriez pouvoir lancer un navigateur et voir elasticsearch et kibana.
Pour elasticsearch
localhost:9200 in web browser -- should return status code 200 |
Pour Kibana
localhost:5601 in web browser -- should display Kibana UI. |
Analyse des données de contribution de la FEC (Federal Election Commission)
Voilà en substance ce que le tableau de bord que vous devez obtenir.
A l’aide de ce dashboard et des informations ainsi mis en forme, l’article concentre son analyse d’une part sur le phénomène des Super PAC, que personne ne peut désormais ignorer tant leur influence a été grande et souterraine dans la dernière campagne présidentielle américaine et d’autre part sur la possibilité de voir qui sont les riches donateurs dans de nombreuses villes américaines. L’auteur de l’article est d’Hoboken, New Jersey, connu aussi pour être la ville de Franck Sinatra !
Source : https://www.elastic.co/blog/kibana-4-and-civic-hacking-investigating-campaign-contributions
Certes, son analyse n’est sans doute pas ultra pertinente d’un point de vue politique, pour sa défense l’auteur Peter Kim est un ingénieur dont la fonction est avant tout de promouvoir l’utilisation d’elasticsearch.
Une leçon à retenir néanmoins de cette exercice, c’est l’incroyable usage qui peut-être fait de ELK pour l’analyse d’un grand volume de données que celles-ci soient structurés ou déstructurées ou les deux.
En conclusion, si vous souhaitez tirer un certain nombre d’indicateurs sur un grand volume de données mieux vaut s’équiper de ELK. A ce propos, les gens de Cambridge Analytica qui ont oeuvrés pour l’élection de Trump l’ont d’ailleurs bien compris, rien qu’à voir le produit “Cambridge Analytica’s Data Dashboard”, séduisant en diable.
Source : https://cambridgeanalytica.org/datadashboard
En savoir plus
- Step-by-Step Setup of ELK for NetFlow Analytics
http://blogs.cisco.com/security/step-by-step-setup-of-elk-for-netflow-analytics - ELK – LOGSTASH WITH ELASTICSEARCH
http://www.bogotobogo.com/Hadoop/ELK/ELK_ElasticSearch_Logstash.php - Elasticsearch in 5 minutes
http://www.elasticsearchtutorial.com/elasticsearch-in-5-minutes.html - ElasticSearch 101 – a getting started tutorial
http://joelabrahamsson.com/elasticsearch-101/ - How to Install Elasticsearch on Mac OS X
https://chartio.com/resources/tutorials/how-to-install-elasticsearch-on-mac-os-x/#modify-your-bashprofile-variables - How to Setup Logstash on Linux with ElasticSearch, Redis, Nginx
http://www.thegeekstuff.com/2014/12/logstash-setup/ - Kibana 4 Tutorial – Part 1: Introduction
https://www.timroes.de/2015/02/07/kibana-4-tutorial-part-1-introduction/ - Kibana 4 & Civic Hacking: Investigating Campaign Contributions
https://www.elastic.co/blog/kibana-4-and-civic-hacking-investigating-campaign-contributions - ElasticsearchClient
https://packagecontrol.io/packages/ElasticsearchClient - Installing Kibana for Elasticsearch on OS X
https://www.youtube.com/watch?v=psNH33pcGBo - Visualizing Logs Using ElasticSearch, Logstash and Kibana
https://www.youtube.com/watch?v=Kqs7UcCJquM - ELK Stack on Mac OS X Yosemite (excellent)
http://www.websightdesigns.com/wiki/ELK_Stack_on_Mac_OS_X_Yosemite - Installing Kibana for Elasticsearch on OS X
http://codingexplained.com/operating-systems/mac/installing-kibana-for-elasticsearch-on-os-x - Elasticsearch: Getting Started
https://www.elastic.co/webinars/getting-started-elasticsearch - Creating a Kibana dashboard of Twitter data pushed to Elasticsearch with NiFi
https://community.hortonworks.com/articles/56648/creating-a-kibana-dashboard-of-twitter-data-pushed.html - Le site officiel de logstash
http://logstash.net/ - Le site officiel d’elastic search
http://www.elasticsearch.org/ - Le site officiel de kibana
http://www.elasticsearch.org/overview/kibana/
- ElasticSearch: can’t connect via curl, weird inconsistent behavior
http://stackoverflow.com/questions/27953770/elasticsearch-cant-connect-via-curl-weird-inconsistent-behavior - Cambridge Analytica, les machiavels de la data
https://cambridgeanalytica.org/ - Le blog de Peter Kim
http://peter.mistermoo.com/