How can I programmatically control AWS cloud and storage resources?
System administrators routinely write scripts to automate repetitive management tasks -- a functionality they don't have to give up in a move to public cloud. There are several ways to programmatically control Amazon Web Services (AWS) cloud resources.
AWS provides application programming interfaces (APIs) to its services along with software development kits for popular development platforms, which include Java, iOS, .NET, PHP, Python and Ruby. AWS also supports plug-ins for Eclipse and Visual Studio integrated development environments.
If you prefer scripting with command-line tools, they're available for many AWS services, such as Elastic Compute Cloud (EC2), Simple Storage Service (S3), CloudSearch, Relational Database Service (RDS), Elastic MapReduce (EMR) and Simple Queue Service (SQS). You can download these command-line tools from the Tools for Amazon Web Services page on the AWS website. With command-line tools, you can work with shell scripts or scripting languages, such as Python, Perl or Ruby.
Apache Libcloud is a cloud management package that abstracts common functions across clouds, removing differences among multiple cloud providers' APIs and allowing developers to build products that can work across clouds. It works with Amazon EC2 for computing resources and S3 for storage. Libcloud is a Python package and requires some familiarity with Python.
The Boto package is applicable if you're primarily concerned with the Amazon cloud. It's a Python package with support for EC2, Elastic MapReduce, CloudFront, SimpleDB, Dynamo, CloudSearch and other popular services.
About the author:
Dan Sullivan, M.Sc., is an author, systems architect and consultant with more than 20 years of IT experience. He has had engagements in advanced analytics, systems architecture, database design, enterprise security and business intelligence. He has worked in a broad range of industries, including financial services, manufacturing, pharmaceuticals, software development, government, retail and education. Dan has written extensively about topics that range from data warehousing, cloud computing and advanced analytics to security management, collaboration and text mining.
Dig deeper on AWS tools for development
Related Q&A from Dan Sullivan
A service-level agreement is a vital piece to your cloud puzzle, so understanding what to expect is paramount. What goes into a typical cloud SLA?continue reading
DDoS and DoS attacks are simple to implement but more difficult to prevent. How can these attacks on cloud services be avoided?continue reading
In a new IT landscape, IT pros are worried their jobs are on the chopping block -- but Java developers in particular can position themselves in the ...continue reading
Have a question for an expert?
Please add a title for your question
Get answers from a TechTarget expert on whatever's puzzling you.