Getting started with AWS CLI
AWS has extremely nice UI. But – with the time, you need to do something faster than just clicking via an interface. Sometimes you need to automate something (start/stop instances, make a backup. If you are wondering – there is a perfect time for CLI.
Let’s start with setting up out configuration data:
aws configure --profile client
Why –profile ? Because sooner or later we get to the point we have to manage multiple accounts. It’s easier to set this up per client. Now we can use it in a regular way:
aws ec2 describe-instances --profile client
And now we can use command line, couple useful examples:
To run backup of your instance (create an AMi image) just type:
#!/bin/bash
m=$( date +"%Y-%m" )
b1=$(/usr/local/bin/aws ec2 create-image --profile client --instance-id=i-0000000 --name "$m-name" --description "$m backup")
To start/stop multiple instaces EC2/RDS i’m using something like that:
#!/bin/bash
case $1 in
stop)
aws ec2 stop-instances --profile client --region ap-southeast-2 --instance-ids i-xxxx i-yyyy
aws rds stop-db-instance --profile client --region ap-southeast-2 --db-instance-identifier mysql01a-aws-syd
;;
start)
aws ec2 start-instances --profile client --region ap-southeast-2 --instance-ids i-xxxx i-yyyy
aws rds start-db-instance --profile client --region ap-southeast-2 --db-instance-identifier mysql01a-aws-syd
;;
esac
echo "Use with start / stop parameter"