Anda di halaman 1dari 8

5/21/2014 cloudwatch | shaon' s Blog

https://mdshaonimran.wordpress.com/tag/cloudwatch/ 1/8
shaon's Blog
sky is the limit
TAG ARCHIVES: CLOUDWATCH
Eucalyptus 3.3.0 in a nutshell
Posted on June 10, 2013 | 3 comments
Eucalyptus 3.3.0, the most exciting Eucalyptus release so far is knocking on the door or perhaps it has been already
released when you are reading this post.
Eucalyptus 3.3.0 has couple of most desired Amazon Web Services (AWS) features by the cloud users:
1. Elastic Load Balancing (ELB)
Needless to say, this is an AWS ELB compatible feature which is being introduced in Eucalyptus 3.3.0.
Creating a basic loadbalancer:
Register instances with Eucalyptus Elastic Load Balancer,
1
2
3
4
5
6
7
eulb-create-lb -z PARTI00 -l 'lb-port=80, protocol=HTTP, instance-port=80' MyElb
# output
# DNS_NAME MyElb-576514848852.lb.localhost

eulb-describe-lbs
# output
# LOAD_BALANCER MyElb MyElb-576514848852.lb.localhost 2013-06-10T06:57:52.07Z
1
2
eulb-register-instances-with-lb MyElb --instances i-25D3415E,i-16463E17
# output
5/21/2014 cloudwatch | shaon' s Blog
https://mdshaonimran.wordpress.com/tag/cloudwatch/ 2/8
Few other ELB operations,
2. CloudWatch
CloudWatch is another AWS-compatible feature which is shipping with Eucalyptus 3.3.0. It enables cloud users to view,
collect and analyze metrics of their could resources. It also lets cloud users to configure alarm actions based on the data
from the metrics.
Enable instance monitoring,
Euwatch
3
4
5
6
7
8
9
# INSTANCE i-25D3415E
# INSTANCE i-16463E17

eulb-describe-instance-health MyElb
# output
# INSTANCE i-25D3415E InService
# INSTANCE i-16463E17 InService
1
2
3
4
5
# deregister instances from ELB
eulb-deregister-instances-from-lb MyElb --instances i-16463E17

# delete ELB
eulb-delete-lb MyElb
1
2
3
4
5
6
7
8
# on existing instance
euca-monitor-instances i-25D3415E

# during instance run
euca-run-instances -k batman1key emi-90E83973 --monitor

# disable monitoring
euca-unmonitor-instances i-DB5842DC
1
2
3
4
5
6
7
8
# returns all the available metrics
euwatch-list-metrics

# returns list of metrics with particular metric name
euwatch-list-metrics --metric-name CPUUtilization

# returns list of metrics with particular namespace
euwatch-list-metrics --namespace AWS/EC2
5/21/2014 cloudwatch | shaon' s Blog
https://mdshaonimran.wordpress.com/tag/cloudwatch/ 3/8
3. Auto Scaling
Eucalyptus Auto Scaling is consists of three fundamental principles,
1. Launch Configurations
2. Auto Scaling Groups
3. Auto Scaling Policies
Create a launch configuration,
Create auto scaling group,
Create scale out policy,
9
10
11
12
13
14
15
16
17
18
19
20

# returns list of metrics with particular dimensions
euwatch-list-metrics --dimensions "InstanceId=i-25D3415E"

# returns time-series data for one or more statistics of a given MetricName
euwatch-get-stats CPUUtilization \
> --start-time 2013-06-10T07:09:00.043Z \
> --end-time 2013-06-10T08:46:54.043Z \
> --period 3600 \
> --statistics "Average,Minimum,Maximum" \
> --namespace "AWS/EC2" \
> --dimensions "InstanceId=i-25D3415E"
1
2
3
euscale-create-launch-config MyLC \
> --image-id emi-90E83973 \
> --instance-type m1.small
1
2
3
4
5
6
7
euscale-create-auto-scaling-group MyASGroup \
> --launch-configuration MyLC \
> --availability-zones PARTI00 \
> --min-size 1 --max-size 3

# describe auto scaling groups
euscale-describe-auto-scaling-groups
1
2
3
euscale-put-scaling-policy MyScaleoutPolicy \
> --auto-scaling-group MyASGroup \
> --adjustment=30 \
5/21/2014 cloudwatch | shaon' s Blog
https://mdshaonimran.wordpress.com/tag/cloudwatch/ 4/8
Creating scale in policy,
CloudWatch Alarm
Eucalyptus CloudWatch alarm currently helps cloud users to take decisions on the resources (e.g instances, EBS volumes,
Auto Scaling instances, ELBs) automatically based on the rules defined by the users based on the metrics. Eucalyptus
CloudWatch alarm currently works with Auto Scaling policies.
Create alarm for scale out capacity and scale in capacity,
4
5
6
7
> --type PercentChangeInCapacity

# output
# arn:aws:autoscaling::576514848852:scalingPolicy:c2a8f9dc-1c75-49d5-b54d-8ef87fe29e9a:autoScalingGroupName/MyASGroup:policyName/MyScaleoutPolicy
1
2
3
4
5
6
euscale-put-scaling-policy MyScaleInPolicy \
> --auto-scaling-group MyASGroup \
> --adjustment=-2 --type ChangeInCapacity

# output
# arn:aws:autoscaling::576514848852:scalingPolicy:a4148c27-81da-4eff-9140-cba3ba9381cb:autoScalingGroupName/MyASGroup:policyName/MyScaleInPolicy
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# create scale out alarm
euwatch-put-metric-alarm AddCapacity \
> --metric-name CPUUtilization \
> --namespace "AWS/EC2" \
> --statistic Average \
> --period 120 --threshold 80 \
> --comparison-operator GreaterThanOrEqualToThreshold \
> --dimensions "AutoScalingGroupName=MyASGroup" \
> --evaluation-periods 2 \
> --alarm-actions arn:aws:autoscaling::576514848852:scalingPolicy:c2a8f9dc-1c75-49d5-b54d-8ef87fe29e9a:autoScalingGroupName

# create scale in alarm
euwatch-put-metric-alarm RemoveCapacity \
> --metric-name CPUUtilization \
> --namespace "AWS/EC2" \
> --statistic Average \
> --period 120 --threshold 40 \
> --comparison-operator LessThanOrEqualToThreshold \
> --dimensions "AutoScalingGroupName=MyASGroup" \
> --evaluation-periods 2 \
5/21/2014 cloudwatch | shaon' s Blog
https://mdshaonimran.wordpress.com/tag/cloudwatch/ 5/8
Set the alarm state to OK/ALARM for testing,
4. Resource Tagging
Resource tagging was another missing AWS feature which was not there until 3.2.2. This is a very important feature and also
used by many 3rd party tools and application.
5. More instance type
21
22
23
24
> --alarm-actions arn:aws:autoscaling::576514848852:scalingPolicy:a4148c27-81da-4eff-9140-cba3ba9381cb:autoScalingGroupName

# delete alarm
euwatch-delete-alarms
1
2
3
4
5
6
7
8
9
10
11
euwatch-set-alarm-state --state-value OK \
> --state-reason "testing" AddCapacity

euwatch-set-alarm-state --state-value OK \
> --state-reason "testing" RemoveCapacity

euwatch-describe-alarms

# output
# AddCapacity OK arn:aws:autoscaling::576514848852:scalingPolicy:c2a8f9dc-1c75-49d5-b54d-8ef87fe29e9a:autoScalingGroupName/MyASGroup:policyName/MyScaleoutPolicy AWS/EC2 CPUUtilization 120 Average 2 GreaterThanOrEqualToThreshold 80.0
# RemoveCapacity OK arn:aws:autoscaling::576514848852:scalingPolicy:a4148c27-81da-4eff-9140-cba3ba9381cb:autoScalingGroupName/MyASGroup:policyName/MyScaleInPolicy AWS/EC2 CPUUtilization 120 Average 2 LessThanOrEqualToThreshold 40.0
1
2
3
4
5
6
euca-create-tags vol-65803EB8 --tag "testtag"
# TAG volume vol-65803EB8 testtag

euca-describe-volumes
# VOLUME vol-65803EB8 2 PARTI00 available 2013-06-10T12:29:41.082Z standard
# TAG volume vol-65803EB8 testtag
1
2
3
4
5
6
7
8
9
euca-describe-instance-types
INSTANCETYPE Name CPUs Memory (MB) Disk (GB)
INSTANCETYPE m1.small 1 256 5
INSTANCETYPE t1.micro 1 256 5
INSTANCETYPE m1.medium 1 512 10
INSTANCETYPE c1.medium 2 512 10
INSTANCETYPE m1.large 2 512 10
INSTANCETYPE m1.xlarge 2 1024 10
INSTANCETYPE c1.xlarge 2 2048 10
Follow
Follow
shaon's Blog
Get every new post delivered
to your Inbox.
Join 256 other followers
Enter your email address
Sign me up
Powered by WordPress.com
5/21/2014 cloudwatch | shaon' s Blog
https://mdshaonimran.wordpress.com/tag/cloudwatch/ 6/8
Well, if you used Eucalyptus before, I think, the improvement is very much visible
6. Maintenance Mode:
Eucalyptus 3.3.0 also comes with the feature which many cloud administrator might be waiting for such a long time, which
is Maintenance Mode.
In other words, migrating a single instance to another Node Controller or evacuating a certain Node Controller are now
supported by Eucalyptus.
For more information check the Eucalyptus 3.3.0 roadmap. Architectural overview for 3.3.x release can be found on
github. Here is a list of new stories that are going to take place in the 3.3.0 release.
More AWS Compatibility
Eucalyptus 3.3.x is the most AWS compatible release ever. It has more API compatibility than Eucalyptus ever had. Here is
couple of our ongoing work on the different AWS SDKs and open source libraries.
1. AWS SDK for Java
2. AWS SDK for Ruby
3. AWS SDK for PHP
10
11
12
13
14
15
16
17
18
19
20
INSTANCETYPE m2.xlarge 2 2048 10
INSTANCETYPE m3.xlarge 4 2048 15
INSTANCETYPE m2.2xlarge 2 4096 30
INSTANCETYPE m3.2xlarge 4 4096 30
INSTANCETYPE cc1.4xlarge 8 3072 60
INSTANCETYPE m2.4xlarge 8 4096 60
INSTANCETYPE hi1.4xlarge 8 6144 120
INSTANCETYPE cc2.8xlarge 16 6144 120
INSTANCETYPE cg1.4xlarge 16 12288 200
INSTANCETYPE cr1.8xlarge 16 16384 240
INSTANCETYPE hs1.8xlarge 48 119808 24000
1
2
3
4
5
# evacuate a Node Controller
euca-migrate-instances --source 10.111.1.119

# migrate specific instance to another destination
euca-migrate-instances -i i-38A74228 --dest 10.111.1.116
5/21/2014 cloudwatch | shaon' s Blog
https://mdshaonimran.wordpress.com/tag/cloudwatch/ 7/8
4. AWS toolkit for Eclipse
5. jcloud on Eucalyptus - This is comparatively newest among all, we are tracking this as a story on jira, EUCA-5671.
Eucalyptus 3.3.0 has few very important improvements on Boot-from-EBS instances,
1. Root block device is /dev/sda and not /dev/sda1
2. Allow multiple EBS block device mappings
3. No more default ephemeral disk at /dev/sdb
4. Metadata service changes
Euca2ools 3.0 is huge in Eucalyptus 3.3.x. It has been completely ported to requestbuilder. Euca2ools 3 is slim and
beautiful and it works!
One interesting fact about Euca2ools from the developers,
% git diff shortstat 2.1.3.. bin euca2ools generate-manpages.sh
install-manpages.sh setup.py
432 files changed, 14973 insertions(+), 15097 deletions(-)
euca2ools 3 adds three entirely new services and tons of new
functionality to the previous version, but it still manages to weigh
in at less code than it had before.
Read more about euca2ools 3, Whats new in Euca2ools 3 Part 1 and Part 2.
With all these new features, Eucalyptus 3.3.0 has many bug fixes as well. There are many others documented/undocumented
fixes are coming in 3.3.0. Some administrator tool are also on the way to see the light very soon.
If you are interested in trying from source code, you are more that welcome to checkout Eucalyptus from the public github
repository.
Some places to give you feedback:
5/21/2014 cloudwatch | shaon' s Blog
https://mdshaonimran.wordpress.com/tag/cloudwatch/ 8/8
Bug report: eucalyptus.atlassian.net
Questions: engage.eucalyptus.com
SHARE THIS:
Blog at WordPress.com. The Coraline Theme.

5

Like
2 bloggers like this.

3 Comments Posted in Cloud Computing, Eucalyptus, IaaS, Open Source


Tagged autoscaling, aws compatibility, cloud computing, cloudwatch, elb, eucalyptus, private cloud

Anda mungkin juga menyukai