Note d application. Analyse des logs HAProxy avec halog. Version du document : v1.1 Dernière mise à jour : 3 septembre 2013

Documents pareils
Content Switch ou routage de niveau HTTP

ALOHA LOAD BALANCER MISE EN ŒUVRE DU SSL FRONTEND

Dans le cadre de SECURIDAY Et sous le thème de Computer Forensics Investigation SECURINETS. Analyse des fichiers LOG. Tarek LABIDI (RT3)

OCS Inventory & GLPI

Guide SQL Server 2008 pour HYSAS

Logiciel de connexion sécurisée. M2Me_Secure. NOTICE D'UTILISATION Document référence :

Répartition des charges avec HaProxy CONTEXTE MFC JULIEN HUBERT

Manuel de déploiement sous Windows & Linux

Gestion des journaux

Installation et configuration du serveur syslog sur Synology DSM 4.0

SYSTEME DE GESTION DES ENERGIES EWTS EMBEDDED WIRELESS TELEMETRY SYSTEM

CONFIGURATION FIREWALL

Linux et le Shell. Francois BAYART. Atelier du samedi 20 Novembre

Accès aux ressources informatiques de l ENSEEIHT à distance

Configuration serveur pour le mode L4 DSR

Capture, Filtrage et Analyse de trames ETHERNET avec le logiciel Wireshark. Etape 1 : Lancement des machines virtuelles VMWARE et de Wireshark

But de cette présentation. Proxy filtrant avec Squid et SquidGuard. Serveur proxy. Serveur proxy. Hainaut P

Note d Application. Bascule d ALOHA via injection de route en BGP

GLPI OCS Inventory. 1. Prérequis Installer un serveur LAMP : apt-get install apache2 php5 libapache2-mod-php5 apt-get install mysql-server php5-mysql

ALOHA LOAD BALANCER MICROSOFT TERMINAL SERVICES LOAD-BALANCING AVEC SESSION BROKER

ALOHA LOAD BALANCER METHODE DE CONTROLE DE VITALITE

INSTALLATION NG V2.1 D OCS INVENTORY. Procédure d utilisation. Auteur : GALLEGO Cédric 23/10/2014 N version : v1

Guide des solutions 2X

Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6

Réalisation d un portail captif d accès authentifié à Internet

Déploiement d OCS 1.02 RC2 sous Debian Etch 64

Ecran principal à l ouverture du logiciel

VIDÉOSURVEILLANCE. Procédures de paramétrage des différentes box du marché

Pilote KIP certifié pour AutoCAD. Guide de l utilisateur État de l imprimante KIP

Cloud public d Ikoula Documentation de prise en main 2.0

NRPE. Objectif. Documentation. Procédures

MANUEL D INSTALLATION D UN PROXY

Assistance à distance sous Windows

Documentation de conception

Création d'un site dynamique en PHP avec Dreamweaver et MySQL

COMMUNICATION TECHNIQUE N TCV060 Ed. 01. OmniVista 4760 Nb de pages : 18 Date : URGENTE NON URGENTE TEMPORAIRE DEFINITIVE

IPCOP 1.4.x. Mise en œuvre du Pare Feu. Des Addons

TP Analyse de flux et outils Netflow : Nfdump et Nfsen

Transfert de fichiers (ftp) avec dreamweaver cs5 hébergement et nom de domaine. MC Benveniste

EndNote Web. Quick Reference Card THOMSON SCIENTIFIC

Installation locale de JOOMLA SEPIA

Fonctionnement Kiwi Syslog + WhatsUP Gold

Mise en place d un système de Téléphonie sur IP basé sur le logiciel Asterisk

Les réseaux des EPLEFPA. Guide «PfSense»

Procédure d utilisation et de paramétrage (filtrage) avec IPFIRE

LAB : Schéma. Compagnie C / /24 NETASQ

ALOHA Load Balancer 2.5. Guide de démarrage rapide. EXCELIANCE ALOHA 2.5 Guide de démarrage rapide 30/01/2008 1/17

MANUEL WORDPRESS. Objectif: Refonte d un site web sous Wordpress I PRE-REQUIS: 1 / Créer un backup (sauvegarde) du site:

1 Démarrage de Marionnet

LES NOTES D PROCEDURE DE CONNEXION WIFI AU CAMPUS. Ce document décrit la procédure à suivre pour se connecter en WIFI au campus.

Ocs Inventory et GLPI s appuie sur un serveur LAMP. Je vais donc commencer par installer les paquets nécessaires.

Protection des protocoles

L'art de centraliser et d'exploiter les messages journaux (logs) de manière sécuritaire avec Syslog-NG & LogZilla

EXCELIANCE ZAC des Metz 3 Rue du petit robinson Jouy en Josas Tél: Fax: sales@exceliance.

Tuto 2 : Configuration Virtual box, Configuration et installation du serveur XiBO

PROXY SQUID-SQARD. procédure

Installation et configuration d OCS/GLPI sur un Serveur Debian

Lancez le setup, après une phase de décompression, la fenêtre d installation des prérequis apparaît, il faut les installer :

Mise en oeuvre d un Serveur de CD AXIS StorPoint

PPE GESTION PARC INFORMATIQUE

REPARTITION DE CHARGE LINUX

Chapitre VIII : Journalisation des événements

Rapport du projet Qualité de Service

Comment reproduire les résultats de l article : POP-Java : Parallélisme et distribution orienté objet

ALOHA Load Balancer Guide de démarrage

contact@nqicorp.com - Web :

Installation Guide Serveur d impression et de stockage multifonctions à 2 ports USB 2.0 haute vitesse Manuel de l utilisateur

MISE EN PLACE D UN FIREWALL ET D UN SERVEUR PROXY SOUS LINUX MANDRIVA.

0.1 Mail & News : Thunderbird

L installation a quelque peu changée depuis les derniers tutos, voici une actualisation.

Joomla! Création et administration d'un site web - Version numérique

SOMMAIRE. 01_Installation ESXi Serveur HP.doc. Chapitre 1 Installation ESXi 5.1 2

Installation de Snort sous Fedora

Réseaux CPL par la pratique

Sécurité des réseaux Firewalls

Prérequis. Installation SNMP sous ESX. Date 19/01/2011 Version 1.1 Référence 001 Auteur Quentin OZENNE

Installation d OwnCloud 8.0 sous Debian Avec connexion des utilisateurs active directory et mise en place de HTTPS

Etude de la pertinence et de l'intérêt des appliances WAF (IPS web) à l'inria

Bon ben voilà c est fait!

Procédure d installation :

Module 10 : Supplément 2

contact@nqicorp.com - Web :

Mise en place d un serveur trixbox sur un domaine Kwartz. Version 1.0 du 25 juin 2012 Lycée Polyvalent d Artois, Noeux les Mines Adrien Bonnel

Netfilter & Iptables. Théorie Firewall. Autoriser le trafic entrant d'une connexion déjà établie. Permettre le trafic entrant sur un port spécifique

04/02/2014 Tutoriel. Lubuntu & glpi. thomas [NOM DE LA SOCIETE]

Maintenance et gestion approfondie des Systèmes d exploitation Master 2 SILI. Année universitaire David Genest

GUIDE D INSTALLATION DE L APPLICATION GECOL SUR

Serveur de partage de documents. Étude et proposition d'une solution afin de mettre en place un serveur de partage de documents.

Intérêt du NAT (Network Address Translation) Administration Réseau Niveau routage. Exemple d Intranet. Principe NAT

Keyyo Guide de mise en service CTI / API / TAPI Keyyo

1. Mise en œuvre du Cegid Web Access Server en https

Installation et utilisation du client FirstClass 11

ENDNOTE X2 SOMMAIRE. 1. La bibliothèque EndNote 1.1. Créer une nouvelle bibliothèque 1.2. Ouvrir une bibliothèque EndNote 1.3. Fermer une bibliothèque

Administration Réseau sous Ubuntu SERVER Serveur DHCP

Préparation d un serveur Apache pour Zend Framework

Construction d un Site Internet Dynamique avec Joomla René-Yves Hervé, Ph.D.

ESET Remote Administrator

Visual Taxe 4.1.0B04 minimum

Transcription:

Note d application Version du document : v1.1 Dernière mise à jour : 3 septembre 2013

Objectif Être capable d analyser les logs générés par l ALOHA Load-Balancer stockés dans un serveur syslog tierce. Difficulté Versions concernées ALOHA 4.2 et supérieur Contexte L ALOHA Load-Balancer, utilisé en mode niveau 7, génère des lignes de logs très détaillées. Il les stocke par défaut dans un espace mémoire. Malheureusement, cet espace mémoire est limité et peut être utilisé uniquement dans le cadre d un diagnostique instantané. Afin d analyser un problème qui est arrivé quelques minutes plus tôt ou pour avoir une tendance sur les temps de réponses des serveurs ou applications, ce n est pas suffisant. Pour analyser ces logs, HAProxy est livré avec un petit outils nommé halog que l on peut installer et utiliser sur le serveur qui récupère les logs générés par l ALOHA. Configuration syslog de l ALOHA Load-Balancer Dans l interface graphique de l ALOHA, aller sur l onglet Services puis cliquer sur l icône d édition de la ligne Trafic du service Syslog. Ajouter une ligne server dans la configuration, comme dans l exemple ci-dessous : server 192.168. 10.26: 514 Ensuite, cliquer sur l icône redémarrer. L ALOHA Load-Balancer émet deux sortes de logs : logs de trafic : logs de connexion HTTP et TCP, fournissant beaucoup d informations. Ils sont émis en facility local0 et en severity info. Page 2 sur 7

logs d évènements : évènements survenant sur les frontends, backends, serveurs, etc... Ils sont émis en facility local0 et en severity notice. Il serait judicieux de trier ces logs sur le système de fichier du serveur car ils pourront être utiles pour différents besoins. Configuration serveur syslog sous Linux syslog-ng Syslog-ng est l un des serveur syslog les plus puissants. Pour syslog-ng, vous devez définir une source, un filtre et une destination, comme dans l exemple ci-dessous : # IP et port d ecoute de syslog - ng source s_ net { udp ( ip (" 192. 1 68. 10. 26") port ( 514)); }; # ou ecrire les logs # logs de trafic destination d_aloha_traffic { file ("/ var / log / aloha / traffic. log " create_dirs ( yes )); }; # logs d evenements destination d_aloha_events { file ("/ var / log / aloha / events. log " create_dirs ( yes )); }; # les logs de trafic de l ALOHA sont envoyes avec # la facilty local0 et le niveau info filter f_aloha_traffic { facility ( local0 ) and level ( info ); }; # les logs de trafic de l ALOHA sont envoyes avec # la facilty local0 et le niveau notice filter f_aloha_events { facility ( local0 ) and level ( notice ); }; # ecriture des logs de trafic log { source ( s_ net ); filter ( f_ aloha_ traffic ); destination ( d_aloha_traffic ); }; # ecriture des logs d evenements log { source ( s_ net ); filter ( f_ aloha_ events ); destination ( d_aloha_events ); }; rsyslog rsyslog est l un des serveurs syslog le plus utilisé, car installé par défaut sur les principales distributions Linux. Pour rsyslog, nous devons activer l écoute sur le réseau et router les lignes de logs de L ALOHA. Afin de configurer rsyslog pour qu il écoute sur le réseau, décommenter les deux lignes suivantes dans le fichier /etc/rsyslog.conf : Page 3 sur 7

$ModLoad imudp $UDPServerRun 514 Afin de router les messages syslog vers différents fichiers, ajouter les deux lignes suivantes à la fin du fichier /etc/rsyslog.conf : # ALOHA logs traffic with facility local0 and severity info local0. info -/ var / log / aloha / traffic. log # ALOHA logs events with facility local0 and severity notice local0. notice -/ var / log / aloha / events. log logrotate Quand on ajoute de nouveaux fichier de logs sur un système, il est fortement conseillé de le faire tourner et de supprimer les plus anciens fichiers. C est le rôle de logrotate Créer un nouveau fichier nommé aloha dans le répertoire de configuration de logrotate /etc/logrotate.d : / var / log / aloha /*. log { rotate 31 daily missingok notifempty delaycompress compress sharedscripts postrotate invoke -rc.d rsyslog reload > / dev / null endscript } Dans l exemple ci-dessus, remplacer rsyslog par syslog-ng, en fonction du serveur syslog que vous utilisez Installation d HALog HALog est un petit et très puissant outil d analyse des logs de l ALOHA. L installation est assez simple, comme décrit ci-dessous : cd / usr / src wget http :// haproxy.1 wt.eu/ download /1.5/ src / devel / haproxy -1.5 - dev11. tar.gz tar xzf haproxy -1.5 - dev11. tar.gz cd haproxy -1.5 - dev11 / contrib / halog make cp halog / usr / bin / Page 4 sur 7

Analyse des logs ALOHA Maintenant que nous avons HALog et les logs de l ALOHA sur le même serveur, nous pouvons exécuter quelques analyses. Lister les serveurs en fonction du nombre de requêtes traitées La commande ci-dessous liste les serveurs en fonction du nombre de requêtes qu ils ont eu à traiter. Le nom du serveur est préfixé par le nom du backend. La huitième colonne "tot_req" donne le nombre de requêtes traitées par le serveur. cat traffic. log halog - srv -H -q awk NR ==1; NR > 1 { print $0 " sort -n -r -k 9"} column -t Lister les serveurs par temps de réponse La commande ci-dessous liste les serveurs par temps de réponse. Le nom du serveur est préfixé par le nom du backend. Le temps de réponse est exprimé en milliseconde et la dernière colonne "avg_rt" donne le temps de réponse moyen pour le serveur pour toutes les URLs traitées par ce serveur dans ce backend. cat traffic. log halog - srv -H -q awk NR ==1; NR > 1 { print $0 " sort -n -r -k 12"} column -t Il est recommandé de séparer le trafic statique et dynamique : vous verriez alors les temps de réponses d une même machine pour différents types de requêtes Lister les serveurs par le nombre d erreur applicative : statut HTTP 5xx La commande ci-dessous trie les serveurs par le nombre d erreurs applicatives qu ils ont générés. Le nom du serveur est préfixé par le nom du backend. La sixième colonne "5xx" donne le nombre d erreurs applicatives générées par le serveur. cat traffic. log halog - srv -H -q awk NR ==1; NR > 1 { print $0 " sort -n -r -k 6"} column -t Il est recommandé d affecter une application par backend, de cette manière, vous verriez facilement quelles applications génèrent des erreurs Page 5 sur 7

Lister les serveurs par le nombre d erreur : statut HTTP 4xx La commande ci-dessous liste les serveurs par le nombre d erreurs. Le nom du serveur est préfixé par le nom du backend. cat traffic. log halog - srv -H -q awk NR ==1; NR > 1 { print $0 " sort -n -r -k 5"} column -t trier les URLs par temps de traitement du serveur La commande ci-dessous permet de lister les URLs par le temps de traitement moyen, peu importe le serveur qui a traité la requête. La sixième colonne "okavg" fournit le temps de traitement moyen de la réponse, en milliseconde. cat traffic. log halog - ut - H - q column - t 1004 0 6609819 6583 6609819 6583 /3 s. php 2006 0 2771766 1381 2771766 1381 / health. php 2008 0 1601026 797 1601026 797 / fast. php 1004 0 1003335 999 1003335 999 / mega. php 1004 0 406830 405 406830 405 / health. html Trier les URLs en erreur La commande ci-dessous permet de trier les URLs en fonction du nombre d erreur qu elles ont générées, peu importe le serveur ou le type d erreur. La seconde colonne "err" fournie le nombre d erreurs générées par l URL donnée (dernière colonne). cat traffic. log halog - ue - H - q column - t 1004 0 1003335 999 1003335 999 / mega. php 2006 0 2771766 1381 2771766 1381 / health. php 1004 0 406830 405 406830 405 / health. html 2008 0 1601026 797 1601026 797 / fast. php 1004 0 6609819 6583 6609819 6583 /3 s. php Trier les URLs par fichier manquants : statut HTTP 404 La commande ci-dessous permet de trier les URLs en fonction du nombre d erreur 404 qu elles ont générées, peu importe le serveur. La première colonne "req" fournie le nombre d erreur 404 générée par l URL donnée (dernière colonne). cat traffic. log halog - u - H - q - hs 404 column - t Page 6 sur 7

Trier les URLs par nombre de requêtes La commande ci-dessous trie les URLs par le nombre de fois qu elles ont été appelées sur la platforme. La première colonne "req" fournie le nombre d appels à l URL. cat aloha. log halog -u -H -q awk NR ==1; NR > 1 { print $0 " sort -n -r -k 1"} column -t 2008 0 1601026 797 1601026 797 / fast. php 2006 0 2771766 1381 2771766 1381 / health. php 1004 0 6609819 6583 6609819 6583 /3s. php 1004 0 406830 405 406830 405 / health. html 1004 0 1003335 999 1003335 999 / mega. php Page 7 sur 7