Your browser doesn't support the features required by impress.js, so you
are presented with a simplified version of this presentation.
For the best experience please use the latest Chrome, Safari, or Firefox 10.
Log Management and Analysis
Pourquoi collecter ?
111
Log - Un lexique de l'écosystème
Big Data : ensembles de données tellement volumineux que des outils classiques de gestion de base de données ou de gestion de l'information ne siffisent plus.
Message Broker : intermédiaire de stockage entre un émetteur et un récepteur
Inverted index : list of all the unique words that appear in any document, and for each word, a list of the documents in which it appears
Machine-generated datas : Big data generated by your technology infrastructure, security systems and business application
Machine learning : apprentissage automatique d'une machine par IA
Operational Intelligence : category of real-time dynamic, business analytics that delivers visibility and insight into data, streaming events and business operations
Log Shipper : transport des logs depuis les systèmes producteurs
Watcher : alertes sur la donnée consolidée
Machine-generated datas kesako ?
- Log events
- Security events
- Security risks and threats
- Network activity
- Fraudulent activity
- User clickstreams and transactions
- Machine behavior
- Capacity consumption
- Customer experience
- Customer behavior
Qu'est-ce qu'un log ?
195.70.14.162 - - [12/Nov/2015:04:12:18 +1100] "GET /sites/default/files/js/js_33BaXx14mLWwIKRLHiDD1YUISrtmHDN9BKx9c77CeZ0.js HTTP/1.1" 200 826 "https://service-public.nc/" "Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36"
- Des formats de dates hétérogènes
- Une structure de champs variable
- Des données non structurées
- Des informations illisibles par un humain
- Un volume très important
- Une visibilité et une analyse impossible en l'état
Machine-generated datas In
Operational Intelligence Out
Turn Machine Data Into Insights
Turn Machine Data Into Insights
Principe d'Architecture
Quelles problématiques posées ?
- Collecter les logs de tous le SI : avec une faible empreinte
- Parser la donnée : RegExp avec un minimum de rejets
- Enrichir la donnée : à partir de tables de référence
- Traiter la donnée de masse : tendances, anomalies
- Indexer la donnée : sur la base de mots clef
- Visualiser la donnée hétérogène : de façon très visuelle
- Alerter intelligemment : sur la base de la donnée consolidée
Architecture à scalabilté horizontale
Machine learning à la rescousse
Quelques solutions de log management
- Splunk (payant)
- Logentries (payant cloud)
- Graylog (open)
- Elasticsearch - Logstash - Kibana (open)
- Loggly (payant cloud)
- Sumo Logic (cloud)
- JKool (cloud)
- ELSA (osbolète)
- Logzilla open
- Octopussy (osbolète)
- Scribe (osbolète)
Les solutions de log management retenues
- Splunk (payant) : le leader du marché et la référence
- ELK (open) : la solution portée par le mouvement DevOps
- Graylog (open) : veut être le Splunk Open source
Splunk - Pros
- Patterns de parsing très performants ex: 100% sur Apache
- Configuration entièrement dans la console web
- Nombreux modèles de données disponibles
- Très bonne assistance à la construction de requêtes : autosuggestion intelligente
- Accès contectuel à la documentation depuis l'outil
- Forum très fourni
Splunk - Cons
- Console web pas toujours très intuitive
- Agregation (sum) difficiles à trouver
- Fonction avancée comme GeoIP non trouvée
- Trop monolithique
- Prix excessif
- Apps (plugin) : peu robustes
- Useragent pas optimisé et inopérant
- Sources d'information peu diversifiées
- Fonctions d'agrégation uniquement par requêtage
Graylog - Pros
- Open source
- Construction facile de widgets
- Fonctions d'agrégation par l'interface (sans requêtage)
- Fonction de gestion des accès par streams et dashboards
Graylog - Cons
- Pas du tout intuitif
- Monolithique
- Pas d'injection de fichier : complexifie la configuration
- Outil de visualisation médiocre
- Pas de sélection de la plage temporelle sur un graphique
- Plage temporelle peu intuitive
- Pas de composant map
The Elastic Product Portfolio
ELK stack - Pros
- Architecture très scalable, flexible et modulaire
- Système très ouvert, grande communauté et adoption
- Chaque brique adresse une fonction très spécifique
- Compétences exploitables dans d'autres cas d'utilisation
- ES : Ecosystème dynamique, nombreux outils autour de ES
- ES : très performant, robuste, scalable, très rapide
- Logstash : filtres intégrés bien pratiques : geoip, useragent
- Kibana : facile à prendre en main, intuitif
- Kibana : fonctions d'agrégation par l'interface
- Kibana : Plage temporelle facile d'accès et sur graphique
ELK stack - Cons
- Difficile de trouver des configurations toutes faites
- Configuration à réaliser soit même
- Configuration manuelle pour la collecte
- Rejets lors du parsing : ex pour apache 5 rejets sur 5888
- Certaines fonctions clef sous licence : gestion des accès, gestion des watchers
La méthode d'évaluation
- QSOS pour formaliser l'évaluation
- Le formulaire au format mind map
- Les évaluations au format XUL
- Une étude de cas pour la mise en situation : Web Analysis
- Cas simple : histogramme des hits
- Cas avec agrégation : histogramme de la somme des bytes
- Cas avec enrichissement : camembert des user agents
- Cas avec géoréférencement : carte geoip
Les critères d'évaluation
Les critères généraux
- D - pérennité de la solution / obsolescence
- Faibles coûts
- Open source
- Equipe de développement active
- Visibilité de la roadmap et de l'issue tracker
- Forte communauté
- Qualité de la documentation
Les critères d'évaluation
Les critères fonctionnels
- Facilité d'installation et de maintenance
- Facilité de prise en main des outils
- Autonomie des utilisateurs pour l'analyse
- Gestion des accès
- Génération d'alertes
- Version mobile ?
Les critères d'évaluation
Les critères techniques
- D - self hosted
- Low latency
- Scalabilité
- Real time
- Modularité
- Interopérabilité, archi woa ?
- Polyvalence
- Container friendly ?
Les résultats
- Préco QSOS : pondération par un tiers et pas l'évaluateur
- Un exemple de rendu QSOS sur ELK
Le bilan
- Splunk est une bonne référence
- mais trop fermé et monolithique
- Graylog est prometteur et la gestion des accès est pratique
- mais mal fini surtout la visualisation peu ergonomique
- ELK très ouvert et en plein essor
- mais une partie de la configuration est manuelle
- la visualisation est très agréable et intuitive