Grafana is an open-source platform that allows you to visualize and analyze data. It is widely used for monitoring and visualizing data from a variety of sources like databases, cloud services, and infrastructure metrics. In this guide, we’ll walk you through the steps to install Grafana on a DigitalOcean droplet.
Prerequisites
Before you start, make sure you have the following:
- A DigitalOcean droplet with a Linux distribution (Ubuntu is recommended).
- SSH access to your droplet.
- A sudo or root user for installation.
Step 1: Update Your Droplet
First, ensure your droplet is up to date. Open your terminal and log in to your droplet using SSH.
ssh root@your_droplet_ip
Once logged in, run the following commands to update your package list and install updates:
sudo apt update && sudo apt upgrade -y
This will ensure that your droplet is running the latest software.
Step 2: Install Grafana
Grafana provides official packages for Ubuntu. To install Grafana, follow these steps:
2.1 Add the Grafana APT repository:
First, add the Grafana APT repository and the GPG key to authenticate the package:
sudo apt install -y software-properties-common
sudo add-apt-repository "deb https://packages.grafana.com/oss/deb stable main"
sudo apt install -y apt-transport-https
curl https://packages.grafana.com/gpg.key | sudo apt-key add -
2.2 Update the package list:
After adding the repository, update the APT package list:
sudo apt update
2.3 Install Grafana:
Now, install Grafana using the following command:
sudo apt install grafana
This will install the latest version of Grafana on your DigitalOcean droplet.
Step 3: Start and Enable Grafana
Once Grafana is installed, you need to start the Grafana service and enable it to start automatically at boot:
3.1 Start the Grafana service:
sudo systemctl start grafana-server
3.2 Enable Grafana to start on boot:
sudo systemctl enable grafana-server
To confirm Grafana is running, you can check its status:
sudo systemctl status grafana-server
You should see output indicating that the service is active and running.
Allow Traffic on Port 3000 (Grafana)
sudo ufw allow 3000
sudo ufw reload
Step 4: Open Grafana Web Interface
By default, Grafana runs on port 3000. To access the Grafana web interface, open a web browser and navigate to:
http://your_droplet_ip:3000
You should see the Grafana login page. The default login credentials are:
- Username:
admin
- Password:
admin
After logging in, Grafana will prompt you to change the password. Choose a strong password and save it.
Step 5: Configure Grafana
Now that Grafana is installed and running, you can start adding data sources (such as Prometheus, InfluxDB, or MySQL), creating dashboards, and visualizing your data. The Grafana interface allows you to add various data sources, build queries, and create interactive dashboards.
Step 6: Secure Your Grafana Instance (Optional)
Grafana by default runs without any security measures. It’s highly recommended to secure it for production use. One common approach is to use a reverse proxy with Nginx and set up SSL for secure communication.
6.1 Install Nginx
If Nginx is not already installed on your droplet, you can install it by running:
sudo apt install nginx
6.2 Configure Nginx as a reverse proxy:
Create a new Nginx configuration file for Grafana:
sudo nano /etc/nginx/sites-available/grafana
Add the following configuration:
server {
listen 80;
server_name {your_domain_or_ip};
location / {
proxy_pass http://localhost:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
6.3 Enable the Nginx configuration:
Create a symlink to enable the site:
sudo ln -s /etc/nginx/sites-available/grafana /etc/nginx/sites-enabled/
6.4 Restart Nginx:
sudo systemctl restart nginx
Restart Nginx to apply the changes. You can now access Grafana securely via your domain or public IP.
Step 7: (Optional) Set Up SSL with Let’s Encrypt
To set up SSL using Let’s Encrypt, you can use Certbot, a tool that automates the process of obtaining and renewing SSL certificates.
7.1 Install Certbot:
sudo apt install certbot python3-certbot-nginx
7.2 Obtain an SSL certificate:
Run the following command to obtain a certificate and configure Nginx automatically:
sudo certbot --nginx -d your_domain
7.3 Verify the SSL certificate:
After the SSL certificate is successfully installed, you can visit your domain and verify the secure HTTPS connection.
Conclusion
Congratulations! You’ve successfully installed Grafana on your DigitalOcean droplet. Now, you can begin monitoring and visualizing your data in a sleek, interactive dashboard.