#!/bin/bash # EC2 # List your running EC2 istances aws ec2 describe-instances # Stops an instance aws ec2 stop-instances --instance-ids i-004f15f18e76bb7eb # Starts a stopped instance aws ec2 start-instances --instance-ids i-004f15f18e76bb7eb # Reboots an instance aws ec2 reboot-instances --instance-ids i-004f15f18e76bb7eb # List image information aws ec2 describe-images --image-ids ami-340aae4e #Creates an image from an instance aws ec2 create-image --instance-id i-004f15f18e76bb7eb --name "WebServer AMI" --description "WebServer for dev team"
aws --version # Best practice, verify user configuration aws configure # Lists all buckets aws s3 ls # Lists contents of named bucket aws s3 ls s3://demo-simple-lynn-data # Create a new bucket in a particular region aws s3 mb s3://demo-simple-lynn-new-today --region us-west-1 # Lists all buckets aws s3 ls how to launch instances
!/bin/bash IMAGENAME=BASTION INSTANCEID=i-076d3582c7db06190 IMAGEDESCRIP="An AMI for $IMAGENAME" function createImage { aws ec2 create-image --instance-id $INSTANCEID --name $IMAGENAME --description "$IMAGEDESCRIP" } # aws configure createImage # aws ec2 create-image --instance-id i-034a9a2d28543a0de --name "BASTION" --description "An AMI for BASTION" # apt install ec2-api-tools #launchImage # aws ec2 run-instances --image-id ami-b911ded4 --count 1 --instance-type t2.micro --key-name BASTIONKEYPAIR --security-group-ids sg-a3eaadd8 --subnet-id subnet-013c3c77 --tags Key=Name,Value=BASTION
#!/bin/bash aws ec2 create-image --region=us-west-2 --instance-id=i-acc8cea1 --name=smtp`date +%m%d%y` --no-reboot aws ec2 create-image --region=us-west-2 --instance-id=i-549d8b5c --name=vms`date +%m%d%y` --no-reboot
#!/bin/bash ec2-describe-images | grep `date --date="4 days ago" +%Y-%m-%d` | awk '{print "Deregistering-> " $2; system("ec2-deregister " $2)}' ec2-describe-instances | grep instance | awk '{print "Creating -> " $3; system("ec2-create-image --name " $5 "-$(date +%F) --no-reboot " $3)}' ec2-describe-snapshots | sort -k 5 | awk '{print "Deleting-> " $2; system("ec2-delete-snapshot " $2)}'
#!/bin/bash _instanceIDS="instanceIDS " # Put Instance ID separated by space _date=`date +"%m-%B-%Y"` for instanceID in ${_instanceIDS[@]};do # Get the Tag Associated with the EC2 Instances _tag=$(aws ec2 describe-instances --filters "Name=instance-id,Values=$instanceID " --query Reservations[*].Instances[*].Tags[*].Value --output text) echo "Creating AMI for $_tag Instance having instance ID : $instanceID" aws ec2 create-image --instance-id $instanceID --description $_tag-AMI-$_date --no-reboot done
#!/bin/sh instances=$(aws ec2 describe-instances --filters Name=tag-key,Values=backup --query 'Reservations[*].Instances[*].[InstanceId,to_string(Tags[?Key==`backup`].Value),to_string(Tags[?Key==`Name`].Value)]' --output text | tr -d "[" | tr -d "]" | tr -d "\"" | awk '{print $1","$2","$3}') for instance in $instances do parts=$(echo $instance | sed -e "s/,/ /g") columns=($parts) instance_id=${columns[0]} name=${columns[2]} aws ec2 create-image --instance-id $instance_id --no-reboot --name ${name}_`date +"%Y%m%d%H%M%S"` done
Recent Comments