Memo/AmazonWebServices/awscli/CloudWatch

http://dexlab.net/pukiwiki/index.php?Memo%2FAmazonWebServices%2Fawscli%2FCloudWatch
 

CloudWatch?

  • 例:RDSのCloudWatch?メトリクスを設定し、閾値を超えたらメールを送る
  1. AWS SNSトピックを作成
    1. AWS_PROFILE=default
    2. AWS_REGION=ap-northeast-1
    3. RDS_ID=db01
    4. EMAIL=alerts@example.com
    5.  
    6. aws --profile $AWS_PROFILE --region $AWS_REGION \
    7.   sns create-topic --name "AlertToMyemail"
    8. {
    9.     "TopicArn": "arn:aws:sns:ap-northeast-1:1234567890:AlertToMyemail"
    10. }
    11.  
    12. TopicArn="arn:aws:sns:ap-northeast-1:1234567890:AlertToMyemail"
    13.  
    14. aws --profile $AWS_PROFILE --region $AWS_REGION \
    15.   sns subscribe --topic-arn $TopicArn \
    16.   --protocol email \
    17.   --notification-endpoint $EMAIL
  2. 確認メールが届くので "Confirm subscription" をクリック
  3. AWS SNS 設定確認
    1. aws --profile $AWS_PROFILE --region $AWS_REGION \
    2.   sns list-subscriptions-by-topic --topic-arn $TopicArn
  4. RDS:CPUUtilization >= 80% のメトリクスを作成
    1. aws --profile $AWS_PROFILE --region $AWS_REGION \
    2.  cloudwatch put-metric-alarm \
    3.  --alarm-name awsrds-${RDS_ID}-High-CPU-Utilization \
    4.  --alarm-description "Alarm when CPU exceeds 80%" \
    5.  --metric-name CPUUtilization \
    6.  --namespace AWS/RDS \
    7.  --statistic Average \
    8.  --period 300 \
    9.  --threshold 80 \
    10.  --unit Percent \
    11.  --comparison-operator GreaterThanOrEqualToThreshold \
    12.  --dimensions  Name=DBInstanceIdentifier,Value=$RDS_ID  \
    13.  --evaluation-periods 1 \
    14.  --alarm-actions $TopicArn
  5. RDS:FreeStorageSpace? <= 5GB のメトリクスを作成(--threshold 5 --unit Gigabyte の設定は無効。Management Console上では0と表示される)
    1. aws --profile $AWS_PROFILE --region $AWS_REGION \
    2.  cloudwatch put-metric-alarm \
    3.  --alarm-name awsrds-${RDS_ID}-High-Free-Storage-Space \
    4.  --alarm-description "Alarm when Free-Storage-Space less than 5GB" \
    5.  --metric-name FreeStorageSpace \
    6.  --namespace AWS/RDS \
    7.  --statistic Average \
    8.  --period 300 \
    9.  --threshold 5242880000.0 \
    10.  --comparison-operator LessThanOrEqualToThreshold \
    11.  --dimensions  Name=DBInstanceIdentifier,Value=$RDS_ID  \
    12.  --evaluation-periods 1 \
    13.  --alarm-actions $TopicArn
  6. 作成したメトリクスを確認
    1. aws --profile $AWS_PROFILE --region $AWS_REGION \
    2.   cloudwatch describe-alarms --alarm-names awsrds-${RDS_ID}-High-CPU-Utilization awsrds-${RDS_ID}-High-Free-Storage-Space

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2017-12-12 (火) 17:46:02 (194d)