【AWS Black Belt Online Seminar】 Amazon CloudWatch アマゾンウェブサービスジャパン株式会社 パートナー ソリューション アーキテクト 酒徳 知明 2016.07.06 内容についての注意点 本資料では2016年7月6日時点のサービス内容および価格についてご説明しています。最新の情報は AWS公式ウェブサイト(http://aws.amazon.com)にてご確認ください。 資料作成には十分注意しておりますが、資料内の価格とAWS公式ウェブサイト記載の価 格に相違があった場合、AWS公式ウェブサイトの価格を優先とさせていただきます。 価格は税抜表記となっています。日本居住者のお客様が東京リージョンを使用する場合、 別途消費税をご請求させていただきます。 AWS does not offer binding price quotes. AWS pricing is publicly available and is subject to change in accordance with the AWS Customer Agreement available at http://aws.amazon.com/agreement/. Any pricing information included in this document is provided only as an estimate of usage charges for AWS services based on certain information that you have provided. Monthly charges will be based on your actual use of AWS services, and may vary from the estimates provided. 2 自己紹介 酒徳 知明(さかとく ともあき) エコシステム ソリューション部 パートナー ソリューション アーキテクト • エンタープライズ SIパートナー様のご支援 • ISVパートナー様のご支援 • 好きなAWSサービス • AWS運用系サービス 3 AWSのクラウド運用 • コスト最適化 • 監視 • ログ管理 • Well Architected • 標準化 • テンプレート • API管理 クラウド運用 • 監査 • 構成管理、変更管理 • コンプライアンス強化 4 Amazon CloudWacth • CloudWatch • AWS上で稼働するシステム監視サービス 死活監視 / 性能監視 / キャパシティ監視 • CloudWatch Logs • ログ管理プラットフォーム サービス EC2上のOS, APPのログ AWSマネージド サービスのログ CloudWatch 5 • CloudWatch Events • AWS上リソースの状態監視サービス • AWSリソースに対するイベントをトリ ガーにアクションを実行する機能 Amazon CloudWacth • CloudWatch • AWS上で稼働するシステム監視サービス 死活監視 / 性能監視 / キャパシティ監視 • CloudWatch Logs • ログ管理プラットフォーム サービス EC2上のOS, APPのログ AWSマネジドサービスのログ CloudWatch 6 • CloudWatch Events • AWS上リソースの状態監視サービス • AWSリソースに対するイベントをトリ ガーにアクションを実行する機能 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 7 Amazon CloudWatch Amazon CloudWatch Metrics Metrics Name (CPUUtiliization) Metrics Name (HealthyHostCount) Amazon CloudWatch Metrics Name Space (AWS/EC2) Name Space (AWS/RDS) Name Space (AWS/ELB) Metrics Name (CPUUtiliization) Metrics Name (CPUUtiliization) (HealthyHostCount) Namespace Metrics Name Amazon CloudWatch Metrics Name Space (AWS/EC2) Name Space (AWS/RDS) Name Space (AWS/ELB) Metrics Name (CPUUtiliization) Metrics Name (CPUUtiliization) (HealthyHostCount) Dimension (InstanaceId) Dimension (InstanaceId) Namespace Dimension Dimension (InstanaceId) Metrics Name Amazon CloudWatch Metrics Name Space (AWS/EC2) Name Space (AWS/RDS) Name Space (AWS/ELB) Statistic Sum Namespace Metrics Name (CPUUtiliization) Metrics Name (CPUUtiliization) Dimension (InstanaceId) Dimension (InstanaceId) Metrics Name (HealthyHostCount) Max Dimension Dimension (InstanaceId) Min Average Simple Count CloudWatchに対応するAWSサービス 13 AWS サービス 名前空間 AWS の製品 名前空間 Auto Scaling AWS/AutoScaling Amazon Kinesis Streams AWS/Kinesis AWS Billing AWS/Billing Amazon Kinesis Firehose AWS/Firehose Amazon CloudFront AWS/CloudFront AWS Lambda AWS/Lambda Amazon CloudSearch AWS/CloudSearch Amazon Machine Learning AWS/ML Amazon CloudWatch Events AWS/Events AWS OpsWorks AWS/OpsWorks Amazon CloudWatch Logs AWS/Logs Amazon Redshift AWS/Redshift Amazon DynamoDB AWS/DynamoDB Amazon Relational Database Service AWS/RDS Amazon EC2 Container Service AWS/ECS Amazon Route 53 AWS/Route53 Amazon ElastiCache AWS/ElastiCache Amazon Simple Notification Service AWS/SNS Amazon Elastic Block Store AWS/EBS Amazon Simple Queue Service AWS/SQS Amazon Elastic Compute Cloud AWS/EC2 Amazon Simple Storage Service AWS/S3 Amazon EC2 Spot AWS/EC2Spot Amazon Simple Workflow Service AWS/SWF Elastic Load Balancing AWS/ELB AWS Storage Gateway AWS/StorageGateway Amazon Elastic MapReduce AWS/ElasticMapReduce AWS WAF AWS/WAF Amazon Elasticsearch Service AWS/ES Amazon WorkSpaces AWS/WorkSpaces http://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/DeveloperGuide/supported_services.html CloudWatch利用イメージ 標準メトリックス監視 対象インスタンス検索ウィンドウ 標準メトリックス一覧 ディメンション グラフ表示期間設定 統計情報(単位) 14 CloudWatchのメトリックス 標準メトリックス (EC2) CPUUtilization CPUCreditBalance CPUCreditUsage DiskReadBytes DiskWriteBytes DiskWriteOps NetworkOut NetworkIn StatusCheckFailed_Instance StatusCheckFailed StatusCheckFailed_System 15 カスタムメトリックス 標準メトリックスでは 収集できないメトリックス CloudWatch カスタムメトリックス • 標準メトリックス以外の独自メトリックスも監視可能 – AWS CLIの”put-metric-data”、API Toolsの”mon-put-data”、もしく は”PutMetricData” APIでデータを登録 – サイズ制限として、HTTP GETは8KB、HTTP POSTは40KB、1つの PutMetricDataリクエストに20データ • $ 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 ←統計セットの登録 APIコールにスロットリングあり – 16 カスタムメトリックスの頻繁な登録や頻度の高いデータ取得には注意 CloudWatch のメトリックス値 • CloudWatchで取得される情報は統計情報 – – メトリックスデータを指定した期間で集約したもの それぞれのメトリックスについて適切な統計情報を見る必要がある • メトリックスデータの保管は2週間まで – 2週間以上保存する場合は、get-metric-statisticsでデータを取得し別の場所に保管しておく • データ保管粒度は最短で1分間隔 – 多くのサービスで1分間隔、5分間隔のものもある http://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/DeveloperGuide/cloudwatch_concepts.html 17 Amazon EC2 のモニタリングタイプ 18 基本モニタリング 詳細モニタリング 無料 追加料金が必要 データは 5分間隔のものを 閲覧可能 データは 1分間隔のものを 閲覧可能 Amazon CloudWatch を使ったアラーム設定 OK アラーム (Alarm) 定義された閾値を 下回っている (正常値) 定義された閾値を 上回っている (異常値) 不足 (INSUFFICIENT) データが不足のため、 状態を判定できない (判定不能) CloudWatch特有のステータス 19 INSUFFICIENT_DATA の考え方 • CloudWatchはデータポイントを基準にステータスを判断 – データポイントとはCloudWatchに送信される値(CPU値など) – OK / アラーム時は入力されたデータポイントを基準に状態評価 – INSUFFIENT時はCloudWatchにテータポイントの入力が無い状態 → “INSUFFICIENT”は必ずしも障害を表すステータスではない OK / ALARM INSUFFICIENT データポイント 自体が存在しない データポイント EC2 20 CloudWatch EC2 CloudWatch Amazon CloudWatch のアクション機能 モニタリング アクション Custom Metric Memory Free / Filesystem Free Notification StatusCheckFailed_Instance StatusCheckFailed_System EC2 CPUUtilization DiskReadBytes / DiskReadOps DiskWriteBytes / DiskWriteOps NetworkIn / NetworkOut EC2 Action CloudWatch AutoScaling 21 Amazon CloudWatch アラーム・通知の設定 • CPU使用率を監視対象 • CPU使用率80%以上が3期間(ここでは1期間=5分)以上 23 Amazon EC2 Auto Recovery • EC2の自動復旧 – EC2インスタンスが稼働しているAWSシステムに障害が 発生した場合に、自動的にEC2インスタンス復旧する機能。 • ネットワーク接続喪失 • システム電源喪失 • 物理ホストの障害 • 対応するインスタンスタイプ – C3, C4, M3, R3, T2インスタンス • VPC内のインスタンス – EC2クラシックは未対応 – ハードウェア専有インスタンスは未対応 • EBS-Backedインスタンスのみ 24 http://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/ec2-instance-recover.html Auto Recovery の注意事項① • IAMアカウントを使用してアラームを作成または変更す る場合、次の Amazon EC2 のアクセス権限が必要です – ec2:DescribeInstanceStatus と ec2:DescribeInstances。 Amazon EC2 インスタンスステータスメトリックスに対するす べてのアラーム用。 – ec2:StopInstances。停止アクションを含むアラーム用。 – ec2:TerminateInstances。終了アクションを含むアラーム用。 – ec2:DescribeInstanceRecoveryAttribute と ec2:RecoverInsta nces。復旧アクションを含むアラーム用。 25 http://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/ec2-instance-recover.html 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 26 (* 言語は英語でご確認ください) Metrics Monitoring (CloudWatch Dashboard) 27 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/ 28 クラウドならではの監視 29 https://vulcanpost.com/575341/servishero-survey-big-data/ CloudWatchによるコストの監視 • Billingアラーム設定 • 課金状況をCloudWatch監視 • 一定金額を超えるとアラームメール通知が可能 • アラームの設定はVirginiaリージョンから設定 30 メンテナンスイベントの監視 • AWSが予定するメンテナンス情報は事前にお客様にご 連絡させて頂きます。 マネジメントコンソールへの通知 31 メールでの通知 http://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/monitoring-instances-status-check_sched.html APIを使ったメンテナンスイベントの監視 aws ec2 describe-instance-status 32 サード パーティ監視ツールの必要性 • 監視対象の制限 – ハイブリッド環境の監視 • データ保存期間(2週間の保存) • データ保管粒度は最短で1分間隔 • アラートの制限 – 複合アラートの設定 – 重要度の設定 • アクション機能 33 サード パーティ監視ツールとの連携 • サードパーティ監視ツールの確認ポイント AWSに対応しているか CloudWatchとの連携機能の有無 その他、AWSサービス連携の有無 CloudWatchカスタムメトリックスに対応しているか EC2インスタンス自動検出・自動削除が可能か https://aws.amazon.com/jp/solutions/partne r-central/esp-catalog/ 34 http://aws.typepad.com/aws_partner_sa/2015/06/aws-ops.html Amazon CloudWacth • CloudWatch • AWS上で稼働するシステム監視サービス 死活監視 / 性能監視 / キャパシティ監視 • CloudWatch Logs • ログ管理プラットフォーム サービス EC2上のOS, APPのログ AWSマネジドサービスのログ CloudWatch 35 • CloudWatch Events • AWS上リソースの状態監視サービス • AWSリソースに対するイベントをトリ ガーにアクションを実行する機能 AWS プラットフォームのログ活用 OS / APP RDS DMS ※一部サービスを抜粋 チャット API Gateway 電話 VPC Flow Log 通知 Kinesis CloudTrail アラート CloudWatch Logs 可視化 Lambda Detailed Billing アクション エクスポート S3 ELB 他ツール連携 S3 Access Logs Config Cloudfront Redshift CloudWatch Logs Log Agent Log Agent 通知: CloudWatch Alarm Amazon Linux Ubuntu Log Agent Log Agent Windows エクスポート: Amazon Kinesis Firehose Red Hat Linux CloudWatch Logs VPC Flow Log CloudTrail 37 Lambda RDS 可視化: Amazon Elasticsearh Service (Kibana) CloudWatch Logsのログ管理 Log Group Log Stream web001.ap-northeast-1 Web Server web002.ap-northeast-1 web003.ap-northeast-1 38 Log Event ログの保存期間 • CloudWatch Logsはログの保存期間を設定可能 39 ログモニタリングイメージ • ログ内容はタイムスタンプとログメッセージ(UTF-8)で構成 40 CloudWatch Logs Metric Filter(1/3) • ログイベントから特定の文字列のフィルタリングが可能 41 CloudWatch Logs Metric Filter(2/3) • 特定文字列のエントリ頻度によりアラーム作成が可能 → コンソールへのログインが失敗するとアラーム警告 42 CloudWatch Logs Metric Filter(3/3) • Metric Filterからアラーム作成、SNS連携が可能 Metric FilterをトリガーにしたCloudWatch アラームの作成が可能 43 RDS 拡張モニタリング • CPU、メモリ、ファイルシステムやディスクI/Oなどの50を超えるメ トリクスが取得可能 • 拡張モニタリング データはJSON形式でCloudWatch Logsに蓄積 • 対応しているDB(db.t1.micro と db.m1.small を除く) – Amazon Aurora – MariaDB – Microsoft SQL Server – MySQL (バージョン 5.5 以降) – Oracle – PostgreSQL RDS 44 CloudWatch Logs VPC Flow Log 46 Amazon Elasticsearch Service との連携 • Elasticsearchクラスタを数分間で起動できるマネージ ドサービス • Kibanaが組み込まれており、即座にデータのビジュア ライズに着手できる • すでに東京リージョンでも利用可能 • CloudWatch Logs インテグレーションがとても簡単 CloudWatch Logs 47 Elasticsearch Service CloudWatch Logs と Elasticsearch Service の連携設定 ① CloudWatch Logsに蓄積されたログを簡単にAmazon Elasticsearch Service (AES) にインポート 48 CloudWatch Logs と Elasticsearch Service の連携設定 ② ログを転送するElasticsearch Service Clusterとログフォーマットを設定 事前に作成されたクラスタから選択 必要に応じフィルターパターンを変更 49 Kibana Dashboard 50 ログのエクスポート • ロググループ単位でCWLに蓄積されたログをS3にエクスポート $ aws logs create-export-task --task-name "myexport-06152016" --log-group-name ”LOGGROUP NAME" --from 1465484400 --to 1465570800 --destination "cwl-export-logs" 51 https://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/DeveloperGuide/S3ExportTasks.html CloudWatch Logs Subscription • CloudWatch Logsに収集されたログをリアルタイムに Kinesisに転送可能 – Kinesis Applicationでログに対してロジックを記述 – CloudWatch Logsには指定した保管期間ログが保管される – 設定はAWS CLIから実装 Log Agent EC2 52 CloudWatch Logs Kinesis Kinesis Application https://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/DeveloperGuide/Subscriptions.html awslogs (https://github.com/jorgebastida/awslogs) Log Group 53 Log Stream https://github.com/jorgebastida/awslogs Log Record CloudWatch Logs料金体系 無料枠 (1カ月あたり) 従量課金 インジェクション 5GB $0.76 / GB アーカイブ 5GB $0.033 GB / 月 10メトリックス、10アラーム、および100万の API リクエストの無料利用枠を準備 http://aws.amazon.com/jp/cloudwatch/pricing/ 54 Amazon CloudWacth • CloudWatch • AWS上で稼働するシステム監視サービス 死活監視 / 性能監視 / キャパシティ監視 • CloudWatch Logs • ログ管理プラットフォーム サービス EC2上のOS, APPのログ AWSマネジドサービスのログ • CloudWatch Events CloudWatch 55 • AWS上リソースの状態監視サービス • AWSリソースに対するイベントをトリ ガーにアクションを実行する機能 AWS上に構築された多くのシステムが Pollingモデルで動作 - DescribeInstances - DescribeVolumes - ListQueues CloudWatch Events コンポーネント イベントソース • 対象となるリソースの指定 • 処理が実行されるタイミング 選択(状態) 57 ターゲット • 実行する処理を決定 • 処理内容を事前定義(AWS Lambda) or Bullet-inの利用 ルール • 定義したイベントソースと ルールの組み合わせ イベントソースの選択 • 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 ターゲットの選択 • • • • Lambda Function SNS Topic Kinesis Stream Built-in target – – – – 59 EBSボリュームのスナップショット作成 EC2インスタンスの再起動 EC2インスタンスの削除 EC2インスタンスの停止 CloudWatch Event を利用する準備 • User accounts { "Version": "2012-10-17", "Statement": [ { "Action": [ "events:*", "iam:PassRole" ], "Effect": "Allow", "Resource": "*" } ] – IAMユーザに “events:*”, “iam:PassRole” のパーミッションが必要 • AWS CloudTrail logging – AWS API callをイベントソースに指定す る場合は事前にCloudTrailを有効にする必 要あり • AWS Security Token Service – リージョンのエンドポイントが有効に なっているかの確認(デフォルトでは有効)。 60 } 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 61 CloudWatch Events の利用例 * サンプルコードあり ① 定期的なスケジュール実行 https://docs.aws.amazon.com/ja_jp/lam bda/latest/dg/with-scheduledevents.html 62 ② 特定のタグを付与する http://blogs.aws.amazon.com/security/post /Tx150Z810KS4ZEC/How-to-AutomaticallyTag-Amazon-EC2-Resources-in-Responseto-API-Events ③ 特定のタグの付与がない EC2は起動させない https://speakerdeck.com/tmorinaga/opsj aws-number-4-cloudwatch-events-handson 価格 • 100万カスタムイベントあたり$1.00 ペイロード 64 KB (切り上げ) につき 1 つのカスタムイベントとして請求されます。例 えば、ペイロードが 256 KB である 1 つのカスタムイベントは、4 つのカスタムイベ ントとして請求されます。また、ペイロードが 65 KB である 1 つのカスタムイベント は、2 つのカスタムイベントとして請求されます。 63 https://aws.amazon.com/cloudwatch/pricing/?nc1=h_ls Amazon CloudWatch Metrics Name Space (AWS/EC2) Name Space (AWS/RDS) Name Space (AWS/ELB) Metrics Name (CPUUtiliization) Metrics Name (CPUUtiliization) Metrics Name Dimension (InstanaceId) Dimension (InstanaceId) Dimension (InstanaceId) Statistic Namespace Dimension Dashboard Sum Max (HealthyHostCount) Min Average Alert Simple Count Rules CloudWatch Logs CloudWatch Events Filtering Event Rule Action Amazon CloudWacth • CloudWatch • AWS上で稼働するシステム監視サービス 死活監視 / 性能監視 / キャパシティ監視 • CloudWatch Logs • ログ管理プラットフォーム サービス EC2上のOS, APPのログ AWSマネージド サービスのログ • CloudWatch Events CloudWatch 65 • AWS上リソースの状態監視サービス • AWSリソースに対するイベントをトリ ガーにアクションを実行する機能 AWSのクラウド運用 • コスト最適化 • 監視 • ログ管理 • Well Architected • 標準化 • テンプレート • API管理 クラウド運用 • 監査 • 構成管理、変更管理 • コンプライアンス強化 66 AWS運用コミュニティ(OpsJAWS) ~クラウドによる、クラウドのための、クラウド運用管理~ AWS上に構築されたシステムの 運用管理のベストプラクティスを集約! https://opsjaws.doorkeeper.jp/ @OpsJAWS http://aws.typepad.com/ aws_partner_sa/2015/06/aws-ops.html オンラインセミナー資料の配置場所 • AWS クラウドサービス活用資料集 – http://aws.amazon.com/jp/aws-jp-introduction/ • AWS Solutions Architect ブログ – 最新の情報、セミナー中のQ&A等が掲載されています – http://aws.typepad.com/sajp/ 68 公式Twitter/Facebook AWSの最新情報をお届けします 検索 @awscloud_jp もしくは http://on.fb.me/1vR8yWm 最新技術情報、イベント情報、お役立ち情報、 お得なキャンペーン情報などを日々更新しています! 69 AWSの導入、お問い合わせのご相談 • AWSクラウド導入に関するご質問、お見積り、資料請 求をご希望のお客様は、以下のリンクよりお気軽にご相 談ください https://aws.amazon.com/jp/contact-us/aws-sales/ 70 ※「AWS 問い合わせ」で検索してください
© Copyright 2025 ExpyDoc