Prometheus-grafana » Historique » Révision 15
Révision 14 (pizzacoca, 07/03/2020 10:00) → Révision 15/17 (pizzacoca, 07/03/2020 10:01)
# Prometheus-grafana **[Prometheus](https://prometheus.io/)** est sous licence **[Apache 2](https://www.apache.org/licenses/LICENSE-2.0)** . Les sources sont disponibles sous **[github](https://github.com/prometheus)** . Prometheus existe aussi sous la forme de paquets pour debian10, ce que nous allons utiliser. > Prometheus est une supervision client / serveur. > Le serveur est consultable sous localhost:9093 > Les clients produisent une page localhost:9100 que le serveur écoute ## Installation de Prometheus ### Installation coté serveur ### Configuration La configuration se fait via un fichier yaml. Ici un exemple. **/etc/prometheus/prometheus.yml** ``` # Sample config for Prometheus. global: scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute. evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute. # scrape_timeout is set to the global default (10s). # Attach these labels to any time series or alerts when communicating with # external systems (federation, remote storage, Alertmanager). external_labels: monitor: 'example' # Alertmanager configuration alerting: alertmanagers: - static_configs: - targets: ['localhost:9093'] # Load rules once and periodically evaluate them according to the global 'evaluation_interval'. rule_files: # - "first_rules.yml" # - "second_rules.yml" # A scrape configuration containing exactly one endpoint to scrape: # Here it's Prometheus itself. scrape_configs: # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config. - job_name: 'prometheus' # Override the global default and scrape targets from this job every 5 seconds. scrape_interval: 5s scrape_timeout: 5s # metrics_path defaults to '/metrics' # scheme defaults to 'http'. static_configs: - targets: ['localhost:9090'] - job_name: noeud_machines_virtuelles static_configs: - targets: - 'domaine.associe.ou.adresse.ip:9100' - 'XXX.XXX.XXX.XXX:9100' - job_name: noeud__machines_maison # If prometheus-node-exporter is installed, grab stats about the local # machine by default. static_configs: # première syntaxe yaml #- targets: ['localhost:9100'] # deuxième syntaxe yaml - targets: - 'localhost:9100' # la machine qui s'écoute - 'XXX.XXX.XXX.XXX:9100' - 'YYY.YYY.YYY.YYY:9100' ``` > Le travail d'écoute du serveur se découpe en nodes. ici noeud_machines_virtuelles et noeud_machines_maison > Une ou plusieurs machines peuvent être dans un node. > La notion de nodes est exploitaée exploitatée dans Grafana. ### Lancement ``` systemctl start grafana-server ``` Ou pour relancer ``` systemctl reload prometheus ``` Par défaut le serveur est consultable sous http://localhost:9090 ### Client Prometheus Ce client est un serveur qui exporte les métriques sous localhost:9100 ``` apt install prometheus-node-exporter ``` # Grafana > Grafana est un outil de rendu graphique des métriques relevées par Prometheus. https://grafana.com/docs/grafana/latest/installation/configuration/ **[Grafana](https://grafana.com/grafana/)** est sous licence **[Apache 2](https://www.apache.org/licenses/LICENSE-2.0)** (en ce qui concerne les sources) disponibles sur **[github](https://github.com/grafana/grafana)** . ## Installation > Si on ne veut pas partir des sources il est nécessaire d'ajouter les dépots grafana **/etc/apt/sources.list** ``` deb https://packages.grafana.com/enterprise/deb stable main ``` Il est nécessaire d'ajouter la clef gpg pour ce dépôt. ``` gpg --receive-key 8C8C34C524098CB6 apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 8C8C34C524098CB6 apt update apt install grafana-enterprise ``` ### Lancement ``` systemctl start grafana-server ``` Le serveur est consultable sous localhost:3000 Celui-ci est paramétré par défault pour aller chercher les métriques sous Prometheus ### Configuration Au travers de l'interface web on peut se construire un tableau de bord ou partir d'un tableau de bord existant : https://grafana.com/grafana/dashboards ![](apercu_grafana.png)