Considérations sur la supervision

Les déploiements à grande échelle d’ownCloud sont généralement installés sous forme d’applications Web n-tiers avec équilibrage de charge. La gestion réussie de telles installations nécessite une supervision active de l’application et des composants d’infrastructure. Le propos de cette section est de souligner les composants d’ownCloud ayant besoin d’être supervisés et de donner des conseils sur ce qu’il faut surveiller dans ownCloud dans une installation en entreprise.

Architecture de déploiement ownCloud

Avant de discuter de la supervision d’ownCloud, il est important de comprendre l’architecture d’un déploiement ownCloud typique. Ces meilleures pratiques de supervision sont développées sur la base de l’utilisation de serveurs Web équilibrant la charge, d’une base de données en cluster utilisant un moteur de stockage de base de données distribuées, comme MySQL NDB et de système de fichiers en cluster.

Il est supposé que les outils spécifiques d’entreprise (supervision, gestion des fichiers journaux, etc.) pour surveiller les opérations sont disponibles et qu’ownCloud n’est qu’une nouvelle cible pour ces outils.

Les composants importants d’ownCloud

ownCloud est une application PHP qui dépend d’un système de fichiers pour le stockage des fichiers et des méta-données de fichiers, et des informations spécifiques à une application. Bien que la perte d’un serveur d’application, d’un nœud de la base de données ou d’un équipement du cluster de stockage ne rend pas le système indisponible, savoir que cela peut arriver et le résoudre et essentiel pour conserver une bonne qualité de service. Par conséquent, il est important de superviser les serveurs d’ownCloud, l’équilibreur de charge, le cluster de stockage et la base de données. Cette documentation débute par l’application ownCloud et passe ensuite à travers toutes les couches de l’infrastructure.

Status.php

ownCloud fournit un mécanisme simple pour déterminer si un serveur d’application est disponible et opérationnel, qui est le fichier status.php sur chaque serveur ownCloud. Ce fichier se trouve dans le répertoire racine d’ownCloud, qui est par défaut /owncloud/status.php. Si le serveur fonctionne normalement, la réponse ressemble à ceci :

{"installed":"true","version":"6.0.0.16","versionstring":"6.0.1","edition":""}

Nous recommandons de superviser ce fichier sur chaque serveur applicatif d’ownCloud pour fournir une vérification basique de bon fonctionnement du serveur.

ownCloud.log

ownCloud fournit aussi un fonction intégrée de journalisation. Si les applications de journal de l’Édition Entreprise sont activées, ce fichier consigne les connexions des utilisateurs et les activités de partage. Si elles ne sont pas activées, ce fichier consigne les informations de bon fonctionnement de base d’ownCloud. Étant donné le potentiel de ce fichier de devenir très gros, il doit être permuté quotidiennement, et étant donnée l’importance des informations d’erreurs de ce fichier, il doit être intégré au gestionnaire de fichiers journaux de l’entreprise.

Les entrées de journal commençant par le mot-clé « Error » doivent être consignées et rapportées au support d’ownCloud.

Apache

Les journaux d’erreur et d’accès d’Apache doivent aussi être supervisés. Un changement significatif et spontané du nombre de requêtes par seconde doit aussi être supervisé et approfondi.

Serveur de base de données

La charge et l’état de santé général du serveur de base de données ou du cluster doit également être supervisé. Tous les vendeurs de produits MySQL fournissent des outils pour cela.

Système de fichiers en cluster

L’espace disque disponible du système de fichiers doit être supervisé pour éviter une saturation. Cette fonctionnalité est fournie par les système de fichiers et/ou du vendeur du cluster.

Équilibreur de charge

L’équilibreur de charge surveille la santé des serveurs applicatifs et distribue le trafic de manière optimisée. Les serveurs applicatifs doivent aussi être supervisés pour détecter les problèmes du système d’exploitation ou matériels. Des solutions de supervision comme Nagios fournissent cette fonctionnalité.

Toute la documentation est sous licence Creative Commons Attribution 3.0 Unported license — Traduction : Cédric Corazza.