Superviser vos serveurs avec FTPupinfo

Il est toujours pratique d’avoir un oeuil sur les ordinateurs dont on a la charge. Ne serait-ce que pour prévenir avant de guérir. Quand je dis serveurs, c’est tout type de machine linux.

Or, s’il faut se connecter à chacun pour avoir des infos, cela devient vite pénible.

Il existe une pléthore de logiciels dédiés à cet usage. Des simples, comme phpsysinfo, et des poids lourds comme Nagios, zabbix, …

Les logiciels simples peuvent correspondre à un besoin ponctuel, mais manquent souvent des éléments dont on aurait besoin spécifiquement. Les poids lourds du genre sont cauchemardesques à configurer, et c’est souvent sortir le bazooka pour tuer une mouche… Sans compter les failles de sécurités régulières.

J’ai développé un logiciel nommé FTPupinfo destiné, à la base, à mon usage personnel, pour superviser mes serveurs. Puis il a évolué avec le temps pour devenir une application à part entière, située entre les deux catégories dont on a parlé.

Voici un rapide aperçu:

Capture 1

Avantages:

  • Facile à installer (paquet dans les dépôts absolacom)
  • C’est le client qui uploade vers le serveur, pas le serveur qui interroge le client (pas d’ouverture de ports, pas de faille). Pas besoin de se connecter à la machine à surveiller (pas d’ouverture de ports, pas de faille).
  • Paramétrable avec un simple fichier de configuration texte
  • Upload sur le serveur en mode FTP ou rsync (si upload activé, non obligatoire)
  • Copie en local possible des rapports générés
  • Rapide et léger
  • Possibilité d’activer/désactiver chacune des fonctions
  • Personnalisable par skins (que vous pouvez créer/ajouter)
  • Ajout de modules possibles (par exemple pour prendre en charge SNMP)
  • Pensé pour être sécuritaire
  • Possibilité d’exécuter des programmes avant, pendant, après le fonctionnement du logiciel (alertes par mail, nettoyages, …)
  • Possibilité de garder le dernier rapport, un par jour, tous…
  • Le dernier rapport est accessible même si le serveur ne l’est pas
  • Fonctionne sur Debian (et dérivées), Mandriva, Suse (depuis les sources)

Inconvénients:

  • Ne fonctionne pas encore pour Windows (et ce n’est pas une priorité). Fonctionne au strict minimum avec Cygwin avec une version modifiée du programme (contactez moi si vous êtes intéressé).
  • Visualisation en mode décalé. Pas de consultation en direct (le programme est lancé avec une granularité d’une minute).
  • Sans doute Certainement améliorable au niveau du code
  • Disponible uniquement en deb ou en source (si vous voulez packager pour votre distrib, soit vous vous en chargez, soit vous me dites comment faire)
  • Les skins sont moches (si,si. Je sais. Je ne suis pas graphiste, je le reconnais), mais c’est du full CSS (sauf scories) facilement modifiable.¹
  • En anglais pour l’instant (même si c’est peu gênant, le vocabulaire informatique utilisé étant souvent anglais). L’adaptation pour permettre la localisation est en projet.
  • …heu…
Page de statistiques

Page de statistiques

Toutes les infos se trouvent sur le site du projet et vous pouvez voir des exemples sur le site de démo.

Dernière précision, c’est entièrement du GPL gratuit pour la partie cliente (le programme qui tourne sur les ordinateurs). Seule la partie serveur de supervision (optionnelle) est payante.

Il est actuellement utilisé professionnellement par ma société pour superviser les clients, quelques sociétés partenaires et les écoles du département des Pyrénées Orientales équipées de serveurs Eclair (dont j’ai été le développeur initial pour le pôle de compétences de Perpignan) ou Zeli.

Les suggestions, remarques, rapports de bugs sont les bienvenus.

1. message subliminal très subtil 😉 : si vous savez fairedes skins potables, envoyez les moi et je les intègrerais au programme avec vos crédits.

Articles en relation:

12 réflexions sur « Superviser vos serveurs avec FTPupinfo »

  1. Ce logiciel m’a l’air très intéressant !
    Je suis à la recherche d’un compromis entre phpsysinfo et zabbix justement pour monitorer mon serveur perso.

    Je pense que je vais adopter ton soft (avec les remontées de bugs et tout ce qu’il en suit) mais je n’ai pas compris ce qu’apportait la partie payante.

    Dans le cas d’un serveur unique, peut-on utiliser que le client ou bien a t-on besoin de la partie serveur quand même ?

  2. La partie payante est ce que tu vois quand tu arrives sur le site de démo (avec bien plus de choses en supplément) qui permet d’avoir un tableau de bord sur l’ensemble des serveurs monitorés. Si tu as moins de 5 sites (ou 5 pc), la partie payante est optionnelle. Ca intéresse surtout les entreprises qui surveillent leurs postes.

  3. Eh bah… Après avoir lu quelques lignes du code j’avais presque envie de me défenéstrer…

    Serieusement, apprenez vraiment le python et à coder avant de ‘promouvoir’ une horreur pareil.

    Au passage, des noms de variable en anglais avec des commentaires en francais ça fait un peut tache…

  4. Je sais, j’ai honte.
    Mais ça a le mérite de fonctionner!
    Maintenant, je n’ai rien contre le fait qu’on me dise où je fais des erreurs, pourquoi et comment m’améliorer…
    Quand aux commentaires en français, il y aura urgence lorsque des non francophones l’utiliseront. En attendant…

  5. @ manuberro

    Comment savez vous qu’aucun anglophone n’y utilise ? Ya un spyware qui envois les infos chez vous pour vous le dire ?

    Oula les erreurs… y-en aurrais trop a corriger la…
    Faudrait deja commencer par faire une vraie archive des sources.

    Et « le mérite de fonctionner » faut pas le dire trop haut… Vu comme la sécuritée dans cet outil semble prise en compte ca donne pas envie d’y utiliser, et puis de toute facon, ca ne fonctionnerais pas sur mon FreeBSD.

  6. rhaamo :

    @ manuberro

    Comment savez vous qu’aucun anglophone n’y utilise ? Ya un spyware qui envois les infos chez vous pour vous le dire ?

    Facile: je m’héberge (et j’ai donc accès aux logs), et ça n’a jamais été plublié nulle part avant aujourd’hui.

    Oula les erreurs… y-en aurrais trop a corriger la…
    Faudrait deja commencer par faire une vraie archive des sources.

    Donc pas constructif.
    Que mettre de plus dans une archive que les sources qui y sont déjà?

    Et « le mérite de fonctionner » faut pas le dire trop haut… Vu comme la sécuritée dans cet outil semble prise en compte ca donne pas envie d’y utiliser, et puis de toute facon, ca ne fonctionnerais pas sur mon FreeBSD.

    Quels sont les problèmes de sécurité?
    Si ça ne tourne pas sur FreeBSD c’est parce que je n’en ai pas eu besoin sur FreeBSD. Si ça ne t’apporte rien, désolé.

  7. Bonjour à tous,

    Étant un NULS en informatique, je n’ai pas encore saisi le sens du terme licence GPL.
    Il me semble que les bonnes volonté, peuvent contribué à améliorer où corriger le code d’une application dans les termes de cette licence.
    Étant un NULS en programmation je ne peut aider cette bonne initiative, mais j’encourage le développement de telle application.
    Sans cette initiative, GNU/Linux et les logiciels libres n’existerais pas dans notre monde actuel.
    Prenons la pilule Rouge (Matrix) et regardons ensemble qu’un tel projet sois en phase d’être là.

    Un simple utilisateur du système GNU/Linux sous mandriva 2010 (adelie)

    Marc

  8. Bonjour,
    j’ai installé votre logiciel mais je rencontre un problème. Lorsque je le lance manuellement, les pages sont créées en local, mais rien n’est envoyé sur le serveur de supervision. Comment peut on voir ou se trouve le problème?
    L’ordinateur utlise ubuntu hardy et le serveur debian lenny.
    Merci

  9. Bonjour,
    comment avez vous paramétré l’upload ? FTP ou rsync ?
    Pour que l’upload fonctionne, il faut mettes « Yes » dans le fichier de configuration, avec la majuscule au « Y ».
    Le système du serveur de supervision n’est pas important, tant que vous arrivez à vous connecter manuellement sur celui ci avec le type de connexion choisi. Si c’est par FTP, ça peut même être un Windows faisant office de serveur FTP. Si c’est par rsync, il faut que le serveur ssh soit activé sur le serveur de supervision et que l’utilisateur soit autorisé à se connecter.
    Un passage dans les logs du serveur de supervision peut éventuellement aider pour voir si c’est lui qui refuse la connexion.
    Assurez vous d’abord que vous pouvez vous connecter manuellement sur le serveur de supervision avec l’identifiant et le mot de passe de l’utilisateur choisi pour ftpupinfo.
    Pour voir plus de messages dans la console lors du lancement de ftpupinfo, créez un fichier vide nommé « debug » dans /etc/ftpupinfo/. Attention, c’est bavard et pas tellement causant pour quelqu’un qui ne connait pas le code, mais ça peut donner une indication. Éventuellement, envoyez moi la sortie par mail.

  10. Merci, je n’avais effectivement pas mis de majuscule à Yes.
    Pourtant, j’avais bien lu le commentaire… :/
    Ça fonctionne bien, c’est rapide et simple à paramétré.
    Je vais maintenant tester ça en profondeur avant de le mettre sur les ordinateurs.
    Merci encore.

  11. Il me semble qu’on m’a dit que ça fonctionnait, mais je n’ai pas fait l’essai.
    Je dirais qu’à priori, ça devrait marcher. Je ne vois pas ce qui l’en empêcherait. Mais je me trompe peut être.
    Si tu essaies, tiens moi au courant.

Les commentaires sont fermés.