Django AWS Manager is a django app that allows you to view and manage Amazon EC2 instances. It can be useful as a way to access your server quickly from the admin screen and remote desktop. The servers can be shut off during off hours (e.g., outside of market hours for a trading server) to save costs.
> pip install django-aws-manager
or for the latest from github:
> pip install -e git+git://github.com/jromich/django-aws-manager.git#egg=django-aws-manager
Add "aws-manager" to your INSTALLED_APPS setting like this:
INSTALLED_APPS = ( ... 'aws-manager', )
Include the aws_manager URLconf in your project urls.py like this:
url(r'^aws-manager/', include('aws_manager.urls')),
- Run python manage.py migrate to create the aws-manager models (or add it using south)
register the app with your admin in admin.py:
from aws_manager.models import AWSServer from aws_manager.admin import AWSServerAdmin admin.site.register(AWSServer, AWSServerAdmin)
- add a new server record through the admin screen
- You can start/stop the server using the admin actions on the aws server list page.
- The server status is visible from the server detail view
- An RDP for remote desktop access file can be downloaded from the detail view if the EC2 server is windows based and is running.
A management command can be used to start and stop the servers from the command line e.g.:
python manage.py aws-server *servername* start (Available management commands: start, stop, state, start-wkdays-only, stop-wkdays-only)
- Starting and stopping of the servers can be scheduled using chron or heroku scheduler using the management commands
- The app can be run as a standalone application using the included project testproject