Hank Lin

A new blog

AWS News 2010-12

| Comments

Auto Scaling

CloudWatch monitoring

現在可以用CloudWatch去monitor AutoScalingGroup裡面的機器數目,launched和terminated機器數目,以及其它的group activities。

Percent Of Capacity

在scaling policy多了一個屬性: AdjustmentType。原本的AdjustmentType都會是”ChangeInCapacity”,也就是ScalingAdjustment的數值是固定的數字。例如”-1”代表減少一台,”2”代表增加二台。 Type可以改用”PercentOfCapacity”,也就是相對於機器數目的百分比。例如”-10”代表減少10%的機器。”20”代表增加20%的機器。這個對設定scaling increment比較方便,因為不論是大或小的叢集,使用百分比來設定可以讓機器數目成比例增加,不必擔心設太大或太小。

Scheduled Update Group Action

Auto Scaling依據CloudWatch的資訊來自動scale in/out,但是這有時候不太足夠。例如,我已經知道星期一到星期五的流量是週末的三倍,或是晚上8點到12點是流量最高的時候,我希望能夠主動的scale in/out,讓使用者有更好的使用經驗,更快的符合實際的流量。現在Auto Scaling又推出了”scheduled actions”,可以讓你設定在末來的時間,叢集的”desired size”。

Suspend/Resume

有時候我希望Auto Scaing的trigger能夠先暫停一下,不要觸發scaling activities。例如我要佈署新版本,可能要關掉一半的機器,不希望Auto Scaling又自動幫我開一堆機器。現在Auto Scaling有Suspend/Resume功能,你可以先暫停health checking、launching、terminating、scheduled activities等等動作。

Health Checks

現在Auto Scaling可以利用ELB的health check結果,去做scaling activities。例如一個Load Balander發現一個EC2 instance是unhealthy,Auto Scaling可以去關掉unhealthy的機器。(還可以加上再開一台新的機器的activity)。設定方法是這個Auto Scaing Group的屬性:”HealthCheckType”,如果設成”EC2”就是原本用CloudWatch的讀數,如果設成”ELB”就是用Load Balander的health check。 另外Auto Scaling Group還有一個新屬性:”HealthCheckGracePeriod”,代表新的機器開機以後的秒數,才會去做health check。 你也可以自己設定某個機器的健康狀態,適合用在你自己有monitoring系統的時候。指令是”SetInstanceHealth”,傳入instanceID和HealthStatus,值可以是”Health”,或”Unhealthy”。

CloudWatch

Alarms

現在CloudWatch有示警(alarming)的功能了! 你可以設定metric超過或低於一個threshold值,就發通知。一個metric可以有多個alarm,每個alarm可以有多個通知。通知的State有3種: OK、ALARM、和INSUFFICIENT_DATA。分別代表”在threshold值內”、”不在threahold值內”、和”metric值無法讀取或資訊不足”。CloudWatch的示警是發佈到SNS上面,所以要收到CloudWatch示警的地方,就去接收SNS topic。或是直接去進行Auto Scaling actions。

Basic Monitoring

免費啦! 又來好康了,這次是CloudWatch。其實本來CloudWatch就只有EC2的metrics才要收費,連EBS、RDS的metrics都不收費,現在更是多了Basic Monitoring。這個Basic Monitoring是EC2的CPUUtilization,Disk IO,和Network IO都不收費了,但是是5分鐘的時間間隔。如果你不需要完整的metrics和1分鐘內的取樣時間,就不需要使用收費的CloudWatch了(現在叫做Detailed Monitoring)。

SimpleDB

BatchDelete

以前只有BatchPutAttributes,現在新增加了BatchDeleteAttributes,所以刪除的時候也可以用batch的作法了。

Amazon Route 53

AWS的DNS

以前我就很希望AWS能夠有DNS的服務,因為動態IP實在是很麻煩啊,Elastic IP只解決了一些問題,現在Amazon推出了DNS服務”Route 53”,有AWS一慣風格,就是所有動作都有API。所以你可以在Route 53設定你的domain的records。 不過我希望的”EC2 instances如果解析到EC2 instances的IP,可以有辦法解析成local IP addresses”,這個功能還是沒有,所以要有最大的彈性,還是得在自己在EC2裡面架一個private DNS,然後所有的EC2 instances都先用自己的DNS。(為什麼要儘量用local IP addresses? 為了省$)。

AWS SDK

Android and iOS

手持裝置是未來上網成長最多的用戶,所以AWS也趕快推出了Android和iOS的SDK,就是不希望在開發新的網路應用的時候,被開發者嫌不好開發啊!

S3

5 TB

夠猛了…單一物件(檔案)5TB。原本5GB對大多數的使用情境應該都夠了,但是AWS又把S3的單一物件大小限制提高到5TB! 這真是太超過了啊! (好了!可以放Bluray ISO了! )

EC2

Free BSD

如果你是Free BSD的死忠用戶,要注意了! EC2現在也可以用Free BSD了! 目前只能用t1.micro,不過等穩定了以後,應該可以用更多的機器類型,可以到這裡選AMI

VM Import

現在可以用你自己的VMware的映像檔,輸入到EC2上面。

好啦! 來不及寫了! 新年快樂,希望明年是成功的一年!