Aller au contenu

[TUTO] Monitoring réseau (Telegraf + InfluxDB 1.8 + Grafana)


.Shad.

Messages recommandés

@MilesTEG1

Bonjour,

il y a 2 minutes, MilesTEG1 a dit :

je ne sais pas quoi effecter à la variables

Une requête qui sélectionne toutes les valeurs d'un champ spécifique par exemple j'ai fait une variable sur les @IP de mes caméras telle que : image.png.c9149cd87ae95506658fc9dc0eeda09b.png

Ainsi j'ai un seul panel pour toutes mes caméras mais qui ne m'affiche qu'une seule à la fois. Je sélectionne juste dans le popup qui affiche la variable (renommée avec un label) la valeur d'@IP de caméra dont je veux voir les données.image.png.f630a0650213365f707e4ff3e361d2ff.png

image.png.98d2264bde4f876d6377e178366071b1.png

Voilà un usage possible de variable.

Cordialement

oracle7😉

Lien vers le commentaire
Partager sur d’autres sites

Il y a 19 heures, oracle7 a dit :

@.Shad.

OK pourquoi pas mais alors pour juste bien comprendre, comment tu l'utilises cette variable "Datasource". a priori et sauf erreur de ma part, on ne peut pas la mettre/utiliser dans la requête elle même (l'éditeur ne le permet pas tout comme le language InfluxQL).

Pour une requête donnée dans un même panel, le popup de choix de la source ne permet que de choisir qu'une et une seule source de donnée et implicitement toutes les requêtes SELECT ... FROM measurement se font sur la source de données désignée par ce popup.

Merci de BV STP éclairer ma lanterne sur ce point. Je serais heureux de connaitre la solution car cela pourrait me faciliter la vie sur certains points que j'avais écartés jusqu'à présent.

Cordialement

oracle7😉

Je parlais du fait d'avoir un même tableau de bord pour plusieurs NAS.

Avec une variable de type Datasource qui permet de passer facilement d'un NAS à l'autre (mais cela implique que chaque NAS a sa datasource). Pour ce que tu dis je ne crois pas non plus qu'il soit possible d'afficher dans un même panneau des données de sources différentes.

Lien vers le commentaire
Partager sur d’autres sites

Le 03/02/2021 à 23:54, .Shad. a dit :

Oui avec une autre carte SD aucun risque. 👌

Fais-toi plaisir. 

Bon j'ai suivi ton conseil. En résumé j'ai installé HypriotOS sur mon RaspberryPi de première génération avec une autre carte SD. Je peux donc revenir en arrière sans pb 😉

J'ai réussi à avoir le contrôle du root après pas mal de manip. et j'ai installé portainer-agent et un exemple de container donné par Hypriot. Par contre pas moyen de faire fonctionner des containers créés par docker-compose.

J'ai essayé le monitoring du Rasberry de ce tuto et une installation de pihole. Rien ne fonctionne. 

Logs du container telegraf du RPi : no logs available. Le container est "running"

Logs du container influxDB du Nas

Capture.thumb.JPG.9ed451b70ec8bff0bdd161240db966a9.JPG

 

Peux-tu me donner qq tuyaux pour voir où ça pêche ?

Modifié par Jeff777
Lien vers le commentaire
Partager sur d’autres sites

@Jeff777 bonjour,

pour le log du container telegraf du RPi, as-tu positionné les variables correspondantes dans le fichier de configuration de telegraf ?

## Log at debug level.
  debug = true
  ## Log only error level messages.
  quiet = false

  ## Log target controls the destination for logs and can be one of "file",
  ## "stderr" or, on Windows, "eventlog".  When set to "file", the output file
  ## is determined by the "logfile" setting.
 logtarget = "file"

  ## Name of the file to be logged to when using the "file" logtarget.  If set to
  ## the empty string then logs are written to stderr.
 logfile = ""

 

Lien vers le commentaire
Partager sur d’autres sites

@Jeff777,

As-tu essayé de te connecter sur le docker influxdb et vérifié ce qui est populé dans la base "raspi_telegraf" ?

On voit à la fois des données telegraf arriver (semble t'il) , et des requetes Grafana. Donc en toute logique ..... Soit la requete grafana n'est pas bonne, soit les données ne sont pas celles attendues => d'où l'idée de vérifier sur influxdb ce qui est réellement enregistré dans la db.

Tous mes docker telegraf, influxdb, grafana sont en mode bridge, sans pb, certains colocalisés sur la meme machine, d'autres distants .

Lien vers le commentaire
Partager sur d’autres sites

il y a 16 minutes, bruno78 a dit :

vérifié ce qui est populé dans la base "raspi_telegraf"

Euh ...comment fait-on ?

Sinon si je regarde les networks du NAS j'ai ceci :

Capture.thumb.JPG.f794626915ce6d1393bc78742320968c.JPG

et pour le RPi j'ai ça :

Capture1.thumb.JPG.34eeb279d6b5f61378349af53de393b0.JPG

aucun conteneur d'affiché ! C'est normal ?

 

Lien vers le commentaire
Partager sur d’autres sites

@Jeff777

  • pour Portainer, je ne pratique pas, donc attendre l'avis de @.Shad.
  • pour se connecter sur influxdb : (remplacer les user/mot de passe par les bons !!)
    • se connecter sur le container : docker exec -it influxdb /bin/bash
    • se logger sur influxdb : influxdb -username <admin> -password <"admin">
    • lister les databases : > show databases
    • se connecter sur une database particulière : > use <database_name>
    • lister les "measurements" présents : > show measurements
    • puis tu peux lister une table : > select * from <measurement_name>
root@influxdb:/# influx -username admin -password "admin"
Connected to http://localhost:8086 version 1.8.4
InfluxDB shell version: 1.8.4
> show databases
name: databases
name
----
nas_telegraf_vps
_internal
pi_telegraf
ovh_vps_telegraf
fbx_telegraf_v8
sl_stats
nas_telegraf
sl_ip_stats
nas_speedtest
pi4_telegraf

> use pi4_telegraf
Using database pi4_telegraf

> show measurements
name: measurements
name
----
cpu
disk
diskio
docker
docker_container_blkio
docker_container_cpu
docker_container_health
docker_container_mem
docker_container_net
docker_container_status
ifTable
ipNetToMediaTable
kernel
mem
net
processes
rpi4B_model
rpi4B_temp
snmp.rpi4
storageTable
swap
system
tcpConnTable
>
  • et pour finir tu peux lister par exemple un measurement : > select * from <measurement_name>  .... mais ca peut être volumineux ...
Lien vers le commentaire
Partager sur d’autres sites

Bon sans surprise j'ai ceci :

root@monnas:~# docker exec -it influxdb bash
root@influxdb:/#  influx -username <admin> -password <"admin">
bash: syntax error near unexpected token `newline'
root@influxdb:/# influx -username admin -password "admin"
Connected to http://localhost:8086 version 1.8.4
InfluxDB shell version: 1.8.4
> show databases
name: databases
name
----
telegraf
_internal
raspi_telegraf
> use raspi_telegraf
Using database raspi_telegraf
> show measurements
>

Rien du tout.

Je me pose une question concernant le fichier telegraf.conf. J'ai eu le même problème que précédemment : lorsque j'ai voulu l'obtenir j'ai eu un fichier vide. J'ai donc pris le fichier telegraf.conf.sample que j'ai modifié comme indiqué dans le tuto partie raspberry pour la partie output plugin . Mais je n'ai rien touché de la partie input plugin ce qui me surprend un peu ! J'ai manqué quelque chose ?
 

Lien vers le commentaire
Partager sur d’autres sites

@Jeff777

pour le PI, tu peux déjà prendre ça dans les input plugins


###############################################################################
#                            INPUT PLUGINS                                    #
###############################################################################


# Read metrics about cpu usage
[[inputs.cpu]]
  ## Whether to report per-cpu stats or not
  percpu = true
  ## Whether to report total system cpu stats or not
  totalcpu = true
  ## If true, collect raw CPU time metrics.
  collect_cpu_time = false
  ## If true, compute and report the sum of all non-idle CPU states.
  report_active = false

# Read metrics about disk usage by mount point
[[inputs.disk]]
  ## By default stats will be gathered for all mount points.
  ## Set mount_points will restrict the stats to only the specified mount points.
  # mount_points = ["/"]

  ## Ignore mount points by filesystem type.
#  ignore_fs = ["tmpfs", "devtmpfs", "devfs", "iso9660", "overlay", "aufs", "squashfs"]


# Read metrics about disk IO by device
[[inputs.diskio]]
  ## By default, telegraf will gather stats for all devices including
  ## disk partitions.
  ## Setting devices will restrict the stats to the specified devices.
  # devices = ["sda", "sdb", "vd*"]
  ## Uncomment the following line if you need disk serial numbers.
  # skip_serial_number = false
  #
  ## On systems which support it, device metadata can be added in the form of
  ## tags.
  ## Currently only Linux is supported via udev properties. You can view
  ## available properties for a device by running:
  ## 'udevadm info -q property -n /dev/sda'
  ## Note: Most, but not all, udev properties can be accessed this way. Properties
  ## that are currently inaccessible include DEVTYPE, DEVNAME, and DEVPATH.
  # device_tags = ["ID_FS_TYPE", "ID_FS_USAGE"]
  #
  ## Using the same metadata source as device_tags, you can also customize the
  ## name of the device via templates.
  ## The 'name_templates' parameter is a list of templates to try and apply to
  ## the device. The template may contain variables in the form of '$PROPERTY' or
  ## '${PROPERTY}'. The first template which does not contain any variables not
  ## present for the device is used as the device name tag.
  ## The typical use case is for LVM volumes, to get the VG/LV name instead of
  ## the near-meaningless DM-0 name.
  # name_templates = ["$ID_FS_LABEL","$DM_VG_NAME/$DM_LV_NAME"]

# Get kernel statistics from /proc/stat
[[inputs.kernel]]
  # no configuration

# Read metrics about memory usage
[[inputs.mem]]
  # no configuration

# Get the number of processes and group them by status
[[inputs.processes]]
  # no configuration

# Read metrics about swap memory usage
[[inputs.swap]]
  # no configuration

# Read metrics about system load & uptime
[[inputs.system]]
  ## Uncomment to remove deprecated metrics.
  # fielddrop = ["uptime_format"]

 

Lien vers le commentaire
Partager sur d’autres sites

J'ai exactement la même chose sauf pour cette ligne qui est décommentée :

#  ignore_fs = ["tmpfs", "devtmpfs", "devfs", "iso9660", "overlay", "aufs", "squashfs"]

A tout hasard je l'ai commentée mais pas de changement 😟

 

 

Lien vers le commentaire
Partager sur d’autres sites

il y a une heure, Jeff777 a dit :

root@monnas:~# docker exec -it influxdb bash
root@influxdb:/#  influx -username <admin> -password <"admin">

Juste comme ça, il y a moyen de combiner ces deux commandes en une seule 😉 (Merci à @oracle7) :

docker exec -it influxdb influx -username admin -password admin

Je ne connaissais pas la commande show measurements, c'est pratique pour voir ce qu'elle a dans le vente la BDD ^^

Lien vers le commentaire
Partager sur d’autres sites

@Jeff777

Il y a 7 heures, Jeff777 a dit :

Par contre pas moyen de faire fonctionner des containers créés par docker-compose.

J'ai essayé le monitoring du Rasberry de ce tuto et une installation de pihole. Rien ne fonctionne. 

J'ai pas bien compris ce que tu voulais dire par là. Ca te dit quoi quand tu essaies de créer les conteneurs par docker-compose ? tu les as créé comment du coup, en lignes de commande ?

Telegraf doit te renvoyer des logs normalement avec debug à true et quiet à false, décommentés évidemment.

Lien vers le commentaire
Partager sur d’autres sites

il y a 8 minutes, MilesTEG1 a dit :

Pour ta dernière question, oui c'est normal de ne pas voir ici les conteneurs, car là c'est la partie Networks !

oui je me suis mal exprimé. Ce que je voulais dire c'est qu'il y a des networks qui ne sont pas marqués système pour le nas et pas pour le raspberry. Mais ce doit être parce-que que je n'ai pas créer de réseaux spécifiques.

 

il y a 21 minutes, .Shad. a dit :

tu les as créé comment du coup, en lignes de commande ?

oui avec "docker-compose up -d". J'ai suivi le tuto pour le monitoring raspberry et un autre tuto sur le net pour pihole en docker-compose.

 

il y a 48 minutes, .Shad. a dit :

Telegraf doit te renvoyer des logs normalement avec debug à true et quiet à false, décommentés évidemment.

J'ai bien suivi ce que m'a dit @bruno78 et pourtant pas de logs !

il y a une heure, .Shad. a dit :

J'ai pas bien compris ce que tu voulais dire par là. Ca te dit quoi quand tu essaies de créer les conteneurs par docker-compose ? 

ça me dit :

Capture.JPG.890884e52b81d11b97ab034e4d184896.JPG

 

Lien vers le commentaire
Partager sur d’autres sites

il y a une heure, Jeff777 a dit :

oui avec "docker-compose up -d". J'ai suivi le tuto pour le monitoring raspberry et un autre tuto sur le net pour pihole en docker-compose.

Donc ça veut dire que docker-compose fonctionne, en ligne de commande c'est quand tu écris docker run ou docker create, ce n'est pas du tout la même chose.

Est-ce que le conteneur hello-world fonctionne ?

Tu écris juste en SSH :

docker run hello-world

 

Lien vers le commentaire
Partager sur d’autres sites

Je n'ai pas l'impression :

Capture.JPG.d2acd21c50dfa5fe0cacdd55f775f334.JPG

Mais peut-être qu'il faut des images spécifiques pour HypriotOS non?.

J'ai fait marcher sans problème deux petites appli données sur le site Hypriot

EDIT:

Capture.thumb.JPG.6da7e9a2a04b6e8070461015cb991b3a.JPG

Si je démarre le container il s'arrête à nouveau au bout de qq seconde.

Je vais creuser un peu sur le site d'Hypriot.

Merci de votre aide je vous tiens au courant.

 

 

 

Modifié par Jeff777
Lien vers le commentaire
Partager sur d’autres sites

Bonjour @.Shad.

Comme je n'arrivais pas a installer pihole ou le monitoring par docker j'ai installé pihole sans passer par docker. C'est déjà ça.

Sinon oui ça fonctionne avec la bonne image :

Capture.JPG.a66627697265acaef0100b013870ef23.JPG

Il ne me reste plus qu'à trouver la bonne image pour telegraf. Si elle existe !

Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.