Ad Widget

Collapse

Récupérer datas Zabbix en PHP

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • toine7m
    Member
    • Feb 2017
    • 93

    #1

    Récupérer datas Zabbix en PHP

    Bonjour,

    Ayant une infrastructure grandissante, j'ai eu une idée et j'aurais besoin d'avis/conseils :

    - Pour ne pas surcharger le service Helpdesk, j'aimerais leur fournir une interface simple où il y aurait un affichage en temps réel ou presque de ce qui va ou ne va pas dans l'infra. Cependant, l'infra est distante, donc je pensais envoyer les datas en PHP à un serveur web sur lequel je gèrerais un affichage assez basique dans un premier temps, et qui serait évolutif.

    J'aurais besoin d'aide concernant le traitement des données avant envoi en PHP, car les données viendraient de plusieurs Zabbix à la fois !

    J'ai effectué des recherches et je ne vois pas l'existence d'un plugin me permettant de faire ce que je veux faire, donc je viens vers vous pour voir si vous avez déjà tenté l'expérience !

    Bien sûr, je prendrai en compte tout avis, je suis ouvert à toute solution, même si j'aimerais ne pas devoir ouvrir de port sur mes firewalls juste pour un push de datas zabbix, c'est pour cela que j'aimais l'idée de partir sur un envoi en PHP sur le port 80.

    Un grand merci d'avance
  • SBO
    Zabbix Certified Specialist
    Zabbix Certified Specialist
    • Sep 2015
    • 226

    #2
    Salut toine,

    Une solution qui me parait toute simple au vu de ce que tu recherches : l'api Zabbix.

    Tu as un bon exemple de ce qui peut être fait (qui plus est, en PHP) ici : https://www.andrewletson.com/buildin...bbix-frontend/

    Comment

    • toine7m
      Member
      • Feb 2017
      • 93

      #3
      Merci bien

      Après mûres réflexions, je pense partir sur ceci :

      Un zabbix chez le client qui récolte les données. L'API placé chez le client reprend juste les datas qui m'intéressent (pour éviter que trop de données ne me servant pas ne passent sur le réseau) et ensuite elles seront poussées en HTTP (REST,...) vers mon serveur central distant.

      Ma question est, est-ce qu'après avoir repris les données de l'API, je peux les réintégrer ensuite dans mon zabbix pour pouvoir interpréter les données ?

      Merci d'avance

      Comment

      • SBO
        Zabbix Certified Specialist
        Zabbix Certified Specialist
        • Sep 2015
        • 226

        #4
        Ça me semble un peu complexe comme système, mais c'est faisable oui
        Tu peux récupérer les valeurs que tu souhaites via l'api, et les réinjecter sur un autre zabbix via zabbix_sender par exemple.

        Comment

        • toine7m
          Member
          • Feb 2017
          • 93

          #5
          C'est ce qui me semble le plus simple à faire étant donné que je ne veux récupérer qu'une partie des datas et ne pas ouvrir de ports non ?
          Je suis preneur d'autres idées

          Mais je vais me pencher sur les sender et getter merci

          Comment

          • toine7m
            Member
            • Feb 2017
            • 93

            #6
            Après quelques recherches, je vois que autant les zabbix_sender, que les get et trappers ne travaillent pas avec le port 80, je suis donc dans une impasse :/

            Je vais devoir me rabattre sur un script qui collecte les données de l'API et envoie le tout via HTTP REST

            Comment

            • SBO
              Zabbix Certified Specialist
              Zabbix Certified Specialist
              • Sep 2015
              • 226

              #7
              Ah, effectivement, je n'avais pas saisi que tu avais le port 80 comme contrainte.. Désolé

              Comment

              • toine7m
                Member
                • Feb 2017
                • 93

                #8
                Oui parce que je ne peux pas ouvrir des ports comme ça sur mes firewalls vu que ce sont 2 sites distants :/ Et ouvrir un port mysql c'est tout bonnement infaisable, je tiens aux datas quand même

                Du coup tu me conseilles de partir sur :

                - Récolter les données sur Zabbix 1 via l'API
                - Envoyer les datas récoltées de Zabbix 1 vers Zabbix 2 via HTTP REST
                - Récolter les données sur Zabbix 2 via l'API
                - Faire un dashboard pour afficher le résultat du processing des datas

                Ca irait tu penses ?

                Comment

                • SBO
                  Zabbix Certified Specialist
                  Zabbix Certified Specialist
                  • Sep 2015
                  • 226

                  #9
                  Avec le zabbix_sender, tu n'aurais pas besoin d'ouvrir le port SQL, juste autoriser la communication du site de ton client vers ton zabbix sur le port de ton zabbix server, rien d'autre.

                  Sinon ta solution peut effectivement fonctionner, tu perds un peu de temps avec les différents traitements, mais ce n'est pas non plus critique.

                  Comment

                  • toine7m
                    Member
                    • Feb 2017
                    • 93

                    #10
                    Le problème c'est d'ouvrir des ports enfaite, généralement on ouvre le moins de ports possibles donc voilà, autant profiter du 80 Je vais partir là-dessus alors merci Je reviendrai si j'ai des soucis, si ça peut aussi servir aux autres

                    Comment

                    Working...