CONSEIL | INFOGÉRANCE | HÉBERGEMENT
Monitoring d’applications PHP
Oxalide – Conseil, infogérance et hébergement
Sébastien Lucas – Directeur associé
Spécialisée dans l’infogérance et l’hébergement de plateformes critiques
Forte couleur Open-Source
Partenaire et hébergeur Prestashop depuis 2007
Professional partner Magento
OSCommerce, Joomla, Drupal, EZ, etc… depuis des années
2Oxalide © 2009 – Solutions d’infogérance et d’hébergement sur mesure
Notre approche
Conçoit et infogère des infrastructures sur mesure
Délégation complète de la gestion de la plateforme de nos clients
Mode projet
Equipe d’ingénieurs système & réseau dédiée
Profils garantis
Forte expertise Web
3Oxalide © 2009 – Solutions d’infogérance et d’hébergement sur mesure
A propos de cette conférence
Vous trouverez :
Un hébergeur / infogéreur qui s’exprime sur les
problématiques de monitoring applicatif,
Un retour d’expérience sur les méthodologies et
outils que nous avons été amené à mettre en place,
Vous ne trouverez pas :
Du code…
Oxalide © 2009 – Solutions d’infogérance et d’hébergement sur mesure4
5
Pourquoi monitorer ?
Oxalide © 2009 – Solutions d’infogérance et d’hébergement sur mesure
Pourquoi monitorer ?
6Oxalide © 2009 – Solutions d’infogérance et d’hébergement sur mesure
« Le site ne marche plus… »
« Attends, j’appelle l’hébergeur. »
« … »
« C’est bon… je les ai prévenu. C’est un script qui est parti dans le mur. Ils ont redémarré. C’est revenu… Normalement! »
« Ok cool ! »
Pourquoi monitorer ?
Être sur que l’application fonctionne correctement,
Garantir à nos clients que nous délivrons le meilleur service,
Le temps de disponibilité = rentabilité
Les enjeux deviennent de plus en plus important
Les applications distribuées limitent le monitoring manuel…
Oxalide © 2009 – Solutions d’infogérance et d’hébergement sur mesure7
Une question d’argent…
Pourquoi monitorer ?
Oxalide © 2009 – Solutions d’infogérance et d’hébergement sur mesure8
Une pression forte est mise sur les hébergeurs pour garantir les SLAs…
… mais rares sont les clients qui spontanément mettent en œuvre une véritable politique de surveillance applicative,
Le système qui existe habituellement est souvent limité à la constatation : Clients, développeurs, administrateurs…
Frein au développement de la société
La chaine applicative
Le monitoring vient de l’univers des télécoms
De nombreux outils existent :
HP openView,
IBM Tivoli,
Nagios,
Etc.
PHP parent pauvre…
Oxalide © 2009 – Solutions d’infogérance et d’hébergement sur mesure9
Etat des lieux
Réseau
Matériel
OS
Applicatif
serveurs(apache, mysql,
memcache, proxy, …)
Applicatif
PHP
Monitoring
Service Web
Monitoring & Profiling
Objectif : 100% de disponibilité,
Lié à la gestion de la production,
Connecté aux équipes d’astreinte (24/7)
Fournis des éléments d’analyse pour le profiling
Objectif : performance,
Environnement d’analyse plus lourd (parfois inadapté à la production),
Connecté aux équipes de développement (TMA)
Approche projet.
Monitoring Profiling
10Oxalide © 2009 – Solutions d’infogérance et d’hébergement sur mesure
11
Bien monitorer son applicatif PHP
Oxalide © 2009 – Solutions d’infogérance et d’hébergement sur mesure
Préparer le monitoring et profiling de l’applicatif PHP
Centralisez vos fichiers de logs (Syslog)
Définissez des politiques de logging(php_debug pour le profiling)
Epurez vos fichiers journaux des bugs (error.log = 0 ligne !)
Définissez des niveaux d’alertes
Oxalide © 2009 – Solutions d’infogérance et d’hébergement sur mesure12
Fichiers journaux & mode debug
Préparer le monitoring et profiling de l’applicatif PHP
Appuyez vous sur les sondes
externes (hébergeur ou par des
prestataires externes),
Vérifiez toute la chaine de votre
applicatif,
Utilisez vos métriques métiers !
Oxalide © 2009 – Solutions d’infogérance et d’hébergement sur mesure13
Mettez vous dans la peau du client
Inside Monitoring
Votre script est le seul résident de l’infrastructure ?
Implémentez un outil de monitoring/reporting (Nagios/cacti, Munin, Centreon, …)
Surveillez le pouls exact de l’infrastructure :
Multipliez les sondes,
Déterminez des seuils d’alertes bas,
Calquez vous sur le comportement idéal de votre infrastructure.
Oxalide © 2009 – Solutions d’infogérance et d’hébergement sur mesure14
Mettez vous dans la peau de la plate-forme
Inside Monitoring
Traitez les symptômes de faiblesse
Erreur HTTP,
Réponse nulle,
Page type non intègre,
Requête SQL lentes,
Erreur base de données,
Script trop lent à s’exécuter,
Mémoire consommées trop importante,
Décrochage/pic de trafic,
Décrochage/pic de consommation d’une ressource
Oxalide © 2009 – Solutions d’infogérance et d’hébergement sur mesure15
Mettez vous dans la peau de la plate-forme
16
Après le monitoring… le profiling
Oxalide © 2009 – Solutions d’infogérance et d’hébergement sur mesure16
Après le monitoring… le profiling
Créez un
environnement propice
au profiling,
Profiling =
tracabilité/debug =>
coût sur les
performances
17Oxalide © 2009 – Solutions d’infogérance et d’hébergement sur mesure
Profiling
Optimisez l’applicatif
Oxalide © 2009 – Solutions d’infogérance et d’hébergement sur mesure18
Avec le retour sur production
Déploiement
Exploitation
Développement
Les outils de profiling & Debug
Oxalide © 2009 – Solutions d’infogérance et d’hébergement sur mesure19
Xdebug & webgrind
Identifie le temps passé dans la fonction ou dans les éléments inclus.
Affiche la traçabilité: où sont appeléesles fonctions et les fonctions appeléespar celle-ci
Vous permet de trouver les bottlenecks
Les outils de profiling
APM (Alternative Php
Monitor)
Pinba (Php Is Not a
Bottleneck Anymore)
20Oxalide © 2009 – Solutions d’infogérance et d’hébergement sur mesure
Les briques complémentaires
Analysez le comportement de
votre serveur de base de
données avec des outils de
reporting
Oxalide © 2009 – Solutions d’infogérance et d’hébergement sur mesure21
MySQL
Les briques complémentaires
Vérifiez la consommation
mémoire de votre memcache,
Cherchez le meilleur ratio
hits/misses
Vérifiez l’allocation des
ressources
Oxalide © 2009 – Solutions d’infogérance et d’hébergement sur mesure22
Memcache
Les briques complémentaires
Utilisez les briques de
reporting de vos modules
complémentaires.
Oxalide © 2009 – Solutions d’infogérance et d’hébergement sur mesure23
Pour aller plus loin…
Zend Server
Mysql Monitor
Centreon
Oxalide © 2009 – Solutions d’infogérance et d’hébergement sur mesure24
… dans les solutions commerciales
25
Des questions?
Oxalide © 2009 – Solutions d’infogérance et d’hébergement sur mesure25
Sébastien Lucas
Tél. : +33 1 44 78 63 67