> Source: https://meetrix.io/blogs/grafana-developer-guide/
> Markdown copy of that page. Cite the URL above, not this file.

Development

# Grafana - Developer Guide

[By Binuka Ranatunga](https://meetrix.io/blogs/authors/binuka-ranatunga/) • August 5, 2025 • 8 min read

Welcome to the Grafana Deployment Guide for AWS Integration! Grafana is the open-source observability and analytics platform built for reliability and performance in high-trust environments. Seamlessly deploy Grafana within your AWS infrastructure to enable real-time dashboards, scalable monitoring, and secure data visualization at enterprise scale.

Empower your DevOps teams with unified metrics, logs, and traces across AWS services. Automate alerting, optimize infrastructure performance, and extend Grafana with powerful plugins, all while maintaining full control over your data.

Let's get started and elevate your cloud monitoring and operational excellence with Grafana on AWS.

## Prerequisites

Prerequisites

Before you get started with the Grafana AMI, ensure you have the following prerequisites:

-   Basic knowledge of AWS services, including EC2 instances and CloudFormation.
-   An active AWS account with appropriate permissions.
-   Enough vCPU limit to create instance. (Follow [this guide](https://meetrix.io/blogs/increase-aws-vcpu-quota/) to ensure this)

## Launching the AMI

### Step 1: Find and Select 'Grafana' AMI

1.  Log in to your AWS Management Console.
2.  Navigate to the ['Grafana'](https://aws.amazon.com/marketplace/pp/prodview-z4xxfx2ldztyq) in AWS Marketplace.

### Step 2: Initial Setup & Configuration

1.  Click the **"Continue to Subscribe"** button.
2.  After subscribing, you will need to accept the terms and conditions. Click on **"Accept Terms"** to proceed.
3.  Please wait for a few minutes while the processing takes place. Once it's completed, click on **"Continue to Configuration"**.
4.  Select the **"CloudFormation script to deploy Grafana"** as the fulfilment option and choose your preferred region on the "Configure this software" page. Afterward, click the **"Continue to Launch"** button.
5.  From the "Choose Action" dropdown menu in "Launch this software" page, select **"Launch CloudFormation"** and click **"Launch"** button.

## Create CloudFormation Stack

### Step 1: Create stack

1.  Ensure the **"Template is ready"** radio button is selected under "Prepare template".
2.  Click "Next".

### Step 2: Specify stack options

| Parameter | Description |
| --- | --- |
| Stack name | Provide a unique name for your CloudFormation stack. |
| Admin Email | Provide the Admin Email for SSL generation. |
| DeploymentName | Enter a name of your choice. |
| DomainName | Provide a public domain name. Grafana will automatically try to setup SSL based on the provided domain name, if that domain is hosted on Route53. Please make sure your domain name is hosted on Route53. If unsuccessful, you will need to setup SSL manually. |
| InstanceType | Choose an instance type. Recommended: `t3.small`. |
| KeyName | Select your preferred key pair. |
| SSHLocation | Set as `0.0.0.0/0`. |
| SubnetCidrBlock | Keep as `10.0.0.0/24`. |
| VpcCidrBlock | Keep as `10.0.0.0/16`. |

Click "Next".

### Step 3: Configure stack options

1.  Choose "Roll back all stack resources" and "Delete all newly created resources" under the "Stack failure options" section.
2.  Click "Next".

### Step 4: Review

1.  Review and verify the details you've entered.

![Stack Review and Submission](https://meetrix.io/blog-images/paas-dev-guides/grafana/grafana-01.png)

2.  Tick the box that says, **"I acknowledge that AWS CloudFormation might create IAM resources with custom names"**.

![Stack Review and Submission](https://meetrix.io/blog-images/paas-dev-guides/grafana/grafana-02.png)

3.  Click **"Submit"**.

Afterward, you'll be directed to the CloudFormation stacks page.

Please wait for 5-10 minutes until the stack has been successfully created.

![CloudFormation Stack Creation Progress](https://meetrix.io/blog-images/paas-dev-guides/grafana/grafana-03.png)

## Update DNS

### Step 1: Copy IP Address

Copy the public IP labeled **"PublicIp"** in the **"Outputs"** tab.

![CloudFormation Outputs - Public IP](https://meetrix.io/blog-images/paas-dev-guides/grafana/grafana-04.png)

### Step 2: Update DNS

1.  Go to AWS Route 53 and navigate to "Hosted Zones".
2.  From there, click on Create record.
![Stack Review and Submission](https://meetrix.io/blog-images/paas-dev-guides/grafana/grafana-05.png)4.  Add the record name and then paste the copied **"PublicIp"** into the **"value"** textbox.
5.  Click "Save".

## Access Grafana

You can set up the Grafana application through the "DashboardUrl" or "DashboardUrlIp" provided in the "Outputs" tab. This will allow you to create an Admin account, and all future accounts will be created through the Admin panel.

![Stack Review and Submission](https://meetrix.io/blog-images/paas-dev-guides/grafana/grafana-06.png)

502 Bad Gateway Error?

If you encounter a "502 Bad Gateway error", please wait for about 5 minutes before refreshing the page.

![Grafana Login Page](https://meetrix.io/blog-images/paas-dev-guides/grafana/grafana-07.png)

Log in with the default credentials (admin / admin) to begin your Grafana setup.

On your first login, Grafana will automatically prompt you to set a new, strong Administrator password. This is a mandatory step to secure your deployment.

The Administrator Account you create will have full access to manage the entire workspace - this includes inviting team members, configuring system settings, and maintaining access control.

Be sure to choose a strong password and store your credentials securely, as they are essential for future access and team management.

![Grafana Dashboard Overview](https://meetrix.io/blog-images/paas-dev-guides/grafana/grafana-08.png)

## Generate SSL Manually

Grafana will automatically try to setup SSL based on provided domain name, if that domain is hosted on Route53. If its unsuccessful then you have to setup SSL manually.

### Step 1: Copy IP Address

Proceed with the instructions outlined in the above "Update DNS" section, if you have not already done so.

Copy the Public IP address indicated as **"PublicIp"** in the **"Outputs"** tab.

![Stack Review and Submission](https://meetrix.io/blog-images/paas-dev-guides/grafana/grafana-09.png)

### Step 2: Log in to the server

1.  Open the terminal and go to the directory where your private key is located.
2.  Paste the following command into your terminal and press Enter:

```plaintext
ssh -i <your key name> ubuntu@<Public IP address>
```

![Stack Review and Submission](https://meetrix.io/blog-images/paas-dev-guides/grafana/grafana-10.png)

3.  Type "yes" and press Enter. This will log you into the server.

### Step 3: Generate SSL

Paste the following command into your terminal and press Enter, and follow the instructions

```bash
sudo /root/certificate_generate_standalone.sh
```

Admin Email is acquiring for generate SSL certificates.

## Check Server Logs

### Step 1: Log in to the server

1.  Open the terminal and go to the directory where your private key is located.
2.  Paste the following command into your terminal and press Enter:

```bash
ssh -i <your key name> ubuntu@<Public IP address>
```

![Stack Review and Submission](https://meetrix.io/blog-images/paas-dev-guides/grafana/grafana-11.png)

3.  Type "yes" and press Enter. This will log you into the server.

### Step 2: Check the logs

```bash
sudo tail -f /var/log/grafana/grafana.log
```

![Grafana Server Logs](https://meetrix.io/blog-images/paas-dev-guides/grafana/grafana-12.png)

## Shutting Down Grafana

1.  Click the link labeled **"Instance"** in the **"Resources"** tab to access the EC2 instance, you will be directed to the Grafana instance in EC2.
![EC2 Instance Management](https://meetrix.io/blog-images/paas-dev-guides/grafana/grafana-13.png)3.  Select the grafana instance by marking the checkbox and click **"Stop instance"** from the **"Instance state"** dropdown. You can restart the instance at your convenience by selecting **"Start instance"**.
![EC2 Instance Management](https://meetrix.io/blog-images/paas-dev-guides/grafana/grafana-14.png)

## Remove Grafana

Delete the stack that has been created in the AWS Management Console under 'CloudFormation Stacks' by clicking the 'Delete' button.

## Upgrades

When there is an upgrade, we will update the product with a newer version. You can check the product version in AWS Marketplace. If a newer version is available, you can remove the previous version and launch the product again using the newer version. Remember to backup the necessary server data before removing.

## Troubleshoot

### 1\. vCPU Quota Error

If you face the following error, please follow [https://meetrix.io/blogs/increase-aws-vcpu-quota/](https://meetrix.io/blogs/increase-aws-vcpu-quota/) blog to increase vCPU quota.

![EC2 Instance Management](https://meetrix.io/blog-images/paas-dev-guides/grafana/grafana-15.png)

### 2\. Insufficient Capacity Error

If you face the following error (do not have sufficient <instance\_type> capacity...) while creating the stack, try changing the region or try creating the stack at a later time.

![EC2 Instance Management](https://meetrix.io/blog-images/paas-dev-guides/grafana/grafana-16.png)

### 3\. API Dashboard Access Error

If you face the below error, when you try to access the API dashboard, please wait 5-10 minutes and then try.

![EC2 Instance Management](https://meetrix.io/blog-images/paas-dev-guides/grafana/grafana-17.png)

### 4\. Storage Full Error

Check whether the instance storage is full.

Log into the server and run the below command

```bash
df -h
```

![Disk Usage Check](https://meetrix.io/blog-images/paas-dev-guides/grafana/grafana-18.png)

If the root volume is between 90-100%, it is better to resize EBS volume. Please follow AWS documentation to increase the EBS volume.

Then reboot the instance and restart the Grafana service.

## Conclusion

The Meetrix Grafana Deployment Guide is your go-to resource for seamlessly integrating Grafana into your AWS environment. Whether you're a DevOps engineer, system administrator, or IT leader, our guide provides clear, step-by-step instructions to ensure a secure, scalable, and production-ready setup.

Grafana is a powerful open-source observability platform built for high-trust environments, empowering teams with real-time monitoring, alerting, automation, and flexible data source integrations.

With the Meetrix Grafana Deployment Guide, you'll unlock the full potential of Grafana, enabling your organization to build efficient, secure, and self-hosted dashboards and monitoring systems that scale with your infrastructure.

## Technical Support

Reach out to Meetrix Support ([aws@meetrix.io](mailto:aws@meetrix.io)) for assistance with Grafana issues.

## Frequently Asked Questions

Can I connect Grafana to external data sources like Prometheus or CloudWatch?

Yes. Grafana supports a wide range of data sources including Prometheus, CloudWatch, InfluxDB, Loki, and many more. You can configure them from the Data Sources section in the Grafana admin panel.

What are the default login credentials?

The default credentials are admin / admin. On first login, Grafana will prompt you to set a new strong password. Make sure to update it immediately to secure your deployment.

How do I upgrade to a newer version of Grafana?

When a newer AMI version is published, you can check the product version in AWS Marketplace. If a newer version is available, remove the previous deployment and launch the product again using the newer version. Always back up your server data before removing.

Is Meetrix support included?

Yes. Reach out to Meetrix Support at aws@meetrix.io for assistance with Grafana deployment, configuration, and troubleshooting.

## Ready to Launch Your Own Grafana Instance?

Get started in minutes with our pre-configured AMI and take full control of your monitoring and observability stack.

[Deploy Grafana from AWS Marketplace](https://aws.amazon.com/marketplace/pp/prodview-z4xxfx2ldztyq)

Meetrix Store

Grafana

Dashboards and alerts for Prometheus and more

[Deploy it](https://meetrix.io/store/grafana/)

Meetrix Store New

Deploy what this guide covers, pre-configured.

-    [Grafana Dashboards and alerts for Prometheus and more](https://meetrix.io/store/grafana/)
-    [Metabase Dashboards your team can build without SQL](https://meetrix.io/store/metabase/)
-    [PostgreSQL A Postgres server with backups to Amazon S3](https://meetrix.io/store/postgresql/)
-    [Jitsi Meet Self-hosted video calls for 50 to 500 users](https://meetrix.io/store/jitsi-meet/)
-    [RustDesk Remote desktop AMI, a TeamViewer alternative](https://meetrix.io/store/rustdesk/)
-    [Coturn TURN/STUN for WebRTC, no per-minute relay fees](https://meetrix.io/store/coturn/)

[Browse all products](https://meetrix.io/store/)
