Quick Links

Grafana is an open-source observability platform for creating dashboards that visualize datasets. You can use it to conveniently monitor server statistics such as CPU consumption, network throughput, and uptime.

Graphic showing the Grafana logo

 

Grafana can be self-hosted or accessed as a SaaS solution via the official Grafana Cloud instance. In this article, you'll learn how to set up Grafana Cloud and configure it to show basic metrics from a Linux server. You'll use the official Grafana Agent to collect the data and send it to Grafana.

Getting Started With Grafana Cloud

Begin by signing up for a free Grafana Cloud account. You can add up to 10,000 data metrics using the free plan, as well as up to 50 GB each of stored logs and traces. Your data will be retained for 14 days.

Graphic showing the Grafana logo

Follow the sign up procedure until you reach the welcome screen. You can access it by clicking the Grafana icon in the top-left of the side menu if you end up in a different place.

Adding Your Server as a Data Source

Once you're on the welcome screen, click the blue "Connect data" button to begin setting up your dashboard. You'll arrive on the Integrations and Connections page. These provide pre-built dashboard layouts with officially supported connectors for common data sources. They're the quickest way to get Grafana up and running.

 

Either scroll down or use the searchbar to find the "Linux Server" integration. Click its tile to view the information page. This provides a description of the integration and its usage instructions.

Graphic showing the Grafana logo

 

Change the operating system and system architecture parameters in the "Choose your OS" section to match the machine you'll be monitoring.

Graphic showing the Grafana logo

Next scroll down the page and press the blue "Install integration" button to add the dashboards to your account.

Graphic showing the Grafana logo

Installing Grafana Agent on Your Server

The page will update to display a Grafana Agent installation script. The script downloads the correct Agent binary for the platform you selected and automatically configures authentication with your Grafana Cloud API key.

Graphic showing the Grafana logo

Open a terminal to your server and run the displayed script.

$ sudo ARCH=amd64 GCLOUD_STACK_ID="XXXXX" GCLOUD_API_KEY="XXXXXX" GCLOUD_API_URL="https://integrations-api-eu-west.grafana.net" /bin/sh -c "$(curl -fsSL https://raw.githubusercontent.com/grafana/agent/release/production/grafanacloud-install.sh)"
    

...

Unpacking grafana-agent (0.25.1-1) over (0.25.1-1) ...

Setting up grafana-agent (0.25.1-1) ...

--- Retrieving config and placing in /etc/grafana-agent.yaml

integrations:

node_exporter:

enabled: true

relabel_configs:

- replacement: hostname

target_label: instance

prometheus_remote_write:

- basic_auth:

password: ...

username: ...

url: https://prometheus-prod-01-eu-west-0.grafana.net/api/prom/push

---

--- Enabling and starting grafana-agent.service

Created symlink /etc/systemd/system/multi-user.target.wants/grafana-agent.service → /usr/lib/systemd/system/grafana-agent.service.

Grafana Agent is now running! To check the status of your Agent, run:

sudo systemctl status grafana-agent.service

Grafana Agent is a minimal version of the Prometheus data collector. It runs as a service that periodically scrapes metrics and logs from your machine. Installation is successful if you see the

        Grafana Agent is now running
    

message at the end of the script's output.

Graphic showing the Grafana logo

You can confirm that data is flowing into your Grafana account by pressing the blue "Test integration" button back in the web UI. After the test completes, press the replacement "View dashboards" button to start browsing your server's metrics.

Using the Dashboards

The Linux Server integration is also referred to as Node Exporter as it's based on the Prometheus collector of the same name. It exports metrics from your compute nodes. Your dashboards will be grouped into a folder called "Integration - Linux Node" by default. You can change this name by heading to the folder's Settings tab.

Graphic showing the Grafana logo

Two dashboards are included with the integration. The "Node Exporter / Nodes" dashboard provides an overview of system resource utilization. CPU usage, load average, and memory consumption graphs are shown prominently at the top of the view. You'll find graphs of disk usage and network traffic further down, followed by the contents of your server's system logs.

 

Graphic showing the Grafana logo

The USE Method dashboard variant presents the data from the perspective of the USE observability strategy. USE stands for Utilization, Saturation, and Errors:

  • Utilization is the percentage of time that a particular resource is consumed for, such as current CPU usage.
  • Saturation is the amount of work that resource performs, such as the recent load average.
  • Errors is the number of error events that occur over a particular period.

The USE method dashboard provides side-by-side graphs of utilization and saturation for each hardware resource. System logs are provided as panels at the bottom, allowing detection of reported errors.

Graphic showing the Grafana logo

Dashboards automatically refresh while you're viewing them. You can change the update interval using the dropdown menu in the top-right. It defaults to 30 seconds. This area of the screen also contains controls for adjusting the visible timeframe and switching between display modes. Clicking the screen icon in the top-right activates kiosk mode, ideal when you're using Grafana on a large display in a shared space.

Summary

Grafana Cloud makes it simple to set up advanced server monitoring dashboards using Grafana Agent with the Linux Server integration. It provides pre-built dashboards so you don't need to manually manipulate metrics or set up graphical panels.

The integration is a starting point that's ready to be customized to match your observability needs. You can modify the dashboards by adding new metrics and changing how existing ones are displayed. Click the settings cog icon in the top-right of the dashboard, then press the "Make editable" button to enable the editing controls. This will let you add new panels to your dashboards and change their variables and display options in the settings.