amazon elasticsearch serviceを利用したawsのログ活用
TRANSCRIPT
![Page 1: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/1.jpg)
Amazon Elasticsearch Serviceを利用したAWSのログ活用
1
![Page 2: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/2.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved
自己紹介
名前:藤本 真司
所属:クラスメソッド株式会社
やってること:AWSの導入支援、構築
好きなAWSサービス:AWS Lambda
好きなアニメ:のんのんびより(りぴーと)
![Page 3: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/3.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved
月間100万PVの技術系情報サイト Developers.IO
3http://dev.classmethod.jp/
![Page 4: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/4.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 4
お話すること
• ログの活用って?
• Amazon Elasticsearch Serviceについて
• Amazon Elasticsearch ServiceによるAWSログの可視化・分析(ケーススタディ)
![Page 5: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/5.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 5
ある日の運用現場
・・・
LB
Web/AP DB
ユーザー
よくあるWEBシステム
遅いなぁ。。
![Page 6: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/6.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 6
ある日の運用現場
ユーザー
システム管理者
DB担当AP/OS担当NW担当
何か全体的にポータルページが遅いみたいなんだけど
みんな調べて
![Page 7: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/7.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 7
ある日の運用現場
・・・
LB
Web/AP DB
システム管理者
NW担当 AP/OS担当 DB担当
ログにエラー出力なし レスポンスタイムは悪い SQLのクエリは問題ない
結局原因は・・?
![Page 8: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/8.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 8
みなさん、
ログを活用していますか?
![Page 9: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/9.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 9
ログの活用とは?
![Page 10: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/10.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 10
ログの活用とは?
収集 集約
監視 通知
・・・・・・ 可視化 分析
![Page 11: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/11.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 11
お話すること
• ログの活用って?
• Amazon Elasticsearch Serviceについて
• Amazon Elasticsearch ServiceによるAWSログの可視化・分析(ケーススタディ)
![Page 12: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/12.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved
• 2015/10/1にリリース(現地時間)
• AWSマネージドサービスのElasticsearch / Kibana
• 東京リージョン対応
12
Amazon Elasticsearch Serviceリリース!!
![Page 13: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/13.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved
• OSSの検索 / 分析エンジン– Luceneベース
– 高拡張性 / 高可用性
– スキーマレス(スキーマ定義も可)
– RESTful APIによる操作
– 豊富な検索オプション
• ユースケース– 全文検索
– ログ分析
– リアルタイムアプリケーション分析
• 豊富な周辺ツール– Logstashログ処理ツール
– Kibanaデータ可視化・分析ツール
13
Elasticsearchとは?
呼んだ?
![Page 14: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/14.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved
• Elasticsearchのデータ可視化・分析ツール
• 多様な多次元の可視化方法
– 円グラフ
– エリアチャート
– ラインチャート
– マップ、などなど
• 強力なElasticsearchの検索
14
Kibanaとは?
![Page 15: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/15.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 15
Elasticsearch
と
Amazon Elasticsearch Service
![Page 16: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/16.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved
• AWSマネージドサービス
• IAMポリシーによるアクセス制御
• CloudWatch Logsとの連携
• プラグインがデフォルトで利用可
• 従量制の料金体系
16
Amazon Elasticsearch Serviceの特徴
![Page 17: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/17.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 17
AWSマネージドサービスのElasticsearch
• 構築の簡略化
– 画面操作、APIによるデプロイ
– OS、アプリケーションのインストール/設定不要
– 自由度の高い構成設定
• インスタンスタイプ指定
• ディスクタイプ指定
• Master Node / Data Node
• マルチAZ
• 運用の簡略化
– 容易なスケール
– 障害の自動検出、および自動ノード交換
– 自動定期スナップショット(手動スナップショットも可)
– CloudWatchによるリソースモニタリング、イベント監視
Availability Zone 1 Availability Zone 2
Master Master
Data Data
Pri1 Rep1 Pri2Rep2
![Page 18: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/18.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 18
IAMポリシーによるアクセス制御
• IPアドレスによる制御
• リソースによる制御
• IAM User / IAM Roleによる制御
![Page 19: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/19.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved
• ロググループをAmazon ESへSubscriptionするだけ
• 繋ぎのLambda Functionが自動生成
– AWSによって用意済み
• JSON形式の場合、何も不要(Elasticsearchによる自動型マッピング)
– AWS CloudTrail
• TEXT形式の場合、メッセージパターンを指定するだけ
– VPC Flow Logs
– Lambda Function
19
CloudWatch LogsとAmazon ESの連携
自動生成
CloudWatch Logs Lambda Amazon ES
![Page 20: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/20.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved
• Kibana 4 / Kibana 3– データの可視化
• Analysis-icu– 文字の正規化
• Analysis-kuromoji– 日本語の形態素解析
• Jetty– SSL Connection、ベーシック認証
• cloud-aws– S3を利用したスナップショットリポジトリ– EC2上でのクラスタリング
20
プラグインがデフォルトで利用可
![Page 21: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/21.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved
• Elasticsearchのバージョン選択
• VPC対応
• プラグインのインストール(コマーシャルプラグイン含む)
• Dynamic Script
• ユーザー辞書
• 一部のElasticsearch API(*)
• TCP Transport(サポートしない)
• Elastic社のサポート
(*) http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-gsg-supported-operations.html
21
出来ないこと
![Page 22: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/22.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 22
AWSにおけるログ可視化・分析
収集 集約
監視 通知
可視化 分析・・・・・・
![Page 23: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/23.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 23
お話すること
• ログの活用って?
• Amazon Elasticsearch Serviceについて
• Amazon Elasticsearch ServiceによるAWSログの可視化・分析(ケーススタディ)
![Page 24: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/24.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 24
ケーススタディ
ログデータを可視化・分析し、
ボトルネック箇所を特定せよ
![Page 25: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/25.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 25
ログ活用していない運用現場
・・・
LB
Web/AP DB
システム管理者
NW担当 AP/OS担当 DB担当
![Page 26: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/26.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 26
ある日の運用現場をAWSに置き換え
LB
Web/AP DB
ユーザー
ユーザー ELB EC2 RDS
![Page 27: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/27.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 27
Amazon ESによるログ可視化・分析
![Page 28: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/28.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 28
解析に必要なログ / データ
ELB
EC2
RDS(MySQL)
S3
アクセスログURL・各種処理時間
ApacheのアクセスログURL・レスポンスタイム
スロークエリログSQL・クエリタイム
![Page 29: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/29.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 29
各種ログデータのAmazon ESへの投入
ELB
EC2
RDS(MySQL)
S3
スケジューリングは?
ETL処理は?
Amazon ES
![Page 30: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/30.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 30
EC2 Amazon ES
![Page 31: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/31.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 31
EC2 -> Amazon ES
![Page 32: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/32.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved
• スケジューリング
– リアルタイム収集
• Extract(ファイルからのメッセージ抽出)
– Logstash file Input Plugin
• Transform(JSONへの加工)
– Logstash grok Filter Plugin
• Load(Amazon ESへの投入)
– logstash-output-amazon_es
– AWS提供のAmazon ESへのLogstash Output Plugin
• 詳しくはブログを。。– http://dev.classmethod.jp/cloud/aws/amazon-es-using-logstash-plugin/
32
Logstashによる実装
![Page 33: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/33.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 33
ELB Amazon ESS3
![Page 34: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/34.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 34
ELB -> Amazon ES
![Page 35: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/35.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved
• スケジューリング– S3 Object Createdイベントによる発火
• Extract(S3のオブジェクト取得)– S3エンドポイントへのGetObject API
– Range指定により一回のダウンロードサイズを指定可能
– 一回のLambda Functionで終わらないようなサイズの場合、LambdaFunctionをChainすることも可能
• Transform(JSONへの加工)– 要実装(サンプルコードあり)
https://github.com/awslabs/amazon-elasticsearch-lambda-samples
• Load(Amazon ESへの投入)– ElasticsearchのBulk APIを利用して一括投入
• 詳しくはブログを。。– http://dev.classmethod.jp/cloud/aws/elb-accesslog-to-elasticsearch/
35
AWS Lambdaによる実装
![Page 36: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/36.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 36
RDS for MySQL Amazon ES
![Page 37: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/37.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 37
RDS for MySQL -> Amazon ES
![Page 38: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/38.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved
• スケジューリング– スケジュールイベントによる発火
• Extract(AWS APIによる取得)– RDSエンドポイントへのDownloadDBLogFilePortion API
– Marker指定により準リアルタイムな取り込み可能
– 一回のLambda Functionで終わらないようなサイズの場合、LambdaFunctionをChainすることも可能
• Transform(JSONへの加工)– 要実装
• Load(Amazon ESへの投入)– ElasticsearchのBulk APIを利用して一括投入
• 詳しくはブログを。。– http://dev.classmethod.jp/cloud/aws/rds-mysql-slowquerylog-to-es/
38
AWS Lambdaによる実装
![Page 39: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/39.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 39
Amazon ESによるログ可視化・分析
![Page 40: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/40.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 40
ELBのアクセスログ
どのURLへのリクエストがボトルネックなのか判明
← タイムスタンプ →
↑
処理時間
↓
![Page 41: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/41.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 41
Apacheのアクセスログ
インスタンスレベルの処理時間差が判明
↑
処理時間
↓
WEB-01 WEB-02← タイムスタンプ →
![Page 42: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/42.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 42
RDS for MySQLのスロークエリログ
どのSQLがボトルネックなのか判明
← タイムスタンプ →
↑
処理時間
↓
![Page 43: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/43.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 43
まとめ
• ログ活用の大切さ– ログからシステムをモニタリングできる
– 課題があればログからクリアできないか考える
• Amazon Elasticsearch Service– 従量制の課金体系。まず使ってみる。
• AWSのルールに則ったログ活用
– 各種サービスで収集可能なログを理解する
– 各種ログから活用可能な情報を選別する
– 各種ログを活用するためのAWSを知る
![Page 44: Amazon Elasticsearch Serviceを利用したAWSのログ活用](https://reader034.vdocuments.net/reader034/viewer/2022042505/5877cbf21a28ab39588b6c8f/html5/thumbnails/44.jpg)
Copyright (C) CLASSMETHOD All Rights Reserved 44
2016/02/20 Developers.IO 2016