Announcement

Collapse
No announcement yet.

Import de hosts en masse

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Import de hosts en masse

    Bonjour,
    Dans ma société nous avons un réseau qui compte beaucoup de sites distants et j'aimerais les mettre dans nagios (comprendre : monitorer les routeurs). Je dispose des adresses IP dans des feuilles Excel, que je pourrais exporter dans des fichiers CSV.
    J'ai déja fait cela :
    - Créé un template pour mes routeurs.
    - Essayé d'importer un host rataché à ce template dans la table 'host'. J'ai regarder les valeurs positionées sur un autre host dépendant d'un template équivalent et j'ai importé les même valeurs. Seuls changaient l'ID, le nom, l'alias, le template et l'adresse IP).
    Mais cela ne fonctionne pas :-( Il doit y avoir d'autres choses à faire, mais je ne connais pas le modèle de données et je n'ai pas trouvé de réponse sur le forum.

    Existe-t-il une doc quelquepart sur l'import CSV dans Centreon?

  • #2
    Originally posted by thoms View Post
    Bonjour,
    Dans ma société nous avons un réseau qui compte beaucoup de sites distants et j'aimerais les mettre dans nagios (comprendre : monitorer les routeurs). Je dispose des adresses IP dans des feuilles Excel, que je pourrais exporter dans des fichiers CSV.
    J'ai déja fait cela :
    - Créé un template pour mes routeurs.
    - Essayé d'importer un host rataché à ce template dans la table 'host'. J'ai regarder les valeurs positionées sur un autre host dépendant d'un template équivalent et j'ai importé les même valeurs. Seuls changaient l'ID, le nom, l'alias, le template et l'adresse IP).
    Mais cela ne fonctionne pas :-( Il doit y avoir d'autres choses à faire, mais je ne connais pas le modèle de données et je n'ai pas trouvé de réponse sur le forum.

    Existe-t-il une doc quelquepart sur l'import CSV dans Centreon?

    Bonjour,

    Regarde le modèle de la base, pour cela, utilise un outil de reverse ingeniering qui te recrer le modèle de la base, puis, tu épures les tables qui t'intéresses, puis, tu te fais un script qui va te remplir tes tables avec ta liste de host en fichier txt à part et ça roule, reste plus qu'à automatiser l'export centreon => nagios, ce qui est un peu moins facile, mais des astuces éxistent tout de même...

    Comment


    • #3
      Originally posted by thoms View Post
      Il doit y avoir d'autres choses à faire, mais je ne connais pas le modèle de données et je n'ai pas trouvé de réponse sur le forum.
      Bonjour,

      Il y a effectivement une autre table à peupler, il s'agit de "extended_host_information". Tous les champs peuvent être NULL mais il faut qu'un enregistrement de cette table soit lié à chacun des hosts, sinon ils ne peuvent pas être édités. Ces informations sont totalement optionnelles pour Nagios mais Oreon en a besoin impérativement pour pouvoir afficher la page vu qu'il va chercher les 2 données en base.

      Code:
      Warning: array_map() [function.array-map]: Argument #2 should be an array in /usr/local/oreon/www/include/configuration/configObject/host/formHost.php on line 33
      Last edited by -Archi-; 19 October 2007, 13:37.
      Système : Debian Etch 4.0r8 / Apache 2.2.3 / PHP 5.2.0 / MySQL 5.0.32
      Monitoring : Nagios 2.12 / Plugins 1.4.13 / Centreon 1.4.2.7

      Comment


      • #4
        J'ai du le faire il y a peu pour une 100aine d'host, j'avais la liste en texte et j'ai parsé en awk pour générer les defines hosts{ etc...} en .cfg pour l'importer ensuite dans Oreon. Une ligne de awk et c'était bon.
        Auteur de Shinken, outil de supervision compatible avec Nagios et orientée supervision distribuée hautement disponible et mulitplateforme.

        Comment


        • #5
          Merci, c'est excatement l'info qu'il me fallait.

          Histoire que cela serve à d'autre, voici comment j'ai fait :
          0- Attention ! Les requetes SQL proposé ici peuvent éclater votre base Centreon. Ne les utiliser que si vous savez exactement ce que vous faites!

          1- Créer un template qui servira pour les hosts (renseigner toutes les valeurs nécessaires pour un host normal). Notez l'identifiant du template dans la base SQL. Si vous avez la flème de chercher dans la base, il apparait dans l'url lorsque vous editer un host. C'est le paramètre host_id dans l'adresse.

          2- créer un fichier CSV (ou feuille Excel) avec les colonnes suivantes :
          Code:
          host_template_model_htm_id, host_name, host_alias, host_address,
           host_active_checks_enabled, host_passive_checks_enabled, 
          host_checks_enabled, host_obsess_over_host, host_check_freshness, 
          host_event_handler_enabled, host_flap_detection_enabled, 
          host_process_perf_data, host_retain_status_information, 
          host_retain_nonstatus_information, host_notifications_enabled, 
          host_snmp_version, host_register, host_activate
          Ces colonnes sont celle qui sont rempli pour la configuration minimal d'un host.
          Utiliser les valeurs ci-dessous comme valeurs par défaut. Remplacer les champs suivants :
          * N° de template (celui que vous avez créé),
          * Nom du hote,
          * Adresse IP)
          Notez la présence de "install" dans l'alias. Laissez le cela sera utilisé plus loin.

          Code:
          N° de template;Nom du hote;install;Adresse IP;2;2;2;2;2;2;2;2;2;2;2;0;1;1
          3- Importer le fichier CSV dans la table host (avec phpmyadmin par exemple). A ce stade, les hosts sont en base mais ne sont pas exploitable car ils ne sont pas déclarés dans la table extended_host_information.

          4- Lancer la requete suivante pour inserer automatiquement les enregistrement correspondants dans la table extended_host_information.
          Code:
          insert extended_host_information (ehi_id,host_host_id) 
          select host_id,host_id from host where host_alias='install'
          5- Enfin, changer la valeur du champ host_alias de la table host.
          Code:
          update host
          set host_alias=host_name
          where host_alias='install'
          Coté suggestion je propose un import CSV de host avec une liste déroulante pour choisir le template ;-)

          Comment


          • #6
            Sinon, tu peux essayer le module nmap xml import. Il fait un scan de réseau et te permets de les importer. AMHA c'est plus rapide.
            Regards,
            Florin

            Comment


            • #7
              Sinon, je viens de lire ceci :
              http://forum.oreon-project.org/showthread.php?t=4214
              Il a l'air intéréssant. A tester...
              Regards,
              Florin

              Comment

              Working...
              X