Skip to content
This repository has been archived by the owner on Sep 19, 2024. It is now read-only.
/ infra-viz Public archive

Infrastructure Visualisation tool

License

Notifications You must be signed in to change notification settings

Learnosity/infra-viz

Repository files navigation

infra-viz

Infrastructure dependency visualisation

Usage

There are 2 parts to this

  1. Collect the data from AWS

For this you will need read-only access to the AWS environment.

Then run: $ python3 collect.py

Once this has run you can explore the data.

  1. View and explore the visualised data:

$ python3 server.py

Browse to: http://127.0.0.1:5000

Setup

You need a working Python3 environment.

Install the dependencies $ pip install -r requirements.txt

Roadmap

Frontend/JS

  • Migrate core to python
  • Control how far it can zoom out or in
  • Add search field to find nodes
  • Add info on each of the nodes
  • Add icon for type of each node
  • Make layouts much better
  • Filter to unconnected nodes
  • General filtering of nodes
  • Add ability to filter by region
  • Add ability to search for nodesx

Collect Script

  • Move to infra-viz project
  • Add support for RDS
  • Ability to create a dependency graph for infraviz
  • make DNS Cacheable
  • Add redshift
  • Add elasticache
  • Add cloudfront
  • Add ASGs
  • Fix up memcache linkages
  • Deduplicate nodes
  • Publish as open source
  • Add click options - http://click.pocoo.org/6/
  • Command line option for regions etc
  • Add mode for exceptions only
  • Add IP addresses for machines
  • Add ability to flush all or a single resource type
  • Ability to link in non AWS data - eg internal config - maybe via CSV or seperate file
  • link up cloudfront to ELB's and S3

Screenshots

ASG with 10 nodes: alt text

DNS with different weights: alt text

Weighted DNS pointing to ASG nodes: alt text

Dependencies:

The infra-viz project utilised the following open source or free resources:

Linked Entities

DNS

  • DNS Node
  • Edge Link via A record, CNAME and ALIAS

Cloudfront

  • Cloudfront Node
  • DNS Node
  • Edge between Cloudfront and DNS

RDS

  • RDS Node
  • DNS Node
  • Edge between DNS and RDS
  • Replicas - Node and Edge

Elasticache

  • Elasticache Node
  • DNS Node
  • Edge between DNS and Elasticache
  • Replicas? - Node and Edge

Redshift

  • Redshift Node
  • DNS Node
  • Edge between DNS and Redshift

ALB

  • ALB Node
  • DNS Node
  • Edge between DNS and ALB
  • Edge betetween Target Group and ALB

Target Groups

  • Target Group Nodes (ARN)
  • Edge to Load Balancer ARN

ASG

  • ASG Node
  • Edge to Target Group ARN Node
  • Edge to Instances

About

Infrastructure Visualisation tool

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published