Skip to content

Latest commit

 

History

History
64 lines (34 loc) · 2.5 KB

README.md

File metadata and controls

64 lines (34 loc) · 2.5 KB

Azure.Grafana

About

Azure ARM template project to deploy a Grafana container on Azure AppServices, a MySQL Database, and secured using Firewall rules, Frontdoor and Web Application Firewall.

Build Status

Deploy to Azure

Architecture

Architecture diagram

Contribution are greatly welcomed :)

Backlog

  • Implement template with Grafana container and MySQL

  • Secure MySQL connection with SSL and Firewall rules

  • Deploy Frontdoor with WAF prevention policies tailored for Grafana

  • Secure AppService to accept traffic only from Frontdoor

  • Add Azure AD Authentication

  • Secure AppService to accept traffic only from Frontdoor specific instance

  • Add Diagnostic logs to Frontdoor, AppServices and MySQL

Getting strated

Prerequisites

  1. Create the AppRegistration for AAD authentication
//replace the variables with your current values
$FrontdoorRootUrl = "https://my-grafana-frontdoor.azurefd.net"
$MyAppRegistrationSecret = "1234567890@Grafana!"
$OAuthReplyUrl = "$FrontdoorRootUrl/login/generic_oauth"

az ad app create --display-name $FrontdoorRootUrl --identifier-uris $FrontdoorRootUrl --required-resource-accesses ./manifest.json --reply-urls $OAuthReplyUrl --password $MyAppRegistrationSecret
  1. Edit the parameter file

Deploy the solution

New-AzResourceGroupDeployment -ResourceGroupName "Grafana" -TemplateFile "azuredeploy.json" -TemplateParameterFile "azuredeploy.parameters.json"

Contributions

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.