Setting up the Amazon AWS CLI on Ubuntu

Ryan Kopf's Blog
Amazon's documentation on their command line tools is unwieldy and confusingly setup. They have a lot of tools that are similarly named, yet you may need just a fraction of them for your particular purpose. Take for example the EC2 command line interface tools and the command line interface. But that's not what matters.

Different parts of the documentation are not well separated.

Actual instructions are buried under information and notes you might already know. Okay, really, it's not that confusing. But I believe in a simple idea that things should be as easy as possible. Key information should be highlighted and not simply part of the "how to do this" text. Take these two things:

Each time you use the Amazon EC2 CLI tools on your instance, you must provide your identity. Your access keys identify you to the Amazon EC2 CLI tools.
To me, this is not the text I care about. Most developers would rather speed-read through this than actually read it. Access keys identify me? Wow, I never knew that's what those were for.

add the following lines to ~/.bashrc and save the file.
This! This is the real meat of what I'm supposed to do. But this text is in the same font and paragraph styling as the above. Documentation should be user friendly, clearly distinguishing between helpful information, steps to perform, important warnings, and the actual commands to execute. Each of these has it's own purpose and should be distinct.

In my case, this was about my seventh time installing the Amazon CLI. I remember it was easy, but it would be a waste of time to memorize the code for something you might do once a year, if even that.

The command, for installing just the basic command line interface:

wget https://s3.amazonaws.com/aws-cli/awscli-bundle.zip
unzip awscli-bundle.zip
sudo ./awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws


Before running that you need to:

Make sure you have the right version of Python.
Possibly install the unzip command (sudo apt-get install unzip)


I've been doing a lot of refactoring on one of my major projects, the websites and registration systems that host my conventions. In this case, AWS is used to save regular backup files to Amazon S3.

Please login to post.