Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (
Help us improve Python packaging - Donate today!

Command line tool to visualize your EC2 infrastructure

Project Description

Getting Started

You’ll need graphviz installed, and optionally imagemagick to use the --preview functionality.

On Ubuntu:

$ sudo apt-get install graphviz imagemagick

Install cloudily from PyPI like so:

$ sudo pip install cloudily

Run cloudily:

$ cloudily --ec2 instances,elb --conns --preview

Open montage.png in your favourite image viewer:

$ qiv montage.png

The --preview makes a montage of the various graphviz layouts available. Depending on your network usually ‘dot’ produces the cleaner layouts, but others may work better / look cooler.

Visualizing EC2 hosts

Use the --ec2 option to visualize your EC2 instances and ELBs. Run:

$ cloudily --ec2 instances,elb --conns --png myarch.png

You need to set your Amazon credentials as environment variables: AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY or configure them in ~/.boto. For more information see:

--ec2groups may be used to filter by security group. This accepts a comma- separated list of multiple groups. eg. --ec2groups group1,group2


There are various ways Cloudily can discover the connections between your hosts.

--arp: Looks at the IP addresses in the arp cache. This has limited use inside EC2, since hosts are usually on different subnets, but maybe useful for other setups.

--conns: Looks at the currently open UDP and TCP connections for each host. If the system is active or there is connection pooling (eg. most database libraries) you should see everything, otherwise there’s a chance you’ll not see connections through inactivity.

--logins: Includes logins by username in the diagram so you can see who logs in to which hosts.

Other options

With --conns you can also limit to a selection of ports using --connsports 80,3306. This is handy if you’re only interested in specific services.



  • Robustify code to missing values. Fixes #3
  • Add –ec2groups option. Fixes #1
  • Fix for internal ELBs. Fixes #2


  • .ssh/config optional


  • Fix defaults


  • First release
Release History

Release History

This version
History Node


History Node


History Node


History Node


Download Files

Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
cloudily-0.1.4.tar.gz (7.1 kB) Copy SHA256 Checksum SHA256 Source Dec 7, 2013

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting