Amazon Web Services (AWS) EC2 Autoscaling

 

How many blog posts have you read that were written on a ferry? Well this is post makes it one more. Live from famous Manly ferry since I am currently offering a number of Amazon and Oracle Cloud Computing Workshops in Australia.

Elasticity is a key criteria for cloud computing. Autoscaling is automated elasticity. Interesting enough is widely unknown how this will be implemented on the Oracle Public Cloud for the Java Service.

Autoscaling on AWS can only be configured with lengthy commands from the command line but not from the web cased AWS console. Getting all the parameters right can be tricky, so here is one of the easiest examples and a hands-on screen cast using it:

 

 


as-create-launch-config surfLaunch --region ap-southeast-1 --key access --image-id ami-b83374ea --instance-type t1.micro
as-create-auto-scaling-group surfScale --launch-configuration surfLaunch --region ap-southeast-1 -availability-zones ap-southeast-1a,ap-southeast-1b --min-size 2 --max-size 4
as-describe-auto-scaling-groups --headers --region ap-southeast-1

as-describe-auto-scaling-instances --headers --region ap-southeast-1
as-put-scaling-policy ScaleDown -auto-scaling-group surfScale --adjustment=-1 --type ChangeInCapacity --region ap-southeast-1
as-put-scaling-policy ScaleUp -auto-scaling-group surfScale --adjustment=+1 --type ChangeInCapacity --region ap-southeast-1

 

as-execute-policy ScaleUp --auto-scaling-group surfScale --region ap-southeast-1

as-describe-scaling-activities -g surfScale --region ap-southeast-1 --show-long

 

as-execute-policy ScaleUp --auto-scaling-group surfScale --region ap-southeast-1

 

mon-put-metric-alarm HighCPUAlarm --comparison-operator GreaterThanThreshold --evaluation-periods 1 --metric-name CPUUtilization --namespace "AWS/EC2" --period 600 --statistic Average --threshold 80 --alarm-actions "XXX" --dimensions "AutoScalingGroupName=surfScale" --region ap-southeast-1

 

mon-put-metric-alarm LowCPUAlarm --comparison-operator LessThanThreshold --evaluation-periods 1 --metric-name CPUUtilization --namespace "AWS/EC2" --period 600 --statistic Average --threshold 20 --alarm-actions "XXX" --dimensions "AutoScalingGroupName=surfScale" --region ap-southeast-1

 

REMOVE ALL:

as-update-auto-scaling-group surfScale --min-size 0 --max-size 0 --region ap-southeast-1
as-delete-auto-scaling-group surfScale --region ap-southeast-1

as-delete-launch-config surfLaunch --region ap-southeast-1

 

The comments section is open now for your suggestions how this will be done with the Oracle Public Cloud.

Speak Your Mind

*