- Grafana OSS
- APT repository
- NGINX
- systemd
Grafana VPS HostingDashboards and alerts on your own server
Grafana turns metrics, logs and databases into dashboards your team reads. We install Grafana from its official APT repository on a hardened KVM VPS, with NGINX and free SSL in front, so your dashboards live on a server you control.
- KVM virtualisation
- NVMe storage
- Root SSH access
- Free one-time setup
- 99.9% uptime SLA
$systemctl list-units --type=service --state=active
- grafana-serverdashboards on localhost:3000
- nginxHTTPS reverse proxy
- postgresqloptional database for Grafana
- ufwfirewall: 22, 80, 443
- fail2banSSH brute-force guard
- unattended-upgradessecurity updates
Installed and secured before handover.
Why Self-Host Grafana on a VPS
Hosted dashboards charge by seat and by data. Grafana OSS on your own server has no per-user fee.
Open source, no seat fees
Grafana OSS is free to run; add as many viewers as the server can serve.
Near your data
Run it next to Prometheus, your databases and your apps.
Dashboards as the team sees fit
Build, share and export dashboards on your own terms.
Alerts that reach you
Alert rules and contact points configured by you.
How a Grafana Server Is Set Up
Grafana as a service, NGINX in front, an optional database behind.
-
Reverse proxy
NGINX
HTTPS on your domain, forwarding to Grafana on port 3000.
-
Application
Grafana OSS (grafana-server)
Installed from the official APT repository; runs as a systemd service.
-
Grafana database
SQLite or PostgreSQL
SQLite is the default; the docs advise against it for production.
-
Data sources
Prometheus, databases, logs
Connected by you after setup.
Engineer's notes
- Grafana's docs list 512 MB of memory and 1 CPU core as the minimum recommended.
- SQLite is the default Grafana database and is not recommended for production; PostgreSQL 12+ and MySQL 8+ are supported.
- The default port is 3000: keep it on localhost and serve HTTPS through NGINX.
- Set a strong admin password straight away and restrict who can sign up.
- 443HTTPS, NGINX
- 80HTTP, redirects to HTTPS
- 22SSH, you only
- 3000Grafana, localhost only
What You Can Run
Server and application dashboards
CPU, memory, disk and request rates in one place.
Prometheus metrics
Run Prometheus on the same VPS or another one.
Database dashboards
Query PostgreSQL or MySQL directly.
Business and product dashboards
Sales, sign-ups and usage from your own data.
Alerts
Notifications by email or chat when a threshold is crossed.
Embedded and shared views
Share dashboards with your team through your own domain.
Which Plan for Your Grafana Server
Grafana needs little; the data stores you run beside it decide the size.
A starting point, not a limit: every plan upgrades in place, keeping your data, IP address and configuration.
Running Grafana on Your Server
The steps below follow Grafana's own Debian and Ubuntu instructions.
-
Add the official repository
Import the key and add the stable repository.
sudo apt-get install -y apt-transport-https wget gnupgsudo mkdir -p /etc/apt/keyringssudo wget -O /etc/apt/keyrings/grafana.asc https://apt.grafana.com/gpg-full.keysudo chmod 644 /etc/apt/keyrings/grafana.asc -
Install Grafana OSS
Add the repository line, then install.
echo "deb [signed-by=/etc/apt/keyrings/grafana.asc] https://apt.grafana.com stable main" | sudo tee -a /etc/apt/sources.list.d/grafana.listsudo apt-get updatesudo apt-get install grafana -
Start it and keep it running
Enable at boot and start the service.
sudo systemctl daemon-reloadsudo systemctl enable grafana-server.servicesudo systemctl start grafana-server -
Check it
The service should be active; the port is 3000 on localhost.
sudo systemctl status grafana-servercurl -I http://127.0.0.1:3000
Example commands: adjust names, paths and versions to your project. Deploying and maintaining your application is yours to do, or ask us for a quote.
Grafana commands you will use every week
Copy, paste, adjust the names. Each one is safe to run as your own user on the server.
Service status
sudo systemctl status grafana-server
Restart after a config change
sudo systemctl restart grafana-server
Follow the log
sudo journalctl -u grafana-server -f
Update Grafana
sudo apt-get update && sudo apt-get install --only-upgrade grafana
Check the listening port
ss -ltnp | grep 3000
Reload NGINX safely
sudo nginx -t && sudo systemctl reload nginx
Hosted Dashboards or Your Own Grafana?
A hosted service removes the server work. Your own Grafana has no seat fees and sits next to your data.
Hosted dashboards
- PricingPer seat and per data volume
- Where dashboards liveThe provider's cloud
- Network distance to dataOver the internet
- Upgrades and backupsHandled by the provider
- Server administrationHandled by the provider
Grafana VPS
- PricingFlat server cost
- Where dashboards liveYour server
- Network distance to dataNext to your services
- Upgrades and backupsYours: updates and extra backups
- Server administrationYours, after our free setup
Your Grafana server
Free one-time setup before you get access. Here is what happens, and what you receive.
Pick a plan and a location
Resources that fit your workload, in the datacentre closest to your users.
Tell us your Grafana setup
Versions, database and domain: at order or right after.
We install and secure it
Server hardened, the stack installed and tested, HTTPS on your domain.
You get root
SSH to a working server, ready for your code and data.
Installed for you
- Grafana OSS from Grafana's official APT repository, running as a systemd service
- NGINX reverse proxy with HTTPS on your domain
- PostgreSQL for the Grafana database, on request
- Data sources, users and dashboards are set up by you
Secured before handover
- Non-root sudo user created for daily work
- SSH key login, password login for root disabled
- Firewall (UFW) open only for the ports you use
- Fail2ban blocking repeated login attempts
- Automatic security updates enabled
- Free Let's Encrypt SSL on your domain
- Timezone, swap and hostname configured
Not included (we say so up front)
- Ongoing server administration
- Application maintenance and updates
- Debugging your code
- Migrating existing sites or data
Security and Performance for Grafana
Security
- Set a strong admin password at once, and turn on sign-in restrictions.
- Keep port 3000 on localhost; serve HTTPS through NGINX.
- Give data-source accounts read-only access.
- Update Grafana regularly: security fixes ship often.
Performance
- Use PostgreSQL instead of SQLite once several people use it.
- Keep dashboard queries and time ranges modest.
- Run heavy data stores on a bigger plan or a separate server.
- Back up the Grafana database as well as the daily VPS backups.
Built from the official documentation
VPS Plans for Grafana
Grafana itself is light: VPS-1 is far above its minimum. Add RAM for Prometheus or a busy PostgreSQL beside it.
VPS-1
Small websites, APIs, bots and development servers.
- 2 vCores
- 4 GB RAM
- 40 GB NVMe
- 500 Mbps
- Full root and SSH access
- Free initial stack installation
- Server hardening and firewall setup
- Daily backup of the previous 24 hours
- Unlimited traffic *
- Anti-DDoS protection
- Dedicated IPv4 and IPv6
- KVM virtualisation
VPS-2
Production apps, WordPress and online stores.
- 4 vCores
- 8 GB RAM
- 75 GB NVMe
- 1 Gbps
- Full root and SSH access
- Free initial stack installation
- Server hardening and firewall setup
- Daily backup of the previous 24 hours
- Unlimited traffic *
- Anti-DDoS protection
- Dedicated IPv4 and IPv6
- KVM virtualisation
VPS-3
Busy stores, SaaS products and several projects.
- 6 vCores
- 12 GB RAM
- 100 GB NVMe
- 2 Gbps
- Full root and SSH access
- Free initial stack installation
- Server hardening and firewall setup
- Daily backup of the previous 24 hours
- Unlimited traffic *
- Anti-DDoS protection
- Dedicated IPv4 and IPv6
- KVM virtualisation
VPS-4
High-traffic apps, large databases and agencies.
- 8 vCores
- 24 GB RAM
- 200 GB NVMe
- 3 Gbps
- Full root and SSH access
- Free initial stack installation
- Server hardening and firewall setup
- Daily backup of the previous 24 hours
- Unlimited traffic *
- Anti-DDoS protection
- Dedicated IPv4 and IPv6
- KVM virtualisation
* Unlimited traffic in Europe and North America. In Mumbai, Singapore and Sydney a monthly allowance applies (VPS-1 500 GB, VPS-2/VPS-3 1 TB, VPS-4 3 TB), then speed is limited to 10 Mbps until the next month.
Prices exclude 18% GST, which is added to invoices for customers in India.
Platform specs and locations
The same KVM platform on every plan; only CPU, RAM, storage and port speed change.
- Virtualisation
- KVM with reserved vCores and RAM
- Storage
- NVMe SSD on every plan
- Network
- Dedicated IPv4 and IPv6, 500 Mbps to 3 Gbps per plan
- Operating systems
- Ubuntu 26.04, 24.04 and 22.04 LTS · Debian 13, 12 and 11 · AlmaLinux · Rocky Linux · Fedora · FreeBSD
- Access
- Full root over SSH, key-based login
- Backups
- Automatic daily backup of the previous 24 hours; snapshots and longer retention on request
- Protection
- Always-on anti-DDoS mitigation
- Availability
- 99.9% uptime SLA
Asia-Pacific
- Mumbai
- Singapore
- Sydney
Europe
- London
- Limburg
- Roubaix
- Gravelines
- Strasbourg
- Milan
- Warsaw
North America
- Beauharnois
Availability per location changes with demand; we confirm your location before setup. In Mumbai, Singapore and Sydney each plan includes a monthly traffic allowance (VPS-1 500 GB, VPS-2 and VPS-3 1 TB, VPS-4 3 TB); beyond it, speed is limited to 10 Mbps until the next month.
Questions before you deploy
Not covered here? Ask an engineer before you order.
Ready when you are
Run Your Own Grafana
Choose a plan and we hand over Grafana on a hardened server with HTTPS on your domain.