Ad Widget

Collapse

Problème configuration S.M.A.R.T

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • MrJiinxit
    Junior Member
    • Jun 2013
    • 11

    #1

    Problème configuration S.M.A.R.T

    Bonjour,

    Je suis un étudiant actuellement en stage, mais totalement débutant dans l'utilisation de Linux et de Zabbix !
    Je me vois confronté à un problème sur lequel je bloque depuis déjà quelques jour.
    Malgré mes recherches je ne trouve pas de réponse à mon problème, j'espère donc en obtenir de votre part .

    On m'as donnée pour mission de mettre en place un état SMART sur les différent hôte présent dans Zabbix.
    J'ai donc suivit ce tutoriel ( ci-dessous ) pour ça mise en oeuvre :
    ( J'ai suivit la "Simpler Method" )



    malheureusement lorsque j'exécute la commande suivante :
    Code:
    $> zabbix_agentd -t hdd.smart[sda,Temperature_Celsius]
    J'obtient le résultat suivant :
    Code:
    $> hdd.smart[sda,Temperature_Celsius]            [m|ZBX_NOTSUPPORTED]
    Je n'arrive pas à trouver de solution et je sollicite donc votre aide.
  • tiramiseb
    Senior Member
    • Sep 2012
    • 427

    #2
    Salut,

    Tout d'abord, est-ce que SMART est fonctionnel sur ce disque ?

    Que donne :
    Code:
    smartctl -a /dev/sda
    ?
    Traducteur principal de Zabbix en français ces derniers temps - Blog personnel - Boutique de domotique "DIY"

    Comment

    • MrJiinxit
      Junior Member
      • Jun 2013
      • 11

      #3
      Premièrement : merci de ta réponse,

      Ensuite : je tient à dire que je suis sur que le SMART est bien effectif sur ce disque puisque j'ai réussi à obtenir la température sans le script et en exécutant la commande "manuellement".



      Ps: Je ne peut pas encore lancer la commande n'étant pas connecter au poste actuellement

      Comment

      • tiramiseb
        Senior Member
        • Sep 2012
        • 427

        #4
        Peux-tu montrer précisément (idéalement par un copier-coller) :

        1/ le contenu de zabbix_agentd.conf (au moins la ligne définissant le paramètre "hdd.smart")
        2/ le retour de la commande smartctl exécutée manuellement
        3/ le retour de la commande zabbix_agentd -t [...]

        En passant, deux questions bête mais on sait jamais :
        4/ as-tu bien relancé l'agent Zabbix après avoir changé sa configuration ?
        5/ exécutes-tu bien cette commande sur la machine à superviser (et non sur le serveur Zabbix) ?
        Traducteur principal de Zabbix en français ces derniers temps - Blog personnel - Boutique de domotique "DIY"

        Comment

        • MrJiinxit
          Junior Member
          • Jun 2013
          • 11

          #5
          J’espère te fournir les bonnes information , en tout cas merci de ta rapidité de réponse .



          -1/ Contenue du "zabbix_agentd.conf" :
          Code:
          UserParameter=hdd.smart[*],smartctl -A /dev/$1|grep $2|awk '{print $10}'

          -2/ Retour de commande :
          Code:
          #> smartctl -A /dev/sda | grep Temperature_Celsius|awk '{print $10}'
          
          27

          -3/ Retour de commande :
          Code:
          #> zabbix_agentd -t hdd.smart[sda,Temperature_Celsius]
          hdd.smart                                     [m|ZBX_NOTSUPPORTED]
          Au contraire l'erreur peut-être toute bête surtout au vu de mon niveaux tu as donc raison de me poser ces questions.


          -4/ Malheureusement oui , j'ai bien pensé a redémarrer l'agent après chaque modification effectué.

          -5/ Je suis connecter en SSH sur le poste en question, donc oui en quelque sorte je suis bien sur ce poste.

          Comment

          • tiramiseb
            Senior Member
            • Sep 2012
            • 427

            #6
            Contrairement à la documentation que tu cites, tu n'utilises pas sudo dans le UserParameter.

            - d'une part, smartctl est dans /usr/sbin, donc pas dans le path par défaut des utilisateurs normaux comme zabbix : il ne sait pas l'exécuter sans lui donner le chemin complet ou sans utiliser sudo
            - d'autre part, smartctl ne peut être exécuté qu'en tant que root (donc à travers sudo, pour ton cas)


            Donc tout simplement, tu as écrit « J'ai donc suivit ce tutoriel » alors que non, tu n'as pas suivi ce tutoriel, car tu y as enlevé un outil important.
            Traducteur principal de Zabbix en français ces derniers temps - Blog personnel - Boutique de domotique "DIY"

            Comment

            • MrJiinxit
              Junior Member
              • Jun 2013
              • 11

              #7
              J'ai bien suivit le tutoriel et mis sudo au départ ainsi que le '{print $$10}'

              mais rien y fait , cela ne marche pas non plus .

              Je dois avouer avoir enlever le "sudo" en pensant qu'il n'était pas nécessaire, car connecter en root, mais ce fut après avoir essayé plusieurs tentative sans succès.

              Comment

              • tiramiseb
                Senior Member
                • Sep 2012
                • 427

                #8
                enlever le "sudo" en pensant qu'il n'était pas nécessaire, car connecter en root
                Toi tu es root, oui. Mais Zabbix, non.

                Rétablis alors la configuration avec sudo, indiques également la ligne que tu as mise dans le sudoers édité avec la commande visudo, et remontre les résultats des mêmes commandes qu'au-dessus.

                Le double dollar est absolument indispensable également : si tu ne mets qu'un seul dollar l'agent Zabbix va l'interpréter alors que ce qu'il faut c'est le transmettre à la commande awk.
                Traducteur principal de Zabbix en français ces derniers temps - Blog personnel - Boutique de domotique "DIY"

                Comment

                • MrJiinxit
                  Junior Member
                  • Jun 2013
                  • 11

                  #9
                  Merci du renseignement c'est bien c'était bien ce que j'avais cru comprendre.

                  j'ai bien tout rétablie.

                  Voici la partie qui doit t'interresser dans mon visudo :
                  Code:
                  # User privilege specification
                  root    ALL=(ALL) ALL
                  zabbix  ALL=(ALL) NOPASSWD: /usr/sbin/smartctl -A /dev/sd?
                  Ainsi que le retour des différentes commandes :
                  Code:
                  #> smartctl -A /dev/sda | grep Temperature_Celsius|awk '{print $10}'
                  26
                  #> zabbix_agentd -t hdd.smart[sda,Temperature_Celsius]
                  hdd.smart                                     [m|ZBX_NOTSUPPORTED]
                  NB : Je précise que j'éxécute cette commande :
                  -smartctl -A /dev/sda | grep Temperature_Celsius|awk '{print $10}'
                  et non pas celle ci :
                  smartctl -A /dev/sda | grep Temperature_Celsius|awk '{print $$10}'
                  car cette dernière ne me retourne rien .
                  Voila pourquoi j'avais enlever un "$" dans mon fichier de configuration , que j'ai remis à jour tout a l'heure.

                  Comment

                  • tiramiseb
                    Senior Member
                    • Sep 2012
                    • 427

                    #10
                    Originally posted by MrJiinxit
                    NB : Je précise que j'éxécute cette commande :
                    -smartctl -A /dev/sda | grep Temperature_Celsius|awk '{print $10}'
                    et non pas celle ci :
                    smartctl -A /dev/sda | grep Temperature_Celsius|awk '{print $$10}'
                    car cette dernière ne me retourne rien .
                    Voila pourquoi j'avais enlever un "$" dans mon fichier de configuration , que j'ai remis à jour tout a l'heure.
                    Comme je l'ai expliqué, le double dollar est nécessaire dans la configuration de l'agent Zabbix pour lui indiquer qu'il ne faut pas interpréter la chose.

                    Dans l'agent Zabbix :
                    - si tu mets "$10", alors l'agent remplacera ça par le 10me argument donné à l'agent avant d'exécuter la commande, qui recevra donc la valeur du 10me argument que le serveur Zabbix aura donné à l'agent Zabbix - ce 10me argument est, dans ton cas, rien du tout, une chaîne vide ;
                    - si tu mets "$$10", alors l'agent transformera le double dollar en dollar simple, la commande recevra donc la chaîne "$10".


                    1/ Peux-tu me montrer le UserParameter maintenant que tu as remis sudo ?


                    2/ Que donne la commande suivante ?
                    Code:
                    sudo -u zabbix sudo /usr/sbin/smartctl -A /dev/sda
                    (je veux surtout savoir si ça s'exécute comme il faut ou s'il y a une erreur : si le retour est correct, alors pas besoin de montrer tout le contenu, pour résoudre ton problème on s'en fout du contenu tant qu'on sait il y a la ligne "Temperature_Celsius")
                    Traducteur principal de Zabbix en français ces derniers temps - Blog personnel - Boutique de domotique "DIY"

                    Comment

                    • MrJiinxit
                      Junior Member
                      • Jun 2013
                      • 11

                      #11
                      Originally posted by tiramiseb
                      Dans l'agent Zabbix :
                      - si tu mets "$10", alors l'agent remplacera ça par le 10me argument donné à l'agent avant d'exécuter la commande, qui recevra donc la valeur du 10me argument que le serveur Zabbix aura donné à l'agent Zabbix - ce 10me argument est, dans ton cas, rien du tout, une chaîne vide ;
                      - si tu mets "$$10", alors l'agent transformera le double dollar en dollar simple, la commande recevra donc la chaîne "$10".
                      Je te remercie pour cette explication , je comprend déjà beaucoup mieux son intérêt

                      - 1/ Voici mon User Parameter :
                      Code:
                       UserParameter=hdd.smart[*],sudo smartctl -A /dev/$1|grep $2|awk '{print $$10}'
                      -2/ La commande s'exécute bien correctement et retourne une liste complète sans erreur

                      Comment

                      • tiramiseb
                        Senior Member
                        • Sep 2012
                        • 427

                        #12
                        Originally posted by MrJiinxit
                        -2/ La commande s'exécute bien correctement et retourne une liste complète sans erreur
                        Cela signifie donc que l'utilisateur "zabbix" arrive à exécuter la commande /usr/sbin/smartctl avec sudo.


                        Je me demande s'il ne s'agit pas d'un problème de path, du coup...



                        1/ que donne la commande suivante ?
                        Code:
                        sudo -u zabbix sudo smartctl -A /dev/sda
                        2/ si tu remplaces "smartctl" par "/usr/sbin/smartctl" dans le UserParameter, ça change quelque chose ?
                        Traducteur principal de Zabbix en français ces derniers temps - Blog personnel - Boutique de domotique "DIY"

                        Comment

                        • MrJiinxit
                          Junior Member
                          • Jun 2013
                          • 11

                          #13
                          1/ Voici ce que la commande me retourne directement :
                          Code:
                          #> sudo -u zabbix sudo smartctl -A /dev/sda
                          smartctl 5.40 2010-07-12 r3124 [x86_64-unknown-linux-gnu] (local build)
                          Copyright (C) 2002-10 by Bruce Allen, http://smartmontools.sourceforge.net
                          
                          === START OF READ SMART DATA SECTION ===
                          SMART Attributes Data Structure revision number: 10
                          Vendor Specific SMART Attributes with Thresholds:
                          ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
                            1 Raw_Read_Error_Rate     0x000f   105   085   006    Pre-fail  Always       -       9598762
                            3 Spin_Up_Time            0x0003   096   096   000    Pre-fail  Always       -       0
                            4 Start_Stop_Count        0x0032   100   100   020    Old_age   Always       -       61
                            5 Reallocated_Sector_Ct   0x0033   100   100   036    Pre-fail  Always       -       0
                            7 Seek_Error_Rate         0x000f   089   060   030    Pre-fail  Always       -       895407221
                            9 Power_On_Hours          0x0032   066   066   000    Old_age   Always       -       30018
                           10 Spin_Retry_Count        0x0013   100   100   097    Pre-fail  Always       -       0
                           12 Power_Cycle_Count       0x0032   100   100   020    Old_age   Always       -       76
                          187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0
                          189 High_Fly_Writes         0x003a   100   100   000    Old_age   Always       -       0
                          190 Airflow_Temperature_Cel 0x0022   075   045   045    Old_age   Always   In_the_past 25 (Lifetime Min/Max 25/29)
                          194 Temperature_Celsius     0x0022   025   055   000    Old_age   Always       -       25 (0 21 0 0)
                          195 Hardware_ECC_Recovered  0x001a   056   046   000    Old_age   Always       -       6997822
                          197 Current_Pending_Sector  0x0012   100   100   000    Old_age   Always       -       0
                          198 Offline_Uncorrectable   0x0010   100   100   000    Old_age   Offline      -       0
                          199 UDMA_CRC_Error_Count    0x003e   200   200   000    Old_age   Always       -       0
                          200 Multi_Zone_Error_Rate   0x0000   100   253   000    Old_age   Offline      -       0
                          202 Data_Address_Mark_Errs  0x0032   100   253   000    Old_age   Always       -       0

                          2/ Modification du zabbix_agentd.conf , redémarrage de l'agent , ...et toujours pareil :
                          Code:
                          #> zabbix_agentd -t hdd.smart[sda,Temperature_Celsius]
                          hdd.smart                                     [m|ZBX_NOTSUPPORTED]

                          J'ai une autre question tant qu'on y est .
                          Visiblement je vais devoir faire ça pour chaque poste que je veux superviser, alors n'y-a-t-il pas une solution qui me permette de mettre place sur tout mes postes cette surveillance SMART ?!

                          Comment

                          • tiramiseb
                            Senior Member
                            • Sep 2012
                            • 427

                            #14
                            Je suis un peu perplexe.

                            L'exécution de smartctl manuellement en tant que zabbix fonctionne, mais pas son exécution par l'agent.

                            Une chose qu'on aurait dû regarder avant tout : y a-t-il quelque chose de parlant dans les logs de l'agent ?


                            Visiblement je vais devoir faire ça pour chaque poste que je veux superviser, alors n'y-a-t-il pas une solution qui me permette de mettre place sur tout mes postes cette surveillance SMART ?!
                            Non, tu dois installer smartmontools, configurer sudo et mettre ce UserParameter sur toutes les machines concernées. Il y a 50000 possibilités différentes pour remonter l'info, mais celle-là c'est la plus propre et toutes demandent de mettre en place quelque chose sur la machine concernée.
                            Traducteur principal de Zabbix en français ces derniers temps - Blog personnel - Boutique de domotique "DIY"

                            Comment

                            • MrJiinxit
                              Junior Member
                              • Jun 2013
                              • 11

                              #15
                              Cela me rend tout autant perplexe .

                              J'ai déja regardé dans les logs et aucunes informations intéressante n'est remonté ...
                              Code:
                              #> tail /var/log/zabbix-agent/zabbix_agentd.log
                               18768:20130701:151117.462 No active checks on server: host [host] not found
                               18768:20130701:151317.494 No active checks on server: host [host] not found
                               18768:20130701:151517.521 No active checks on server: host [host] not found
                               18768:20130701:151717.546 No active checks on server: host [host] not found
                               18768:20130701:151917.574 No active checks on server: host [host] not found
                               18768:20130701:152117.601 No active checks on server: host [host] not found
                               18768:20130701:152317.627 No active checks on server: host [host] not found
                               18768:20130701:152517.655 No active checks on server: host [host] not found
                               18768:20130701:152717.684 No active checks on server: host [host] not found
                               18768:20130701:152917.712 No active checks on server: host [host] not found
                              Originally posted by tiramiseb
                              Non, tu dois installer smartmontools, configurer sudo et mettre ce UserParameter sur toutes les machines concernées. Il y a 50000 possibilités différentes pour remonter l'info, mais celle-là c'est la plus propre et toutes demandent de mettre en place quelque chose sur la machine concernée.
                              Cela risque d'être long mais au moins j'ai ma réponse
                              Merci.
                              Last edited by MrJiinxit; 01-07-2013, 16:39.

                              Comment

                              Working...