Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Current »

This is an advanced topic for platform engineers.

We use Grafana to monitor infrastructure and applications. You can use AWS's managed services to deploy centralized Prometheus and Grafana instances.

Note for single account deployments: AWS Managed Grafana requires either AWS SSO or a SAML provider to sign in. If you're not using an AWS Organization with SSO enabled, you'll need a SAML provider to continue.

AWS Managed Prometheus

Flightdeck can forward time series data from its federated Prometheus instance to an AWS Managed Prometheus instance for long-term storage. This instance can also be used as a data source for AWS Managed Grafana.

Create a root module for your Prometheus workspace:

infra/
  monitoring/
    prometheus-workspace/

Apply prometheus-workspace module from Flightdeck in the Operations account.

Update your production workload platform configuration to use the Prometheus workspace:

module "workload_platform" {
  # Match the value from the monitoring/prmetheus-workspace module
  prometheus_workspace_name = "flightdeck"

  # Use the account ID for the Operations account
  monitoring_account_id = "123456789012"
}

Apply the workload platform module to start writing to the Prometheus workspace.

AWS Managed Grafana

AWS provides managed Grafana instances, but there is currently no support for deploying Grafana using Terraform or Cloudformation, so you need to create the workspace through the AWS Console.

Creating the Workspace

In the Operations account:

  • Create a workspace named "Flightdeck'.

  • Enable SSO or SAML.

  • Use service-managed permissions.

  • Enable Managed Service for Prometheus and CloudWatch.

  • Enable Amazon SNS.

  • Set yourself as an admin of the workspace.

  • Add an SSO group to the workspace.

Setting up Dashboards

  • From the Grafana workspace in the AWS Management Console, sign into the managed Grafana instance.

  • Under Settings, select API Keys.

  • Create a new Admin API key named "Terraform" that expires after 30 days.

  • Copy the API key.

Once these modules are applied, the platform is fully deployed and you can proceed to build CI/CD pipelines.

  • No labels