More Related Content Similar to Black Belt Online Seminar Amazon CloudWatch (20) More from Amazon Web Services Japan (20) Black Belt Online Seminar Amazon CloudWatch1. 【AWS Black Belt Online Seminar】
Amazon CloudWatch
アマゾンウェブサービスジャパン株式会社
パートナー ソリューション アーキテクト 酒徳 知明
2016.07.06
5. 5
• CloudWatch
• AWS上で稼働するシステム監視サービス
死活監視 / 性能監視 / キャパシティ監視
• CloudWatch Logs
• ログ管理プラットフォーム サービス
EC2上のOS, APPのログ
AWSマネージド サービスのログ
• CloudWatch Events
• AWS上リソースの状態監視サービス
• AWSリソースに対するイベントをトリ
ガーにアクションを実行する機能
Amazon CloudWacth
CloudWatch
6. 6
• CloudWatch
• AWS上で稼働するシステム監視サービス
死活監視 / 性能監視 / キャパシティ監視
• CloudWatch Logs
• ログ管理プラットフォーム サービス
EC2上のOS, APPのログ
AWSマネジドサービスのログ
• CloudWatch Events
• AWS上リソースの状態監視サービス
• AWSリソースに対するイベントをトリ
ガーにアクションを実行する機能
Amazon CloudWacth
CloudWatch
7. 7
Amazon CloudWatchとは
• AWSの各種リソースを監視するマネージドサービス
– AWSリソースの死活、性能、キャパシティ
– 取得メトリックスのグラフ化 (可視化)
– 各メトリックスをベースとしたアラーム(通知)、アクションの設定が可能
• 多くのAWSサービスの監視が可能
– Amazon EC2
– Amazon EBS
– Amazon RDS
– Elastic Load Balancing など
http://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/DeveloperGuide/supported_services.html
12. Amazon CloudWatch
Metrics Name
(CPUUtiliization)
Metrics Name
(HealthyHostCount)
Name Space
(AWS/EC2)
Name Space
(AWS/RDS)
Name Space
(AWS/ELB)
Metrics Name
(CPUUtiliization)
Dimension
(InstanaceId)
Dimension
(InstanaceId)
Dimension
(InstanaceId)
Sum
Max
Min
Average
StatisticMetrics
Namespace
Dimension
Simple Count
13. 13
CloudWatchに対応するAWSサービス
AWS サービス 名前空間
Auto Scaling AWS/AutoScaling
AWS Billing AWS/Billing
Amazon CloudFront AWS/CloudFront
Amazon CloudSearch AWS/CloudSearch
Amazon CloudWatch Events AWS/Events
Amazon CloudWatch Logs AWS/Logs
Amazon DynamoDB AWS/DynamoDB
Amazon EC2 Container Service AWS/ECS
Amazon ElastiCache AWS/ElastiCache
Amazon Elastic Block Store AWS/EBS
Amazon Elastic Compute Cloud AWS/EC2
Amazon EC2 Spot AWS/EC2Spot
Elastic Load Balancing AWS/ELB
Amazon Elastic MapReduce AWS/ElasticMapReduce
Amazon Elasticsearch Service AWS/ES
AWS の製品 名前空間
Amazon Kinesis Streams AWS/Kinesis
Amazon Kinesis Firehose AWS/Firehose
AWS Lambda AWS/Lambda
Amazon Machine Learning AWS/ML
AWS OpsWorks AWS/OpsWorks
Amazon Redshift AWS/Redshift
Amazon Relational Database Service AWS/RDS
Amazon Route 53 AWS/Route53
Amazon Simple Notification Service AWS/SNS
Amazon Simple Queue Service AWS/SQS
Amazon Simple Storage Service AWS/S3
Amazon Simple Workflow Service AWS/SWF
AWS Storage Gateway AWS/StorageGateway
AWS WAF AWS/WAF
Amazon WorkSpaces AWS/WorkSpaces
http://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/DeveloperGuide/supported_services.html
16. 16
CloudWatch カスタムメトリックス
• 標準メトリックス以外の独自メトリックスも監視可能
– AWS CLIの”put-metric-data”、API Toolsの”mon-put-data”、もしく
は”PutMetricData” APIでデータを登録
– サイズ制限として、HTTP GETは8KB、HTTP POSTは40KB、1つの
PutMetricDataリクエストに20データ
• APIコールにスロットリングあり
– カスタムメトリックスの頻繁な登録や頻度の高いデータ取得には注意
$ aws cloudwatch put-metric-data –metric-name RequestLatency¥
--namespace "GetStarted“¥
--timestamp 2014-10-28T12:30:00Z¥
--value 87 ¥
--unit Milliseconds¥
$ aws cloudwatch put-metric-data --metric-name RequestLatency¥
--namespace "GetStarted“¥
--timestamp 2014-10-28T12:30:00Z¥
--statistic-value Sum=60,Minimum=15,Maximum=105,SampleCount=5
←単一値の登録
←統計セットの登録
17. 17
CloudWatch のメトリックス値
• CloudWatchで取得される情報は統計情報
– メトリックスデータを指定した期間で集約したもの
– それぞれのメトリックスについて適切な統計情報を見る必要がある
• メトリックスデータの保管は2週間まで
– 2週間以上保存する場合は、get-metric-statisticsでデータを取得し別の場所に保管しておく
• データ保管粒度は最短で1分間隔
– 多くのサービスで1分間隔、5分間隔のものもある
http://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html
21. 21
Amazon CloudWatch のアクション機能
AutoScaling
EC2 Action
モニタリング
CPUUtilization
DiskReadBytes / DiskReadOps
DiskWriteBytes / DiskWriteOps
NetworkIn / NetworkOut
StatusCheckFailed_Instance
StatusCheckFailed_System
EC2 CloudWatch
Custom Metric
Memory Free / Filesystem Free
アクション
Notification
23. 24
Amazon EC2 Auto Recovery
• EC2の自動復旧
– EC2インスタンスが稼働しているAWSシステムに障害が
発生した場合に、自動的にEC2インスタンス復旧する機能。
• ネットワーク接続喪失
• システム電源喪失
• 物理ホストの障害
• 対応するインスタンスタイプ
– C3, C4, M3, R3, T2インスタンス
• VPC内のインスタンス
– EC2クラシックは未対応
– ハードウェア専有インスタンスは未対応
• EBS-Backedインスタンスのみ
http://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/ec2-instance-recover.html
24. 25
Auto Recovery の注意事項①
• IAMアカウントを使用してアラームを作成または変更す
る場合、次の Amazon EC2 のアクセス権限が必要です
– ec2:DescribeInstanceStatus と ec2:DescribeInstances。
Amazon EC2 インスタンスステータスメトリックスに対するす
べてのアラーム用。
– ec2:StopInstances。停止アクションを含むアラーム用。
– ec2:TerminateInstances。終了アクションを含むアラーム用。
– ec2:DescribeInstanceRecoveryAttribute と ec2:RecoverInsta
nces。復旧アクションを含むアラーム用。
http://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/ec2-instance-recover.html
25. 26
Auto Recovery の注意事項②
• AWS Security Token Service (AWS STS) を用いて許可さ
れた一時的な認証情報を使用している場合は、アラームアク
ションを用いて Amazon EC2 インスタンスを停止または終
了することはできません
• 暗号化ボリュームは未サポート
Currently, the recover action is not supported on:
• EC2-Classic instances
• Dedicated tenancy instances
• Instances running on dedicated hosts
• Instances with encrypted EBS volumes
• Instances that use any instance store volumes, including instances launched with block device
mappings for instance store volumes
http://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/ec2-instance-recover.html
(* 言語は英語でご確認ください)
27. 28
CloudWatchの料金
• 初期費用無しの従量課金
• 標準の監視は無料
– EC2インスタンスの標準監視(5分間隔)
– EBS、ELB、RDSは1分間隔が無料
• アラームやカスタムメトリックスは一定数まで無料
– 10メトリックス、10 アラーム、および100万APIリクエスト
– 1 か月あたり5GBのデータの取り込みおよび5GBのアーカイブされたストレージ
• 課金対象及び料金(2015年7月現在 Tokyoリージョン)
– EC2詳細モニタリング1インスタンスにつき$3.50/月
– カスタムメトリックス1つにつき$0.50/月
– アラーム1つにつき$0.10/月
– APIリクエスト1000回につき$0.01(Get, List, Putごとに)
http://aws.amazon.com/jp/cloudwatch/pricing/
33. 34
サード パーティ監視ツールとの連携
• サードパーティ監視ツールの確認ポイント
AWSに対応しているか
CloudWatchとの連携機能の有無
その他、AWSサービス連携の有無
CloudWatchカスタムメトリックスに対応しているか
EC2インスタンス自動検出・自動削除が可能か
http://aws.typepad.com/aws_partner_sa/2015/06/aws-ops.html
https://aws.amazon.com/jp/solutions/partne
r-central/esp-catalog/
34. 35
• CloudWatch
• AWS上で稼働するシステム監視サービス
死活監視 / 性能監視 / キャパシティ監視
• CloudWatch Logs
• ログ管理プラットフォーム サービス
EC2上のOS, APPのログ
AWSマネジドサービスのログ
• CloudWatch Events
• AWS上リソースの状態監視サービス
• AWSリソースに対するイベントをトリ
ガーにアクションを実行する機能
Amazon CloudWacth
CloudWatch
36. 37
CloudWatch Logs
Amazon Linux Ubuntu
Windows Red Hat Linux
CloudWatch Logs
通知:
CloudWatch Alarm
Log Agent Log Agent
Log Agent Log Agent
VPC Flow Log
可視化:
Amazon Elasticsearh Service
(Kibana)
エクスポート:
Amazon Kinesis Firehose
CloudTrail Lambda RDS
45. 47
Amazon Elasticsearch Service との連携
• Elasticsearchクラスタを数分間で起動できるマネージ
ドサービス
• Kibanaが組み込まれており、即座にデータのビジュア
ライズに着手できる
• すでに東京リージョンでも利用可能
• CloudWatch Logs インテグレーションがとても簡単
CloudWatch Logs Elasticsearch Service
46. 48
CloudWatch Logs と Elasticsearch Service の連携設定
① CloudWatch Logsに蓄積されたログを簡単にAmazon Elasticsearch Service
(AES) にインポート
47. 49
CloudWatch Logs と Elasticsearch Service の連携設定
② ログを転送するElasticsearch Service Clusterとログフォーマットを設定
事前に作成されたクラスタから選択
必要に応じフィルターパターンを変更
49. 51
ログのエクスポート
• ロググループ単位でCWLに蓄積されたログをS3にエクスポート
$ aws logs create-export-task --task-name "myexport-06152016" --log-group-name ”LOGGROUP NAME" --from 1465484400 --to
1465570800 --destination "cwl-export-logs"
https://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/DeveloperGuide/S3ExportTasks.html
50. 52
CloudWatch Logs Subscription
• CloudWatch Logsに収集されたログをリアルタイムに
Kinesisに転送可能
– Kinesis Applicationでログに対してロジックを記述
– CloudWatch Logsには指定した保管期間ログが保管される
– 設定はAWS CLIから実装
CloudWatch Logs Kinesis
Kinesis
Application
Log Agent
EC2
https://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/DeveloperGuide/Subscriptions.html
53. 55
• CloudWatch
• AWS上で稼働するシステム監視サービス
死活監視 / 性能監視 / キャパシティ監視
• CloudWatch Logs
• ログ管理プラットフォーム サービス
EC2上のOS, APPのログ
AWSマネジドサービスのログ
• CloudWatch Events
• AWS上リソースの状態監視サービス
• AWSリソースに対するイベントをトリ
ガーにアクションを実行する機能
Amazon CloudWacth
CloudWatch
56. 58
イベントソースの選択
• EC2 Instance states change notification
– Pending/Running/Shutting down/Stopped/Stopping/Terminated
• Schedule
– 間隔:分(Minites)/時間(Hours)/日(Days)
– クーロン表記
• AWS API call
– AWS CloudTrailにより発行されたイベント
• AWS console sign-in
• Auto Scaling
– Launch Successful/Launch Unsuccessful/Terminate
Successful/Terminate Unsuccessful
58. 60
CloudWatch Event を利用する準備
• User accounts
– IAMユーザに “events:*”,
“iam:PassRole” のパーミッションが必要
• AWS CloudTrail logging
– AWS API callをイベントソースに指定す
る場合は事前にCloudTrailを有効にする必
要あり
• AWS Security Token Service
– リージョンのエンドポイントが有効に
なっているかの確認(デフォルトでは有効)。
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"events:*",
"iam:PassRole"
],
"Effect": "Allow",
"Resource": "*"
}
]
}
59. 61
CloudWatch Events の第一歩
• CloudWatch Eventの出力ログの理解
– ルールの実行ログ(AWS Lambda)はCloudWath Logsに出力される
Lambda Functionサンプル
・インスタンスIDの取得
console.log(event.detail['instance-id']);
→ i-4f181ea
・インスタンス状態の取得
console.log(event.detail.state);
→ running
・インスタンス状態の取得
console.log(event.region);
→ ap-northeast-1
60. 62
CloudWatch Events の利用例
* サンプルコードあり
http://blogs.aws.amazon.com/security/post
/Tx150Z810KS4ZEC/How-to-Automatically-
Tag-Amazon-EC2-Resources-in-Response-
to-API-Events
② 特定のタグを付与する ③ 特定のタグの付与がない
EC2は起動させない
① 定期的なスケジュール実行
https://speakerdeck.com/tmorinaga/opsj
aws-number-4-cloudwatch-events-hands-
on
https://docs.aws.amazon.com/ja_jp/lam
bda/latest/dg/with-scheduled-
events.html
61. 63
価格
• 100万カスタムイベントあたり$1.00
ペイロード 64 KB (切り上げ) につき 1 つのカスタムイベントとして請求されます。例
えば、ペイロードが 256 KB である 1 つのカスタムイベントは、4 つのカスタムイベ
ントとして請求されます。また、ペイロードが 65 KB である 1 つのカスタムイベント
は、2 つのカスタムイベントとして請求されます。
https://aws.amazon.com/cloudwatch/pricing/?nc1=h_ls
62. Amazon CloudWatch
Metrics Name
(CPUUtiliization)
Metrics Name
(HealthyHostCount)
Name Space
(AWS/EC2)
Name Space
(AWS/RDS)
Name Space
(AWS/ELB)
Metrics Name
(CPUUtiliization)
Dimension
(InstanaceId)
Dimension
(InstanaceId)
Dimension
(InstanaceId)
Sum
Max
Min
Average
Statistic
Metrics Namespace Dimension
Simple Count
Dashboard
CloudWatch Logs
CloudWatch Events
Rules
Filtering
Event Rule
Alert
Action
63. 65
• CloudWatch
• AWS上で稼働するシステム監視サービス
死活監視 / 性能監視 / キャパシティ監視
• CloudWatch Logs
• ログ管理プラットフォーム サービス
EC2上のOS, APPのログ
AWSマネージド サービスのログ
• CloudWatch Events
• AWS上リソースの状態監視サービス
• AWSリソースに対するイベントをトリ
ガーにアクションを実行する機能
Amazon CloudWacth
CloudWatch