Resoto vs. Cartography
Resoto can be used as an alternative to Cartography.
Cartography is a Python-based tool developed in-house at Lyft that consolidates technical assets and the relationships between them in a graph database.
The Lyft security team uses Cartography to visualize security problems and detect vulnerabilities.
Cartography Use Cases
Cartography is designed for:
- Understanding cloud permission relationships
- Locating vulnerabilities in container images
- Revealing parent-child relationships between images in the form of dependency trees
Similarities Between Resoto and Cartography
Both Resoto and Cartography:
- Are open-source (Apache 2.0 license)
- Use a graph database
- Take point-in-time snapshots of your infrastructure
- Reveal parent-child relationships between assets through the graph
- Support AWS, Google Cloud, Kubernetes, and GitHub
Differences Between Resoto and Cartography
In general, Cartography was built for security use cases. Since Lyft is an "AWS shop," Cartography prioritizes functionality for AWS services in use at Lyft.
|Remediation||Integrates analytics and governance into a single product to enforce policies and perform actions on resources.|
Offers commands and jobs to automate remediation.
Can be used to write custom code and rules for any resource in a cloud-agnostic way.
|Only an analytics tool; unable to modify to resources.|
|User Interface||Ships with both a command-line interface and dashboards.|
Dashboards consist of customizable widgets to view resources, metrics, and charts.
|Uses Neo4j Browser, which is optimized for Neo4J and graph visualization only.|
|Resources||Supports over 200 AWS, 60 Google Cloud, and 50 DigitalOcean resource types.||Only supports about 20 AWS, 5 Azure, 5 Google Cloud, and 3 DigitalOcean resource types.|
|Data Model||Uses a unified data model for all platforms and resources.|
Unifying base properties and common abstractions allows you to search, sort, aggregate, and act on a higher level of abstraction and query resources across clouds.
|Has a unique schema for every cloud provider. Writing queries require a specialized understanding of the data model for each service.|
|Metrics||Calculates metrics for infrastructure resources and exports them to a time-series database (e.g., Prometheus).||Does not offer metrics.|
|Syntax||Provides an easy-to-learn search syntax developed specifically for infrastructure resources.|
Resoto's syntax was designed to keep all the benefits of graph traversal while remaining intuitive and versatile.
|Uses Neo4j's Cypher query language and is optimized for general graph queries. Cypher is rather complex to learn.|
|Support||Users can contact us via the Some Engineering Discord server, and we offer commercial support packages to help install, run, and build with Resoto.||The Lyft open-source team answers questions in a public Slack channel.|
There is no commercial support.