Announcement

Collapse
No announcement yet.

Nagvis entraine un retard des checks

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

  • Nagvis entraine un retard des checks

    Salut à tous,

    J'ai un système Nagios pour surveiller ma production. J'ai 331 serveurs (ce nombre augmente presque chaque jour), plus de 3000 services à surveiller. Les checks sont fait entre toutes les 5/10 minutes à toutes les demis heures.
    Le problème est le suivant :
    - si je lance le service ndo2db afin de pouvoir utiliser Nagvis / Nagios prend du retard sur les checks. Il prend beaucoup de retard : en l'espace de 30 minutes le retard accumulé est de 5 minutes. Ce retard ne cesse d'augmenter au fil du temps ce qui m'oblige à arrêter ndo2db donc Nagvis. Pour information, avant que l'on s'en rende compte le retard accumulé a atteint 36 heures en 1 week-end... (pour des services TRES sensibles sous astreinte avouez que c'est limite...)

    Pour information voici la configuration :


    Disques
    Code:
    SysFichier              1K-blocs    Utilisé Dispo.    Util%   Monté sur
    /dev/cciss/c0d0p2         248895    185442     50601    79%   /
    /dev/Volume00/LogVol06    297485    237472     44653    85%   /exploit
    /dev/Volume00/LogVol07   2064208   1959352         0   100%   /export
    /dev/Volume00/LogVol02   2043787   1196780    847007    59%   /home
    none                               515164         0    515164     0%   /dev/shm
    /dev/Volume00/LogVol03    249903      5716    231285     3%   /tmp
    /dev/Volume00/LogVol00   4128448   3687512    231224    95%   /usr
    /dev/Volume00/LogVol01    380807    106706    254441    30%   /var
    /dev/Volume00/LogVol04   1032088    204380    775280    21%   /vtom
    /dev/Volume00/LogVol05  15320532   2954140  11588152    21%   /vtomlogs
    /dev/Volume01/oraclelv   5077465      4167   4811154     1%   /oracle

    Configuration matérielle
    Code:
     11:12:25  up 8 days,  3:34,  2 users,  load average: 0,15, 0,54, 0,59
    115 processes: 113 sleeping, 2 running, 0 zombie, 0 stopped
    CPU0 states:   2,0% user   6,0% system    0,0% nice   0,0% iowait  90,0% idle
    CPU1 states:  19,0% user  15,0% system    0,0% nice   0,0% iowait  65,0% idle
    Mem:  1030332k av,  776240k used,  254092k free,       0k shrd,   97956k buff
                        529140k actv,   54072k in_d,   14120k in_c
    Swap: 2044072k av,   59584k used, 1984488k free                  478644k cached


    Merci à tous de votr aide
    Cyrilpop
    qui met du pop
    dans la vie


    http://www.brikole.net

  • #2
    Salut,

    J'ai patché un peu ndo pour le rendre bcp plus léger. A la base ndo remonte bcp de choses qui ne servent pas forcément. Tu peux le tester si tu veux.

    Le code est sur le svn de centreon dans le répertoire PatchNDO dans le trunk.

    Ce ndo a été mis en place dans un environnement de plus de 30 000 services sans aucun pb. Le redemarrage de nagios est très rapide ce qui n'est pas le cas avec ndo de base.

    Le code a été envoyé au développeur de nagios.
    Julien Mathis
    Centreon Project Leader
    www.merethis.com |

    Comment


    • #3
      Salut,

      merci pour ta réponse Mais j'aurai besoin de quelques infos supplémentaires... Le répertoire que j'ai pu télécharger, je fais ce qui a dans le fichier readme, mais est ce que l'addon NDOutils doit être installé ou non sur la machine ?

      En gros, dois-je faire une désintallation complète de ndo avant d'appliquer ce que j'ai pu télécharger ?



      Encore merci beaucoup pour ton aide
      Cyrilpop
      qui met du pop
      dans la vie


      http://www.brikole.net

      Comment


      • #4
        NDO propose en standard des options pour sélectionner ce qu'on envoi dans la base. Pas la peine de le forker pour ca.

        Change ton option:
        data_processing_options=67108663

        Tu aura toutes les tables sauf les tables "embétantes et inutiles":
        NDOMOD_PROCESS_SYSTEM_COMMAND_DATA,
        NDOMOD_PROCESS_SERVICE_CHECK_DATA et NDOMOD_PROCESS_HOST_CHECK_DATA

        Les premiers temps ça ne sera pas plus rapide, car il fait toujours le netoyage de temps en temps dans ces bases, c'est ça qui est lent. Tu peux y aller direct avec un delete from SYSTEM_COMMAND_DATA;
        (j'ai un doute sur le nom des tables, mais bon on les reconnait, ce sont les plus grosses).

        Une fois vidée et si elles ne se remplissent pas, plsu de problème. Pour l'instant personne ne les utilise celles-là.

        Pour le calcul de data_processing_options, j'ai posté un sujet à ce propos sur le forum de mémoire.
        Auteur de Shinken, outil de supervision compatible avec Nagios et orientée supervision distribuée hautement disponible et mulitplateforme.

        Comment


        • #5
          Le pb est que NDO n'avance plus et va etre repris a 0. Donc en attendant cela, nous patchons. Il n'y a pas que le pb de charge. Il y a des warning etc etc...

          On corrige au fur et à mesure.

          Mais ce ndo tient a 30 000 services sans pb, ce que nous avons mis en prod. En version normal, c'etait impossible sans latences. Et nous réduisons pas mal le load de MySQL en meme temps.

          => Une autre astuce : passer les tables de InnoDB à MyISAM... Ethan n'utilise pas les liaisons.
          Julien Mathis
          Centreon Project Leader
          www.merethis.com |

          Comment


          • #6
            Repris à zéro? C'est vrai qu'il n'avait pas avancé depuis un moment. Je vais zieuter le patch proposé et regarder l'impact sur mon environnement de test.
            Auteur de Shinken, outil de supervision compatible avec Nagios et orientée supervision distribuée hautement disponible et mulitplateforme.

            Comment


            • #7
              oui oui... moi j'envoie de patch mais ethan n'avance pas.

              Je pense qu'il va vraiment reprendre a 0, comme il l'avait annoncé au dernier seminaire allemand. Il lui manque trop de chose pour pouvoir continuer... (cryptage entre le serveur et client, buffering de requetes, compatibilité oracle etc etc)
              Julien Mathis
              Centreon Project Leader
              www.merethis.com |

              Comment


              • #8
                Le chiffrement je lui ait envoyé un patch, mais j'ai toujours pas de réponse : ( je me suis basé sur le code de NRPE en plus, donc il n'a pas d'excuse pour dire que c'est moche ; )

                C'est juste le 3ième patch que je lui envoi qui n'est pas pris en compte, à croire qu'il ne voit pas mes emails...

                Pour la compatibilité Oracle: il n'a pas fait une couche d'abstraction de la base (je n'ai pas regardé cette partie de ndo2db)?
                Auteur de Shinken, outil de supervision compatible avec Nagios et orientée supervision distribuée hautement disponible et mulitplateforme.

                Comment


                • #9
                  Bonjour,

                  Pour votre information, suite à des problèmes de IOWait sur la base de données, j'ai modifié le ndo2db avec celui proposé un peu plus haut, mais cela n'a eu qu'un impact mineur sur les performances.

                  En fait, le problème était que centstorage.log se retrouvait avec 70 millions de rows donc la BD ne répondait plus très bien. J'ai diminué le nombre de jours de rétention des logs à 7 jours et le tout se porte pour le mieux pour l'instant.

                  Nous avons 450 serveurs avec 2500 services monitorés par Centreon. Ce nombre est appelé à augmenter encore de 50% dans les prochains mois.

                  Comment


                  • #10
                    Bonjour,

                    J'ai actuellement 2800 services et je rencontre exactement le même probléme que vous. C'est a dire que ma Scheduling Queue prend du retard de 10 min à 30 minutes lorsque nagios tourne avec NDO.
                    J'ai testé en lançant Nagios sans NDO et effectivement j'ai beaucoup moins de retard.

                    Je vais tester votre version patcher de NDO pour voir si cela règle le problème :wink:

                    Comment


                    • #11
                      Bonjour,

                      Question bête...comment fait-on pour récupérer le patch (j'imagine qu'il y a un moyen de faire autrement que fichier par fichier) ???

                      Comment

                      Working...
                      X