Edda — Learn the Stories of Your Cloud Deployments

Netflix Technology Blog
6 min readintermediate
--
View Original

Overview

Edda is a service developed by Netflix to track changes in AWS resources, allowing for quick querying and historical analysis of cloud deployments. The article discusses its features, architecture, and the reasons behind its creation, emphasizing its utility in dynamic cloud environments.

What You'll Learn

1

How to use Edda's REST APIs for querying AWS resources

2

Why historical data is crucial for analyzing outages in cloud environments

3

How to implement custom crawlers in Edda for tracking additional resources

Prerequisites & Requirements

  • Basic understanding of AWS services and APIs
  • Familiarity with REST APIs and JSON(optional)

Key Questions Answered

What is Edda and how does it work?
Edda is a service that polls AWS resources via AWS APIs and records the results, allowing users to quickly search through resources and see how they have changed over time. It is designed to handle dynamic cloud environments where resources are constantly changing.
How does Edda help in querying AWS resources?
Edda allows for dynamic querying of AWS resources using REST APIs, enabling users to search with specific criteria like instance IDs or public IP addresses. This is particularly useful as AWS APIs have limited querying capabilities.
What historical data features does Edda provide?
Edda stores historical data as versioned documents, allowing users to analyze past states of AWS resources and see changes over time. This is valuable for troubleshooting outages and understanding resource evolution.
What architecture does Edda use?
Edda is built as a Scala application that can run on a single instance or scale to multiple instances behind a load balancer for high availability. It uses MongoDB as its data store for persistence.

Technologies & Tools

Some links below are affiliate links. We may earn a commission if you make a purchase.

Key Actionable Insights

1
Utilize Edda's REST APIs to enhance your AWS resource management.
By leveraging Edda, teams can quickly identify and troubleshoot issues with specific AWS resources, improving operational efficiency and response times.
2
Implement historical data tracking to better analyze outages.
Having access to historical states of resources allows teams to pinpoint the causes of outages more effectively, leading to improved reliability in cloud deployments.
3
Consider customizing Edda to track additional resources beyond AWS.
Edda's architecture supports the implementation of custom crawlers, which can be beneficial for organizations that use multiple cloud services or need to monitor specific applications.

Common Pitfalls

1
Failing to configure Edda properly for multiple AWS accounts can lead to incomplete data tracking.
Ensure that Edda is set up to poll from all relevant AWS accounts to avoid missing critical resource changes.

Related Concepts

AWS Resource Management
Cloud Deployment Strategies
Historical Data Analysis