AWS CLI

From NovaOrdis Knowledge Base
Jump to navigation Jump to search

External

Internal

Overview

AWS CLI is a package that provides commands for interacting with the AWS services. All functionality available on the web Amazon Management Console is made available from command line.

Installation

https://docs.aws.amazon.com/cli/latest/userguide/awscli-install-bundle.html
https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2.html

This article documents installation of AWS CLI v2.

curl "https://awscli.amazonaws.com/AWSCLIV2.pkg" -o "AWSCLIV2.pkg"
sudo installer -pkg AWSCLIV2.pkg -target /

Even it looks odd, "-target /" will install AWS CLI in /usr/local/aws-cli.

Verify the installation executing:

aws --version
aws-cli/2.0.35 Python/3.7.4 Darwin/18.7.0 botocore/2.0.0dev39

Uninstall AWS CLI Version 1

sudo rm -rf /usr/local/aws
sudo rm /usr/local/bin/aws

Configuration

Configuration Profile

A collection of settings related to a certain account (access key, secret key, the default region and the default output format) are called a profile. By default, AWS CLI uses the "default" profile. Additional profiles can be created, named and stored, then later used for AWS CLI operations.

Also, individual AWS CLI commands can be executed within the context of a specific profile using the --profile option:

aws s3 ls --profile blue

Configuration Profile Operations

List Available Profiles

aws configure list-profiles

List the Configuration for a Specific Profiles

Default profile:

aws configure list

Specific named profile:

aws configure list --profile blue

Permanently Selecting a Profile

A previously-configured profile can be selected by setting the "AWS_PROFILE" environment variable:

export AWS_PROFILE=jenkins



  • Select a specific profile
  • Add a new profile
  • Remove a profile








https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html#cli-multiple-profiles

The initial configuration procedure creates a profile named "default". Additional named profiles can be created, and then referred from command line with --profile.

Profiles can be created with:

aws configure set

Configuration Procedure

Once installed, AWS CLI can be configured by running:

aws configure

It will interactively inquire for AWS Access Key ID, etc.

Configuration Files

AWS CLI organizes configuration and credentials in two separate files placed in $USER/.aws. They are separated to isolate credentials for less sensitive options of region and output.

~/.aws/config

AWS CLI configuration file is maintained by default in ~/.aws/config:

[default]
region = us-west-2
ca_bundle = /path/to/ca-bundle.pem
output=json

[profile testing]
region = us-west-1

[profile testing2]
region = eu-west-1

[preview]
cloudsearch = true

~/.aws/credentials

AWS CLI credentials are maintained by default in ~/.aws/credentials:

[default]
aws_access_key_id=...
aws_secret_access_key=...

Test Installation

aws ec2 describe-regions
aws ec2 describe-hosts

Credential Providers

Credential Providers

TODO

Define the relationship between the AWS CLI and EC2 CLI