[{"data":1,"prerenderedAt":121},["ShallowReactive",2],{"seo-verification":3,"blog-monitoring-vps-grafana-prometheus-en":6},{"google":4,"bing":5},"EycwPY2XMyTkVzas3n1ygeNJFGAH513qrMjfDljzsMQ","",{"id":7,"slug":8,"title":9,"excerpt":10,"readTime":11,"views":12,"isPinned":13,"publishedAt":14,"category":15,"categories":21,"featuredImage":23,"bgImage":24,"posterImage":25,"relatedSolution":26,"intro":29,"sections":30,"ctaTitle":76,"ctaBody":77,"ctaButton":78,"ctaUrl":79,"relatedPosts":80},106,"monitoring-vps-grafana-prometheus","VPS Monitoring with Grafana and Prometheus","Set up a Grafana + Prometheus stack on your VPS to collect, store and visualize your system and application metrics.",9,522,false,"2026-03-06T00:00:00+00:00",{"id":16,"name":17,"slug":18,"color":19,"icon":20},8,"Security & Monitoring","securite-monitoring","bg-rose-500\u002F10 text-rose-400","security",[22],{"id":16,"name":17,"slug":18,"color":19,"icon":20},null,"\u002Fblog\u002Fcovers\u002Fbg.svg","\u002Fblog\u002Fcovers\u002Fmonitoring-vps-grafana-prometheus-poster.svg",{"categorySlug":27,"appSlug":28},"securite","grafana","When you want historical metrics, custom dashboards and fine-grained alerting, the Prometheus + Grafana duo is the open source reference. Prometheus collects and stores time series, Grafana visualizes them. Here's how to deploy this monitoring stack on your own VPS.",[31,35,45,48,70,73],{"type":32,"title":33,"body":34},"h2","Why self-host Prometheus and Grafana on a VPS","Unlike an all-in-one tool, the Prometheus + Grafana stack clearly separates collection (Prometheus scrapes the metrics exposed by exporters), storage (time series database) and visualization (Grafana). This modularity is precisely what makes it a standard: you monitor the VPS itself with Node Exporter, your containers with cAdvisor, your PostgreSQL or MySQL database with the dedicated exporter, and you instrument your own applications in the Prometheus format. All of this on a VPS you control, which spares you from sending sensitive infrastructure metrics to a SaaS billed by ingestion. You keep the history for as long as your disk allows, you build dashboards specific to your stack, and you define your own alerting rules via Alertmanager. This is the approach to favor when you go beyond simply 'is the site responding?' to move into fine-grained analysis of load trends.",{"type":36,"title":37,"items":38},"ul","What this stack brings to your VPS",[39,40,41,42,43,44],"Detailed system metrics (CPU, RAM, disk I\u002FO, network) via Node Exporter, kept as history over the long term.","Monitoring of Docker containers with cAdvisor: per-container consumption in real time.","Custom Grafana dashboards, importable from a community library of thousands of templates.","Powerful alerting via Alertmanager: thresholds, grouping, silences and multi-channel routing.","PromQL query language to create derived indicators and rates of change.","Instrumentation of your own applications in the Prometheus format, with no external ingestion cost.",{"type":32,"title":46,"body":47},"Requirements to host it","This stack is more demanding than a simple monitor because Prometheus keeps the time series in memory before writing them to disk. Count on a 2 vCPU VPS with 2 to 4 GB of RAM to monitor one to several servers, and more if you multiply the exporters and the scrape frequency. Storage is the key point: plan for 20 to 40 GB of disk depending on the retention period (`--storage.tsdb.retention.time`). You need Docker and Docker Compose, a domain name to expose Grafana over HTTPS, and a reverse proxy. Keep Prometheus not publicly exposed: only Grafana should be accessible from the outside.",{"type":49,"title":50,"steps":51},"steps","Deploy the Prometheus + Grafana stack with Docker Compose",[52,55,58,61,64,67],{"title":53,"body":54},"Write the docker-compose.yml file","Define three services: `prometheus`, `grafana` and `node-exporter`. Mount a `prometheus.yml` configuration file and named volumes to persist the data (`prometheus_data`, `grafana_data`). Then run `docker compose up -d`.",{"title":56,"body":57},"Configure the targets in prometheus.yml","In the `scrape_configs` section, add a `node` job pointing to `node-exporter:9100` for system metrics, and a `cadvisor` job if you monitor Docker. Reload with `docker compose restart prometheus`.",{"title":59,"body":60},"Connect Grafana to Prometheus","Open Grafana, add a Prometheus-type data source with the URL `http:\u002F\u002Fprometheus:9090` (the Docker service name). Test the connection: it should return 'Data source is working'.",{"title":62,"body":63},"Import ready-to-use dashboards","Import the Node Exporter Full dashboard (ID 1860) and a cAdvisor dashboard via their identifier. You instantly get CPU, memory, disk and network graphs without building anything by hand.",{"title":65,"body":66},"Secure Grafana behind an SSL reverse proxy","Expose only Grafana via Nginx or Caddy on `grafana.mydomain.com` with a Let's Encrypt certificate. Block external access to Prometheus (port 9090) at the firewall level: it should only be reachable by Grafana.",{"title":68,"body":69},"Set up alerting","Add Alertmanager to the Compose file, define rules in Prometheus (for example CPU > 90% for 5 minutes) and route the alerts to email, Slack or Telegram. Verify the triggering with a test rule.",{"type":71,"body":72},"tip","Monitor the disk space consumed by Prometheus's time series database, which grows with the number of metrics and the scrape frequency. Adjust `--storage.tsdb.retention.time` (for example 30 days) and, if you need a long history without saturating the VPS, connect remote storage such as Thanos or VictoriaMetrics. On a VPS, reducing the scrape interval from 15s to 30s for non-critical metrics also halves the volume written to disk.",{"type":71,"title":74,"body":75},"The official documentation","For advanced configuration and options specific to the tool, refer to the \u003Ca href=\"https:\u002F\u002Fgrafana.com\u002Fdocs\" target=\"_blank\" rel=\"noopener noreferrer\">official Grafana documentation\u003C\u002Fa>. This guide covers deployment on a VPS; the vendor's documentation remains the reference for fine-tuning, major updates and specific use cases.","Deploy your observability stack","The ServOrbit Cloud VPS offers the CPU, RAM and SSD needed to run Prometheus, Grafana and their exporters without a bottleneck, with a Docker template ready to configure.","Configure my Cloud VPS","\u002Fvps-cloud",[81,95,108],{"id":82,"slug":83,"title":84,"excerpt":85,"readTime":86,"views":87,"isPinned":13,"publishedAt":88,"category":89,"categories":90,"featuredImage":23,"bgImage":24,"posterImage":92,"relatedSolution":93},105,"superviser-vps-uptime-kuma","Monitoring your VPS with Uptime Kuma","Deploy Uptime Kuma on your VPS to monitor your sites and services self-hosted, with alerts and a public status page.",6,1520,"2026-03-07T00:00:00+00:00",{"id":16,"name":17,"slug":18,"color":19,"icon":20},[91],{"id":16,"name":17,"slug":18,"color":19,"icon":20},"\u002Fblog\u002Fcovers\u002Fsuperviser-vps-uptime-kuma-poster.svg",{"categorySlug":27,"appSlug":94},"uptime-kuma",{"id":96,"slug":97,"title":98,"excerpt":99,"readTime":86,"views":100,"isPinned":13,"publishedAt":101,"category":102,"categories":103,"featuredImage":23,"bgImage":24,"posterImage":105,"relatedSolution":106},107,"monitorer-vps-netdata","Monitor your VPS in real time with Netdata","Install Netdata on your VPS for per-second real-time monitoring: thousands of metrics, zero configuration, alerts included.",559,"2026-03-05T00:00:00+00:00",{"id":16,"name":17,"slug":18,"color":19,"icon":20},[104],{"id":16,"name":17,"slug":18,"color":19,"icon":20},"\u002Fblog\u002Fcovers\u002Fmonitorer-vps-netdata-poster.svg",{"categorySlug":27,"appSlug":107},"netdata",{"id":109,"slug":110,"title":111,"excerpt":112,"readTime":16,"views":113,"isPinned":13,"publishedAt":114,"category":115,"categories":116,"featuredImage":23,"bgImage":24,"posterImage":118,"relatedSolution":119},108,"securiser-vps-crowdsec","Securing your VPS with CrowdSec","Deploy CrowdSec on your VPS to block attacks thanks to behavioral detection and a shared community blocklist.",596,"2026-03-04T00:00:00+00:00",{"id":16,"name":17,"slug":18,"color":19,"icon":20},[117],{"id":16,"name":17,"slug":18,"color":19,"icon":20},"\u002Fblog\u002Fcovers\u002Fsecuriser-vps-crowdsec-poster.svg",{"categorySlug":27,"appSlug":120},"crowdsec",1785628455304]