Graylog2 est un outil d’analyse de logs dynamique, qui permet de les stocker dans une base de données afin de les analyser d’une manière bien plus simple.
Graylogs contrairement à ses concurrents (Insight Logs, Splunk,..) est OpenSource.
Installation / Configuration
Apres avoir testé l’installation sur un serveur et rencontré quelques pépins, nous sommes revenu à la version Appliance prêt à deployer.
A prendre : ICI
On déploie notre OVA dans notre infra.
On s’y connecte via la console vSphere :
Attention le clavier est en Qwerty
Login : ubuntu
Mdp : ubuntu
On jette un œil sur le RTFM pour la configuration : ICI
Password
Y entrer à la place de <password> votre nouveau mot de passe
sudo graylog2-ctl set-admin-password <password>
Username
Y entrer à la place de <username> votre nouveau username
sudo graylog2-ctl set-admin-username <username>
SMTP
sudo graylog2-ctl set-email-config <smtp server> [–port=<smtp port> –user=<username> –password=<password>]
Time Zone
Notre time zone pour la France UTC + 1 est CET
(A vérifier : http://www.timeanddate.com/time/zones/)
sudo graylog2-ctl set-timezone CET
On relance la configuration
sudo graylog2-ctl reconfigure
On relance les services:
sudo graylog2-ctl restart
IP Static
Pour une IP Static on modifie le fichier /etc/network/interfaces
auto eth0
iface eth0 inet static
address <static IP address>
netmask <netmask>
gateway <default gateway>
dns-nameservers 8.8.8.8 8.8.8.4
dns-search local
pre-up sleep 2
On relance les services et on reconfigure :
$ sudo ifdown eth0 && sudo ifup eth0
$ sudo graylog2-ctl reconfigure
Perso, j’ai redémarré ma VM suite à un souci de prise en compte des DNS
On se rend maintenant via un navigateur sur l’url ci-dessous pour la configuration :
Si vous avez le message “No Graylog2 servers available. Cannot log in”,attention à ne pas toucher au hostname car les Webservices se base sur celui-ci
On se logue avec le login et mot de passe précédemment modifiés sous la console
Configuration des Listeners
Sous System
A droite Input
Créer un « Syslog UDP » Input
- Title : A vous de voir
- Port : selon votre configuration d’envoie sur vos ESX, par default c’est 514
- Cocher Allow overrigin date : pour obtenir le bon format des entrées dates
- Cocher : Store Full message : VMware n’est pas compliant avec la RFC donc on ne peut faire le trie
- Cocher Force rDNS : Afin de savoir qui a parlé
On active sur Launch
Configuration de vos ESX :
Sur vos ESX dans Configuration/Advanced Setting/Syslog
udp://IP_GreyLog:514
Ou via Powercli en suivant le lien ci-dessous
http://vroomblog.com/ajouter-un-serveur-syslog-aux-esxi-via-powercli/
Paramétrage Graylog2
De retour à notre interface Graylog2
Sous System/Inputs
On doit commencer à voir de l’activité sous network I/O
Puis dans Source
Apres quelques dizaine de minutes, selon le nombre d’ESX et l’activité de ceux-ci vous devrez commencer à voir des informations :
Utilisation
Sous DashBoard :
On créer un Dashboard :
Nous avons un nouveau DashBoard qui apparaît :
On lance une recherche par exemple « error »
Note : une recherche multi critères est possible exemple : “esxA1 and Error”.
Les “And” et “Or” permettent d’affiner la recherche
Observer le retour
A vous de voir ce qui est pertinent selon votre infra :
Sur la droite on joue avec les indicateurs, histoire de se faire la main.
Exemple sous Source, on clic sur « Quick values » et on créer un Dashboard, via « Add to dashboard »
On envoie le résultat dans notre DashBoard précédemment créé :
On donne un Titre a notre vue :
De retour sur DashBoard
Exemple de DashBoard simple, cela permet de voir en coup d’œil si un ESX génère plus d’erreurs que les autres, toujours dans le but d’être proactif.
Autre exemple :
sur un de nos serveurs au bout de 2 heures nous observons un serveur loguer d’une manière anormale vue la proportion de celui.
nous avons fixé le souci avant incident
Les Streams
Les Streams permettent de rediriger en temps réel les logs vers des conteneurs d’analyses.
Voir : https://www.graylog.org/documentation/general/streams/
Pour nous aider a créer nos Stream, Veeam ou William LAM nous offre une liste des Events vCenter.
http://www.veeam.com/support/vcEvents.html
ou
http://www.virtuallyghetto.com/2014/04/other-handy-vsphere-vobs-for-creating-vcenter-alarms.html
Voila quelques exemples de Stream
Create Stream
Title : On met l’Event ID (ou autre selon besoin)
Description : celle fournie ou une perso
Ici nous créons un Stream permettant de détecter une erreur de configuration VLAN entre les vSwitch et pSwitch
Ou encore détecter un début APD (All path Down) esx.problem.scsi.apd.event.descriptor.alloc.failed
On ajoute une règle de filtre
Field : full_message
Type : Match regular expression
value : l’Event ID
Save
On valide
Puis on démarre notre règle qui par default est sur Pause
Alertes
Une fois que votre Graylog collecte les logs et les rediriges dans vos, streams toujours afin d’être proactif on créé une alerte
Ici en cas de début d’APD
Dans notre stream on configure une alerte “Manage alerts”
Condition
Si le log streamé est reçus 5 fois dans les 5 minutes, un mail d’alerte est envoyé avec les 5 logs du Stream
On créé une alerte mail
Puis on configure les destinataires
Puis on lance un test
Attention GrayLog est configuré pour envoyer par défaut les mails via le port 584
Si vous obtenez cette erreur
Nous avons du désactiver les connections SSL et TLS, pour ce faire, configurer le fichier : /opt/graylog2/conf/graylog2.conf
#sudo vi /opt/graylog2/conf/graylog2.conf
on passe les paramètres à “false”
Info importante :
Greylog2 étant toujours en développement et ne garantissant une stabilité prouvée, nous vous conseillons de rediriger vos logs vers un serveur Syslog (Syslog-ng, rsyslog,…) qui les stockera sous format fichier puis de créer un CRON permettant de rediriger les logs du Syslog vers le Greylog
Ou plus simplement configurer 2 serveurs syslogs aux ESX (Valide depuis la v 5.x)
Leave A Comment