SlideShare une entreprise Scribd logo
FusionInventory
                 ´
            Journees Perl


   ´
Goneri Le Bouder <goneri@teclib.com>

              Strasbourg


              Juin 2012
A propos de moi




     ´
  Goneri Le Bouder

      ´
     Developpeur FusionInventory
      ´
     Developpeur Debian
     Mongueur Perl
     Travaille chez TECLIB’, Paris
Outline
  Vue d’ensemble
                    ´
  Agent : OS supportes
            ´             ´
  Tˆ che : Decouverte du reseau
   a
                       ´
  Tˆ che : Inventaire reseau
   a
            ´             ´
  Tˆ che : Reveil sur le reseau
   a
               ´ ´
  Tˆ che : La telediffusion
   a
  Tˆ che : Inventaire vCenter/ESX/ESXi
   a
  Tˆ che : L’inventaire
   a
  La qualita¨!
            ı
                    ´
  D’un point de vu developpeur
  La suite
  Questions
Les origines du logiciel




               ´
        2006 Creation de l’agent
              ´
        2008 Debut du serveur (le plugin GLPI, Tracker)
                ´
        2009 Integration Agent/Serveur
        2010 Projet FusionInventory
                ´
        2010 Integration avec Uranos
                ´
        2011 Integration avec Rudder (cfengine)
                ´
        2012 Integration avec OTRS
La structure du projet




  FusionInventory est un projet communautaire.
      liste de diffusion active
      IRC: #FusionInventory sur FreeNode
              ´ o
      Forge, depˆ t Git, etc
Les contributeurs




                                   ´
                                4 developpeurs
                                 ´
                                reguliers
                                             ´
                                une communaute
                                active
                                2 entreprises parties
                                prenantes
  Nous aimons le sang chaud !
Les contributeurs




                                   ´
                                4 developpeurs
                                 ´
                                reguliers
                                             ´
                                une communaute
                                active
                                2 entreprises parties
                                prenantes
  Nous aimons le sang chaud !
Un peu de vocabulaire




  FusionInventory n’est pas directement un logiciel

                              ´
     Agent: un logiciel destine aux machines du parc
     Serveur: dialogue avec l’agent
                               ´
     Tˆ che: une action effectuee par un agent pour le
      a
     serveur
Les serveurs aujourd’hui


  4 solutions aujourd’hui

      FusionInventory for GLPI
      http://www.FusionInventory.org
      Uranos
      http://uranos.sourceforge.net/
      Rudder de Normation
      http://www.normation.com/#produits
      OCS Inventory NG
      Pulse 2 de Mandriva
  ... il est aussi possible de produire un inventaire XML (et
  bientˆ t JSON) en local.
          o
´
Des integrations sont en discussion avec




      FusionDirectory
                  ´                               ´
      OTRS ITSM (developpement pratiquement termine)
pull / push




   FusionInventory permet le ”push” ou ”pull”

      ”pull”: Agent =⇒ Serveur
                  `
      l’agent est a l’origine du dialogue.
      ”push”: Agent ⇐= Serveur
      le serveur commence le dialogue.
Agent: Installation



  Plusieurs solutions

      distribution packages
      Debian, Fedora, EPEL, Ubuntu, Mageia, ...
      Windows installer
      GPO, psexec, ...
      static prebuilt packages, untar et lancer
      62 differents system so far
      tarball et CPAN
Agent: Installation




                      Sur Android, l’application est sur
                      Google Play.
Outline
  Vue d’ensemble
                    ´
  Agent : OS supportes
            ´             ´
  Tˆ che : Decouverte du reseau
   a
                       ´
  Tˆ che : Inventaire reseau
   a
            ´             ´
  Tˆ che : Reveil sur le reseau
   a
               ´ ´
  Tˆ che : La telediffusion
   a
  Tˆ che : Inventaire vCenter/ESX/ESXi
   a
  Tˆ che : L’inventaire
   a
  La qualita¨!
            ı
                    ´
  D’un point de vu developpeur
  La suite
  Questions
`                          ´
Les systemes d’exploitation supportes



     Linux
     Windows
     MacOSX
     BSD
     AIX
     HP-UX
     Solaris
     Android
Perl aide beaucoup

              ´
   Peu de differences fondamentales entre les UNIX like
   Il reste Win32
Outline
  Vue d’ensemble
                    ´
  Agent : OS supportes
            ´             ´
  Tˆ che : Decouverte du reseau
   a
                       ´
  Tˆ che : Inventaire reseau
   a
            ´             ´
  Tˆ che : Reveil sur le reseau
   a
               ´ ´
  Tˆ che : La telediffusion
   a
  Tˆ che : Inventaire vCenter/ESX/ESXi
   a
  Tˆ che : L’inventaire
   a
  La qualita¨!
            ı
                    ´
  D’un point de vu developpeur
  La suite
  Questions
´             ´
Decouverte du reseau




            ´             ´ ´
  Une remontee rapide des elements actifs

     NMAP
     NetBios
     requˆ te SNMP
         e
Outline
  Vue d’ensemble
                    ´
  Agent : OS supportes
            ´             ´
  Tˆ che : Decouverte du reseau
   a
                       ´
  Tˆ che : Inventaire reseau
   a
            ´             ´
  Tˆ che : Reveil sur le reseau
   a
               ´ ´
  Tˆ che : La telediffusion
   a
  Tˆ che : Inventaire vCenter/ESX/ESXi
   a
  Tˆ che : L’inventaire
   a
  La qualita¨!
            ı
                    ´
  D’un point de vu developpeur
  La suite
  Questions
`
... INTERMEDE ...
SNMP




  L’origine de SNMP

       Un standard
             `
       Premiere RFC: 1988
          ´´                    ´
       Cree pour superviser les equipements
                      ´
       3 versions differentes 1, 2c, 3 (Chiffrement)
       OID: L’adresse d’une information
       MIB: Un catalogue d’OID
SNMP: Pour faire quoi?




  Quelle utilisation de SNMP?

                   ´
     Identifier les equipements distants (commutateurs,
     imprimantes, ...)
     Faire un inventaire
     Collecter les informations importantes
SNMP: Le cauchemar




                                ´
  “Vous pouvez supporter mon materiel, j’ai la MIB !”

         `     ´ ´                       `
     En regle generale, elles sont dures a trouver
     Rarement libres ou redistribuables
     Des informations importantes sont souvant absentes
     Le pire ! Elles sont bien souvent fausses !
SNMP: Le cauchemar




                                ´
  “Vous pouvez supporter mon materiel, j’ai la MIB !”

         `     ´ ´                       `
     En regle generale, elles sont dures a trouver
     Rarement libres ou redistribuables
     Des informations importantes sont souvant absentes
     Le pire ! Elles sont bien souvent fausses !
SNMP: Un exemple




               Exemple: Cisco 6500 firmware
               12.2(33)SXI2a (02-Sep-09 01:00)
                   Serial OID:
                   .1.3.6.1.2.1.47.1.1.1.1.11.1
               12.2(33)SXI3 (27-Oct-09 11:12)
                   Serial OID:
                   .1.3.6.1.2.1.47.1.1.1.1.11.2⇐=
                   Gni?!
SNMP: a¨e
       ı
ˆ
SNMP: Comment etre fiable?




       ´
  On prepare nos propres “MIB”

                                   ´
     Un travail manuel pour chaque equipement
     Des fichiers XML
      ´
     Definition des relations entre les OID et les infos
            ´       ´
     ex: numero de serie → OID 1.2.4.34.53...
     Support des OID dynamiques
`
... FIN DE L’INTERMEDE ...
SNMP: Commutateur (1/3)



                ´ ´
  Informations generales

        ´       ´
     Numero de serie
     Fabricant
        `
     Modele
     Version du firmware
     Adresse MAC
     Charge CPU / RAM
     etc
SNMP: Commutateur (2/3)



                 ´                      ´
  Informations specifiques (support avance)

     Nom des ports
     La vitesse
     Le statut
     Les compteurs d’erreurs
     VLAN
                ´
     Trunk (tagge)
     ...
SNMP: Commutateur (3/3)




  Connexion par port

     Adresse MAC
         `
     une a “n”
       ´
     Decouverte LLDP / CDP
            ´
     remontee POIP etc
                  ,
SNMP: exemple d’un commutateur
SNMP: Imprimante (1/2)



                ´ ´
  Informations generales

        ´       ´
     Numero de serie
     Fabricant
        `
     Modele
     Firmware
      ´
     Memoire
     Adresse MAC
     etc
SNMP: Imprimante (2/2)




                    ´
  Informations avancees
     ´
     Etats des cartouches
     Compteur de page
SNMP: exemple d’une imprimante
Outline
  Vue d’ensemble
                    ´
  Agent : OS supportes
            ´             ´
  Tˆ che : Decouverte du reseau
   a
                       ´
  Tˆ che : Inventaire reseau
   a
            ´             ´
  Tˆ che : Reveil sur le reseau
   a
               ´ ´
  Tˆ che : La telediffusion
   a
  Tˆ che : Inventaire vCenter/ESX/ESXi
   a
  Tˆ che : L’inventaire
   a
  La qualita¨!
            ı
                    ´
  D’un point de vu developpeur
  La suite
  Questions
Wake On Lan




  WoL

             ´
    Possiblite d’utiliser l’agent comme un proxy pour
    ´
    emettre des requˆ tes WoL.
                         e
Wake On Lan : Exemple



  Exemple

     Un site distant
     50 ordinateurs


  Ce qu’on peut faire

      ´                           `
     Demarrer toutes les machines a 2h00 tous les soirs
                    `
     pour les mises a jour.
Outline
  Vue d’ensemble
                    ´
  Agent : OS supportes
            ´             ´
  Tˆ che : Decouverte du reseau
   a
                       ´
  Tˆ che : Inventaire reseau
   a
            ´             ´
  Tˆ che : Reveil sur le reseau
   a
               ´ ´
  Tˆ che : La telediffusion
   a
  Tˆ che : Inventaire vCenter/ESX/ESXi
   a
  Tˆ che : L’inventaire
   a
  La qualita¨!
            ı
                    ´
  D’un point de vu developpeur
  La suite
  Questions
´ ´
La telediffusion (1/2)




             ´                       ` ´
   Possibilite d’envoyer des actions a realiser aux
   machines?

                ´
       Pouvoir realiser des actions sur les machines
       Envoyer des fichiers
        ´                                        `
       Reduire la bande passante grˆ ce au “pair a pair”
                                   a
   Attention : ce n’est pas de la gestion de configuration.
´ ´
La telediffusion (2/2)




                                     ´ ´
   Pourquoi un outil pour faire des telediffusions vers les
   postes?

       Utiliser l’interface existante de GLPI
                                                           ´
       La gestion des droits de GLPI (groupes/profiles/entites)
       Multi-plateforme
Outline
  Vue d’ensemble
                    ´
  Agent : OS supportes
            ´             ´
  Tˆ che : Decouverte du reseau
   a
                       ´
  Tˆ che : Inventaire reseau
   a
            ´             ´
  Tˆ che : Reveil sur le reseau
   a
               ´ ´
  Tˆ che : La telediffusion
   a
  Tˆ che : Inventaire vCenter/ESX/ESXi
   a
  Tˆ che : L’inventaire
   a
  La qualita¨!
            ı
                    ´
  D’un point de vu developpeur
  La suite
  Questions
vCenter/ESX/ESXi




          `
  Le probleme
  Des boites noires : On ne peut pas installer d’agent dessus
  comme pour les autres hyperviseurs.
vCenter/ESX/ESXi




  La solution
                                    ´
  L’agent peut se connecter sur les equipements VMware
  via l’interface SOAP API:
     inventaire Hardware
     lister les Machines Virtuelles
     lister les ESX (dans les cas des vCenter)
vCenter/ESX/ESXi: en ligne de commande




  f u s i o n i n v e n t o r y −esx −−host vcenter −−user foo 
     −−password bar −−d i r e c t o r y /tmp
  Il ne reste plus qu’a pousser les inventaires :
  f u s i o n i n v e n t o r y −i n j e c t o r −v −− f i l e /tmp / ∗ . ocs 
     −u h t t p s : / / s e r v e r / p l u g i n s / f u s i o n i n v e n t o r y /
vCenter/ESX/ESXi: l’interface GLPI




                      Une interface existe dans
                      GLPI

                          ´
                         Definir l’authentification
                         Cibler un serveur
                         vCenter/ESX/ESXi
                         Planifier les inventaires
Outline
  Vue d’ensemble
                    ´
  Agent : OS supportes
            ´             ´
  Tˆ che : Decouverte du reseau
   a
                       ´
  Tˆ che : Inventaire reseau
   a
            ´             ´
  Tˆ che : Reveil sur le reseau
   a
               ´ ´
  Tˆ che : La telediffusion
   a
  Tˆ che : Inventaire vCenter/ESX/ESXi
   a
  Tˆ che : L’inventaire
   a
  La qualita¨!
            ı
                    ´
  D’un point de vu developpeur
  La suite
  Questions
´
Informations remontees (1/3)

   BIOS
   modules PCI
          ´
   slots memoires
   CPUs
   disques durs, lecteur, etc
          `
   carte mere
       `
   systeme d’exploitation
   ´
   ecrans
   ports
   slots
   partitions
   logiciels
´
Informations remontees (2/3)

                       ´
   utilisateurs connectes
             ´
   cartes videos
   machines virtuelles
   carte sons
   modems
   variables d’environnement
   ´
   equipements USB
                 ´
   configuration reseau
   batteries
   imprimantes
   processus
   antivirus
   LVM
´
Informations remontees (3/3)
Android: carte SIM, IMEI , etc
Outline
  Vue d’ensemble
                    ´
  Agent : OS supportes
            ´             ´
  Tˆ che : Decouverte du reseau
   a
                       ´
  Tˆ che : Inventaire reseau
   a
            ´             ´
  Tˆ che : Reveil sur le reseau
   a
               ´ ´
  Tˆ che : La telediffusion
   a
  Tˆ che : Inventaire vCenter/ESX/ESXi
   a
  Tˆ che : L’inventaire
   a
  La qualita¨!
            ı
                    ´
  D’un point de vu developpeur
  La suite
  Questions
´
Quelques metriques




  Aujourd’hui

     194 modules Perl
     21851 lignes
     938 tests unitaires
´
Quelques metriques




  Aujourd’hui

     194 modules Perl
     21851 lignes
     938 tests unitaires !
test-unitaire




   Pour ?

      tester le parsing sur des OS qu’on a pas
       ´
      verifier le code Win32 depuis un autre OS
      jusqu’a WMI et la base de registre
        ´                 ´
      verifier des choses penibles
      unicode, HTTPS, etc
Outline
  Vue d’ensemble
                    ´
  Agent : OS supportes
            ´             ´
  Tˆ che : Decouverte du reseau
   a
                       ´
  Tˆ che : Inventaire reseau
   a
            ´             ´
  Tˆ che : Reveil sur le reseau
   a
               ´ ´
  Tˆ che : La telediffusion
   a
  Tˆ che : Inventaire vCenter/ESX/ESXi
   a
  Tˆ che : L’inventaire
   a
  La qualita¨!
            ı
                    ´
  D’un point de vu developpeur
  La suite
  Questions
Ce que FusionInventory peut apporter




              ´
  Plusieurs scenarii

      Utiliser l’inventaire dans votre application
      Etendre la couverture de l’inventaire
      Interface avec GLPI ou autres
      Uranos, bientˆ t OTRS, etc
                   o
        ´
      Creer des nouvelles tˆ ches
                           a
Utiliser l’inventaire dans votre application
demo
Etendre la couverture de l’inventaire
demo
´
Creer des nouvelles tˆ ches
                     a
                ´
Vous permet de recuperer facilement des objets dans le
bon contexte :
   $serveur
   $config
   $logger
Interface avec GLPI ou autres

   SOAP (GLPI et OTRS)
Outline
  Vue d’ensemble
                    ´
  Agent : OS supportes
            ´             ´
  Tˆ che : Decouverte du reseau
   a
                       ´
  Tˆ che : Inventaire reseau
   a
            ´             ´
  Tˆ che : Reveil sur le reseau
   a
               ´ ´
  Tˆ che : La telediffusion
   a
  Tˆ che : Inventaire vCenter/ESX/ESXi
   a
  Tˆ che : L’inventaire
   a
  La qualita¨!
            ı
                    ´
  D’un point de vu developpeur
  La suite
  Questions
What else?
Notre roadmap




             ´
  Prochaines etapes :
     FusionInventory Agent 2.3.x
     ´               `
     Editeur de modele SNMP XML
        ´
     Integration avec nut
  Transition en cours :
      OCS/XML → REST/JSON prevue pour l’agent 3.0.0
                            ´
           ´
     utilisee par OTRS
Outline
  Vue d’ensemble
                    ´
  Agent : OS supportes
            ´             ´
  Tˆ che : Decouverte du reseau
   a
                       ´
  Tˆ che : Inventaire reseau
   a
            ´             ´
  Tˆ che : Reveil sur le reseau
   a
               ´ ´
  Tˆ che : La telediffusion
   a
  Tˆ che : Inventaire vCenter/ESX/ESXi
   a
  Tˆ che : L’inventaire
   a
  La qualita¨!
            ı
                    ´
  D’un point de vu developpeur
  La suite
  Questions
Questions?




             Question?
Thanks
  Thanks!

     Windows http://www.flickr.com/photos/
     aeu04117/430338509/sizes/z/in/photostream/
     AIX http:
     //www.flickr.com/photos/pchow98/5115638572/
     MacOSX
     http://www.flickr.com/photos/adriannier/
     5555516312/sizes/l/in/photostream/
     Cisco 6500
     http://www.flickr.com/photos/joachim_s_
     mueller/3084164647/sizes/z/in/photostream/
     Teletubbies http://www.flickr.com/photos/
     tudor/232849285/lightbox/
     Worker http://www.flickr.com/photos/wsdot/
     6783674428/sizes/l/in/photostream/

Contenu connexe

PDF
Pinhole story
ODP
Ubuntu est il un système sécuritairement sain ODP
PDF
Kit de survie pour l'IoT façon DIY
DOCX
Mise en place nagios
PDF
Conférence Shinken à SophiaConf2012 (Jean Gabès)
PPT
cardio cours test
PPTX
Modelo Pedagogico EF
PPT
La RéVolution Industrielle En France
Pinhole story
Ubuntu est il un système sécuritairement sain ODP
Kit de survie pour l'IoT façon DIY
Mise en place nagios
Conférence Shinken à SophiaConf2012 (Jean Gabès)
cardio cours test
Modelo Pedagogico EF
La RéVolution Industrielle En France

En vedette (20)

PDF
Descartes - Le Discours De La Methode
PDF
Consensus Com
PPTX
Influence Tendances
XLS
Tabla de amortizacion
PDF
Social crm - Conférence de publication
PPTX
Aprender para dar - Proyecto de proyectos
PPTX
Eval. y cuest video conferencia 2 nov-v.2
PPT
Presentación1
PDF
Documento rabietas
PPT
Les cités d'or
PPTX
Les cellules
PDF
Sistemas Distribuidos conceptos generales
PPTX
paris 2.0 : "Le grand changement" Nicolas Gandrillon Président Gros Mots et ...
PDF
Capitulo 4 los impuestos son demasiado altos
PPSX
E L P A P E L O T E
PPTX
Con las tic sembrando semillas, cosechando aprendizajes
PDF
Curriculum 2010
PPTX
Nuevas Tecnologías
PDF
Portfolio Lh Secteur Viticole
PPS
El escondite perfecto
Descartes - Le Discours De La Methode
Consensus Com
Influence Tendances
Tabla de amortizacion
Social crm - Conférence de publication
Aprender para dar - Proyecto de proyectos
Eval. y cuest video conferencia 2 nov-v.2
Presentación1
Documento rabietas
Les cités d'or
Les cellules
Sistemas Distribuidos conceptos generales
paris 2.0 : "Le grand changement" Nicolas Gandrillon Président Gros Mots et ...
Capitulo 4 los impuestos son demasiado altos
E L P A P E L O T E
Con las tic sembrando semillas, cosechando aprendizajes
Curriculum 2010
Nuevas Tecnologías
Portfolio Lh Secteur Viticole
El escondite perfecto
Publicité

Similaire à Fusioninventory journees-perl-2012 (20)

PDF
Présentation FusionInventory JM2L 2010
PPTX
Surveillance de réseau avec Nagios et SNMP.pptx
PPT
Snmp
PDF
Presentation Supervision 2008
PDF
141[1]
PDF
soft-shake.ch - Domotique et robotique avec le micro Framework .NET
ODP
Mdl ocsinventory 20100330
PPT
Technologies & Systèmes
PDF
Parc info
ODP
Mdl ocsinventory 20100330-2
PDF
Rapport fiifo4 snmp
PPTX
Scom et orchestrator main dans la main (ser214)
PPT
Mdl ocsinventory 20100330-2
PDF
SERVICES RESEAUX AVANCES
PPTX
System Center 2012 | SCCM : L'inventaire de A à Z avec System Center Configur...
PDF
Media center sous linux
PDF
Présentation OCSInventory SolutionsLinux 2009
PPT
[SINS] Présentation de Nagios
PPTX
Chapitre 1 LES SERVICES RESEAUX.pptx
Présentation FusionInventory JM2L 2010
Surveillance de réseau avec Nagios et SNMP.pptx
Snmp
Presentation Supervision 2008
141[1]
soft-shake.ch - Domotique et robotique avec le micro Framework .NET
Mdl ocsinventory 20100330
Technologies & Systèmes
Parc info
Mdl ocsinventory 20100330-2
Rapport fiifo4 snmp
Scom et orchestrator main dans la main (ser214)
Mdl ocsinventory 20100330-2
SERVICES RESEAUX AVANCES
System Center 2012 | SCCM : L'inventaire de A à Z avec System Center Configur...
Media center sous linux
Présentation OCSInventory SolutionsLinux 2009
[SINS] Présentation de Nagios
Chapitre 1 LES SERVICES RESEAUX.pptx
Publicité

Plus de Gonéri Le Bouder (20)

PDF
Red Hat Ansible Lightspeed Ansible Meetup-2023-11.pdf
PDF
How to speed up your (API client) modules
PDF
Virt lightning-montreal-linux-meetup-2020-02
PDF
Ansible meetup - Québec - april 25th, 2019
PDF
Montreal ansible meetup april 17th, 2019
PDF
How to driver your webservices with ansible
PDF
Distributed-CI - OpenStack Montréal - 2018-06
PDF
DCI presentation during OpenStack Montréal - 2018-06
PDF
Python + ansible = ♥
PDF
How to use TripleO tools for your own project
PDF
Otrs help desk-solutions-linux-2012
PDF
Fusioninventory openworldforum-paris-2011-september
PDF
GLPI RMLL-2011
PDF
Fusioninventory rmll-2011
PDF
Linuxtag 2011-it-asset-management-glpi-fusioninventory
PDF
High Performance Computing and Open Source & Linux Technical Excellence Sympo...
PDF
Fusioninventory project FOSDEM 2011
PDF
Fusioninventory 2010-french
PDF
Fusioninventory froscamp2010
ODP
présentation de Debian 2
Red Hat Ansible Lightspeed Ansible Meetup-2023-11.pdf
How to speed up your (API client) modules
Virt lightning-montreal-linux-meetup-2020-02
Ansible meetup - Québec - april 25th, 2019
Montreal ansible meetup april 17th, 2019
How to driver your webservices with ansible
Distributed-CI - OpenStack Montréal - 2018-06
DCI presentation during OpenStack Montréal - 2018-06
Python + ansible = ♥
How to use TripleO tools for your own project
Otrs help desk-solutions-linux-2012
Fusioninventory openworldforum-paris-2011-september
GLPI RMLL-2011
Fusioninventory rmll-2011
Linuxtag 2011-it-asset-management-glpi-fusioninventory
High Performance Computing and Open Source & Linux Technical Excellence Sympo...
Fusioninventory project FOSDEM 2011
Fusioninventory 2010-french
Fusioninventory froscamp2010
présentation de Debian 2

Fusioninventory journees-perl-2012

  • 1. FusionInventory ´ Journees Perl ´ Goneri Le Bouder <goneri@teclib.com> Strasbourg Juin 2012
  • 2. A propos de moi ´ Goneri Le Bouder ´ Developpeur FusionInventory ´ Developpeur Debian Mongueur Perl Travaille chez TECLIB’, Paris
  • 3. Outline Vue d’ensemble ´ Agent : OS supportes ´ ´ Tˆ che : Decouverte du reseau a ´ Tˆ che : Inventaire reseau a ´ ´ Tˆ che : Reveil sur le reseau a ´ ´ Tˆ che : La telediffusion a Tˆ che : Inventaire vCenter/ESX/ESXi a Tˆ che : L’inventaire a La qualita¨! ı ´ D’un point de vu developpeur La suite Questions
  • 4. Les origines du logiciel ´ 2006 Creation de l’agent ´ 2008 Debut du serveur (le plugin GLPI, Tracker) ´ 2009 Integration Agent/Serveur 2010 Projet FusionInventory ´ 2010 Integration avec Uranos ´ 2011 Integration avec Rudder (cfengine) ´ 2012 Integration avec OTRS
  • 5. La structure du projet FusionInventory est un projet communautaire. liste de diffusion active IRC: #FusionInventory sur FreeNode ´ o Forge, depˆ t Git, etc
  • 6. Les contributeurs ´ 4 developpeurs ´ reguliers ´ une communaute active 2 entreprises parties prenantes Nous aimons le sang chaud !
  • 7. Les contributeurs ´ 4 developpeurs ´ reguliers ´ une communaute active 2 entreprises parties prenantes Nous aimons le sang chaud !
  • 8. Un peu de vocabulaire FusionInventory n’est pas directement un logiciel ´ Agent: un logiciel destine aux machines du parc Serveur: dialogue avec l’agent ´ Tˆ che: une action effectuee par un agent pour le a serveur
  • 9. Les serveurs aujourd’hui 4 solutions aujourd’hui FusionInventory for GLPI http://www.FusionInventory.org Uranos http://uranos.sourceforge.net/ Rudder de Normation http://www.normation.com/#produits OCS Inventory NG Pulse 2 de Mandriva ... il est aussi possible de produire un inventaire XML (et bientˆ t JSON) en local. o
  • 10. ´ Des integrations sont en discussion avec FusionDirectory ´ ´ OTRS ITSM (developpement pratiquement termine)
  • 11. pull / push FusionInventory permet le ”push” ou ”pull” ”pull”: Agent =⇒ Serveur ` l’agent est a l’origine du dialogue. ”push”: Agent ⇐= Serveur le serveur commence le dialogue.
  • 12. Agent: Installation Plusieurs solutions distribution packages Debian, Fedora, EPEL, Ubuntu, Mageia, ... Windows installer GPO, psexec, ... static prebuilt packages, untar et lancer 62 differents system so far tarball et CPAN
  • 13. Agent: Installation Sur Android, l’application est sur Google Play.
  • 14. Outline Vue d’ensemble ´ Agent : OS supportes ´ ´ Tˆ che : Decouverte du reseau a ´ Tˆ che : Inventaire reseau a ´ ´ Tˆ che : Reveil sur le reseau a ´ ´ Tˆ che : La telediffusion a Tˆ che : Inventaire vCenter/ESX/ESXi a Tˆ che : L’inventaire a La qualita¨! ı ´ D’un point de vu developpeur La suite Questions
  • 15. ` ´ Les systemes d’exploitation supportes Linux Windows MacOSX BSD AIX HP-UX Solaris Android
  • 16. Perl aide beaucoup ´ Peu de differences fondamentales entre les UNIX like Il reste Win32
  • 17. Outline Vue d’ensemble ´ Agent : OS supportes ´ ´ Tˆ che : Decouverte du reseau a ´ Tˆ che : Inventaire reseau a ´ ´ Tˆ che : Reveil sur le reseau a ´ ´ Tˆ che : La telediffusion a Tˆ che : Inventaire vCenter/ESX/ESXi a Tˆ che : L’inventaire a La qualita¨! ı ´ D’un point de vu developpeur La suite Questions
  • 18. ´ ´ Decouverte du reseau ´ ´ ´ Une remontee rapide des elements actifs NMAP NetBios requˆ te SNMP e
  • 19. Outline Vue d’ensemble ´ Agent : OS supportes ´ ´ Tˆ che : Decouverte du reseau a ´ Tˆ che : Inventaire reseau a ´ ´ Tˆ che : Reveil sur le reseau a ´ ´ Tˆ che : La telediffusion a Tˆ che : Inventaire vCenter/ESX/ESXi a Tˆ che : L’inventaire a La qualita¨! ı ´ D’un point de vu developpeur La suite Questions
  • 21. SNMP L’origine de SNMP Un standard ` Premiere RFC: 1988 ´´ ´ Cree pour superviser les equipements ´ 3 versions differentes 1, 2c, 3 (Chiffrement) OID: L’adresse d’une information MIB: Un catalogue d’OID
  • 22. SNMP: Pour faire quoi? Quelle utilisation de SNMP? ´ Identifier les equipements distants (commutateurs, imprimantes, ...) Faire un inventaire Collecter les informations importantes
  • 23. SNMP: Le cauchemar ´ “Vous pouvez supporter mon materiel, j’ai la MIB !” ` ´ ´ ` En regle generale, elles sont dures a trouver Rarement libres ou redistribuables Des informations importantes sont souvant absentes Le pire ! Elles sont bien souvent fausses !
  • 24. SNMP: Le cauchemar ´ “Vous pouvez supporter mon materiel, j’ai la MIB !” ` ´ ´ ` En regle generale, elles sont dures a trouver Rarement libres ou redistribuables Des informations importantes sont souvant absentes Le pire ! Elles sont bien souvent fausses !
  • 25. SNMP: Un exemple Exemple: Cisco 6500 firmware 12.2(33)SXI2a (02-Sep-09 01:00) Serial OID: .1.3.6.1.2.1.47.1.1.1.1.11.1 12.2(33)SXI3 (27-Oct-09 11:12) Serial OID: .1.3.6.1.2.1.47.1.1.1.1.11.2⇐= Gni?!
  • 27. ˆ SNMP: Comment etre fiable? ´ On prepare nos propres “MIB” ´ Un travail manuel pour chaque equipement Des fichiers XML ´ Definition des relations entre les OID et les infos ´ ´ ex: numero de serie → OID 1.2.4.34.53... Support des OID dynamiques
  • 28. ` ... FIN DE L’INTERMEDE ...
  • 29. SNMP: Commutateur (1/3) ´ ´ Informations generales ´ ´ Numero de serie Fabricant ` Modele Version du firmware Adresse MAC Charge CPU / RAM etc
  • 30. SNMP: Commutateur (2/3) ´ ´ Informations specifiques (support avance) Nom des ports La vitesse Le statut Les compteurs d’erreurs VLAN ´ Trunk (tagge) ...
  • 31. SNMP: Commutateur (3/3) Connexion par port Adresse MAC ` une a “n” ´ Decouverte LLDP / CDP ´ remontee POIP etc ,
  • 32. SNMP: exemple d’un commutateur
  • 33. SNMP: Imprimante (1/2) ´ ´ Informations generales ´ ´ Numero de serie Fabricant ` Modele Firmware ´ Memoire Adresse MAC etc
  • 34. SNMP: Imprimante (2/2) ´ Informations avancees ´ Etats des cartouches Compteur de page
  • 35. SNMP: exemple d’une imprimante
  • 36. Outline Vue d’ensemble ´ Agent : OS supportes ´ ´ Tˆ che : Decouverte du reseau a ´ Tˆ che : Inventaire reseau a ´ ´ Tˆ che : Reveil sur le reseau a ´ ´ Tˆ che : La telediffusion a Tˆ che : Inventaire vCenter/ESX/ESXi a Tˆ che : L’inventaire a La qualita¨! ı ´ D’un point de vu developpeur La suite Questions
  • 37. Wake On Lan WoL ´ Possiblite d’utiliser l’agent comme un proxy pour ´ emettre des requˆ tes WoL. e
  • 38. Wake On Lan : Exemple Exemple Un site distant 50 ordinateurs Ce qu’on peut faire ´ ` Demarrer toutes les machines a 2h00 tous les soirs ` pour les mises a jour.
  • 39. Outline Vue d’ensemble ´ Agent : OS supportes ´ ´ Tˆ che : Decouverte du reseau a ´ Tˆ che : Inventaire reseau a ´ ´ Tˆ che : Reveil sur le reseau a ´ ´ Tˆ che : La telediffusion a Tˆ che : Inventaire vCenter/ESX/ESXi a Tˆ che : L’inventaire a La qualita¨! ı ´ D’un point de vu developpeur La suite Questions
  • 40. ´ ´ La telediffusion (1/2) ´ ` ´ Possibilite d’envoyer des actions a realiser aux machines? ´ Pouvoir realiser des actions sur les machines Envoyer des fichiers ´ ` Reduire la bande passante grˆ ce au “pair a pair” a Attention : ce n’est pas de la gestion de configuration.
  • 41. ´ ´ La telediffusion (2/2) ´ ´ Pourquoi un outil pour faire des telediffusions vers les postes? Utiliser l’interface existante de GLPI ´ La gestion des droits de GLPI (groupes/profiles/entites) Multi-plateforme
  • 42. Outline Vue d’ensemble ´ Agent : OS supportes ´ ´ Tˆ che : Decouverte du reseau a ´ Tˆ che : Inventaire reseau a ´ ´ Tˆ che : Reveil sur le reseau a ´ ´ Tˆ che : La telediffusion a Tˆ che : Inventaire vCenter/ESX/ESXi a Tˆ che : L’inventaire a La qualita¨! ı ´ D’un point de vu developpeur La suite Questions
  • 43. vCenter/ESX/ESXi ` Le probleme Des boites noires : On ne peut pas installer d’agent dessus comme pour les autres hyperviseurs.
  • 44. vCenter/ESX/ESXi La solution ´ L’agent peut se connecter sur les equipements VMware via l’interface SOAP API: inventaire Hardware lister les Machines Virtuelles lister les ESX (dans les cas des vCenter)
  • 45. vCenter/ESX/ESXi: en ligne de commande f u s i o n i n v e n t o r y −esx −−host vcenter −−user foo −−password bar −−d i r e c t o r y /tmp Il ne reste plus qu’a pousser les inventaires : f u s i o n i n v e n t o r y −i n j e c t o r −v −− f i l e /tmp / ∗ . ocs −u h t t p s : / / s e r v e r / p l u g i n s / f u s i o n i n v e n t o r y /
  • 46. vCenter/ESX/ESXi: l’interface GLPI Une interface existe dans GLPI ´ Definir l’authentification Cibler un serveur vCenter/ESX/ESXi Planifier les inventaires
  • 47. Outline Vue d’ensemble ´ Agent : OS supportes ´ ´ Tˆ che : Decouverte du reseau a ´ Tˆ che : Inventaire reseau a ´ ´ Tˆ che : Reveil sur le reseau a ´ ´ Tˆ che : La telediffusion a Tˆ che : Inventaire vCenter/ESX/ESXi a Tˆ che : L’inventaire a La qualita¨! ı ´ D’un point de vu developpeur La suite Questions
  • 48. ´ Informations remontees (1/3) BIOS modules PCI ´ slots memoires CPUs disques durs, lecteur, etc ` carte mere ` systeme d’exploitation ´ ecrans ports slots partitions logiciels
  • 49. ´ Informations remontees (2/3) ´ utilisateurs connectes ´ cartes videos machines virtuelles carte sons modems variables d’environnement ´ equipements USB ´ configuration reseau batteries imprimantes processus antivirus LVM
  • 51. Outline Vue d’ensemble ´ Agent : OS supportes ´ ´ Tˆ che : Decouverte du reseau a ´ Tˆ che : Inventaire reseau a ´ ´ Tˆ che : Reveil sur le reseau a ´ ´ Tˆ che : La telediffusion a Tˆ che : Inventaire vCenter/ESX/ESXi a Tˆ che : L’inventaire a La qualita¨! ı ´ D’un point de vu developpeur La suite Questions
  • 52. ´ Quelques metriques Aujourd’hui 194 modules Perl 21851 lignes 938 tests unitaires
  • 53. ´ Quelques metriques Aujourd’hui 194 modules Perl 21851 lignes 938 tests unitaires !
  • 54. test-unitaire Pour ? tester le parsing sur des OS qu’on a pas ´ verifier le code Win32 depuis un autre OS jusqu’a WMI et la base de registre ´ ´ verifier des choses penibles unicode, HTTPS, etc
  • 55. Outline Vue d’ensemble ´ Agent : OS supportes ´ ´ Tˆ che : Decouverte du reseau a ´ Tˆ che : Inventaire reseau a ´ ´ Tˆ che : Reveil sur le reseau a ´ ´ Tˆ che : La telediffusion a Tˆ che : Inventaire vCenter/ESX/ESXi a Tˆ che : L’inventaire a La qualita¨! ı ´ D’un point de vu developpeur La suite Questions
  • 56. Ce que FusionInventory peut apporter ´ Plusieurs scenarii Utiliser l’inventaire dans votre application Etendre la couverture de l’inventaire Interface avec GLPI ou autres Uranos, bientˆ t OTRS, etc o ´ Creer des nouvelles tˆ ches a
  • 57. Utiliser l’inventaire dans votre application demo
  • 58. Etendre la couverture de l’inventaire demo
  • 59. ´ Creer des nouvelles tˆ ches a ´ Vous permet de recuperer facilement des objets dans le bon contexte : $serveur $config $logger
  • 60. Interface avec GLPI ou autres SOAP (GLPI et OTRS)
  • 61. Outline Vue d’ensemble ´ Agent : OS supportes ´ ´ Tˆ che : Decouverte du reseau a ´ Tˆ che : Inventaire reseau a ´ ´ Tˆ che : Reveil sur le reseau a ´ ´ Tˆ che : La telediffusion a Tˆ che : Inventaire vCenter/ESX/ESXi a Tˆ che : L’inventaire a La qualita¨! ı ´ D’un point de vu developpeur La suite Questions
  • 63. Notre roadmap ´ Prochaines etapes : FusionInventory Agent 2.3.x ´ ` Editeur de modele SNMP XML ´ Integration avec nut Transition en cours : OCS/XML → REST/JSON prevue pour l’agent 3.0.0 ´ ´ utilisee par OTRS
  • 64. Outline Vue d’ensemble ´ Agent : OS supportes ´ ´ Tˆ che : Decouverte du reseau a ´ Tˆ che : Inventaire reseau a ´ ´ Tˆ che : Reveil sur le reseau a ´ ´ Tˆ che : La telediffusion a Tˆ che : Inventaire vCenter/ESX/ESXi a Tˆ che : L’inventaire a La qualita¨! ı ´ D’un point de vu developpeur La suite Questions
  • 65. Questions? Question?
  • 66. Thanks Thanks! Windows http://www.flickr.com/photos/ aeu04117/430338509/sizes/z/in/photostream/ AIX http: //www.flickr.com/photos/pchow98/5115638572/ MacOSX http://www.flickr.com/photos/adriannier/ 5555516312/sizes/l/in/photostream/ Cisco 6500 http://www.flickr.com/photos/joachim_s_ mueller/3084164647/sizes/z/in/photostream/ Teletubbies http://www.flickr.com/photos/ tudor/232849285/lightbox/ Worker http://www.flickr.com/photos/wsdot/ 6783674428/sizes/l/in/photostream/