Unboxing Amazon Managed Service for Prometheus (AMP)

Andreas Wittig – 12 Feb 2021

AWS announced Amazon Managed Service for Prometheus (AMP) in December 2020 during re:Invent. Prometheus is a monitoring system as well as a time-series database. Let’s take a first look at the managed service that is currently in public preview.

Unboxing Amazon Managed Service for Prometheus (AMP)

What is Prometheus?

  • Monitoring System designed machine-centric monitoring as well as monitoring of highly dynamic service-oriented architectures.
  • Time Series Database storing data in memory and on local disk in an efficient custom format. Scaling is achieved by functional sharding and federation.
  • Open Source project built initially at SoundCloud. Prometheus is a standalone open-source project and maintained independently of any company which joined the Cloud Native Computing Foundation in 2016.

On AWS, AMP competes with CloudWatch, the built-in, and proprietary monitoring solution.

Key facts

The key facts about AMP in brief:

  • AMP is in public preview and not yet production-ready.
  • AMP is available in five regions and multi-AZ by default.
  • AMP scales ingestion, storage, and querying automatically.
  • AMP does not support pulling data - an essential feature for smooth integration with K8s. Currently, only pushing data is supported.
  • AMP does not support the alerting manager yet.
  • AMP does not allow to upload metric samples older than 1 hour and deletes data after 150 days.
  • AMP comes with encryption-at-rest based on KMS and uses HTTPS for all communication - even internal traffic between AZs.

Watch the video

Want to learn more? Watch my video, including a demo about how to get metrics from your EKS (managed Kubernetes) cluster to AMP.

I’ve used the following guides to setup my EKS + AMP demo.

The spreadsheet allows you to compare the monthly costs of AMP and CloudWatch custom metrics.

Comparing costs between AMP and CloudWatch

The pricing model of AMP and CloudWatch are very different. That’s why CloudWatch could be much more cost-effective than AMP or the other way round, depending on your workload.

For example, in the following scenario with more writes than reads, CloudWatch metrics are more expensive than AMP.

Comparing costs between AMP and CloudWatch (1)

However, when you query your metrics frequently, AMP gets much more expensive than CloudWatch metrics.

Comparing costs between AMP and CloudWatch (1)

Summary

AWS is going in an interesting direction with AMP. Form a customer perspective; it is a good thing that AMP competes with CloudWatch. However, AMP is far away from being a production-ready and straightforward to use service. I’m looking forward to the releases during the following months and years.

Andreas Wittig

Andreas Wittig

I’ve been building on AWS since 2012 together with my brother Michael. We are sharing our insights into all things AWS on cloudonaut and have written the book AWS in Action. Besides that, we’re currently working on bucketAV,HyperEnv for GitHub Actions, and marbot.

Here are the contact options for feedback and questions.