cli53 is a tool that provides import and export from BIND format and simple command line management of Route 53 domains.
Create a hosted zone:
cli53 create example.com
Check what we've done:
Import a BIND zone file:
cli53 import example.com --file zonefile.txt
Replace with an imported zone, waiting for completion:
cli53 import example.com --file zonefile.txt --replace --wait
Manually create some records:
cli53 rrcreate example.com www A 192.168.0.1 --ttl 3600
cli53 rrcreate example.com www A 192.168.0.2 --ttl 3600 --replace
cli53 rrcreate example.com '' MX '10 192.168.0.1' '20 192.168.0.2'
Export as a BIND zone file (useful for checking):
cli53 export example.com
Create some weighted records:
cli53 rrcreate example.com www A 192.168.0.1 --weight 10 --identifier server1
cli53 rrcreate example.com www A 192.168.0.2 --weight 20 --identifier server2
Create an alias to ELB:
cli53 rrcreate example.com www ALIAS ABCDEFABCDE dns-name.elb.amazonaws.com.
Further documentation is available, e.g.:
cli53 rrcreate --help
sudo pip install cli53
You can then run cli53 from your path:
You need to set your Amazon credentials in the environment as AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY or configure them in ~/.boto. For more information see: http://code.google.com/p/boto/wiki/BotoConfig
As Amazon limits operations to a maximum of 100 changes, if you perform a large operation that changes over 100 resource records it will be split. An operation that involves deletes, followed by updates such as an import with --replace will very briefly leave the domain inconsistent. You have been warned!
Here are some key features of "cli53":
· create hosted zones
· delete hosted zones
· list hosted zones
· import to BIND format
· export to BIND format
· create resource records
· delete resource records
· works with BIND format zone files we all know and love - no need to edit XML!
· create AWS weighted records
· create AWS Alias records to ELB
What's New in This Release: [ read full changelog ]
· Check boto version