Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Amazon Lookout for Metrics触ってみた
Search
fumiakiueno
May 22, 2021
Technology
0
630
Amazon Lookout for Metrics触ってみた
2021/05/22
「AWSの基礎を学ぼう 特別編 最新サービスをみんなで触ってみる はじめての異常検知」
でお話した資料です。
fumiakiueno
May 22, 2021
Tweet
Share
More Decks by fumiakiueno
See All by fumiakiueno
AWS re:Inforce 2023 re:Cap
fu3ak1
1
150
AWS Security Jamのすすめ
fu3ak1
1
300
Learning AWS Security Services
fu3ak1
0
200
AWSのセキュリティサービスを学ぶ
fu3ak1
6
1.1k
re:Invent 2022 re:Cap
fu3ak1
0
360
なぜ我々は現地ラスベガスでreInventに参加するのか
fu3ak1
0
1.8k
AWS Control TowerとAWS Organizationsを活用した組織におけるセキュリティ設定
fu3ak1
5
4.3k
reInventガイドを書いたのでセッションおススメ情報をお伝えしたい
fu3ak1
2
1.3k
なぜ「Infrastructure as Code」が必要なのか
fu3ak1
1
6.4k
Other Decks in Technology
See All in Technology
エムスリー全チーム紹介資料 / Introduction of M3 All Teams
m3_engineering
1
310
「ばん・さく・つき・たー!」にならないためにSHIROBAKOから 学んだこと
ysknsid25
3
680
How CERN serves 1EB of data via FUSE
ennael
PRO
0
16k
業務ヒアリングと知識の呪い
tamai_63
0
290
Efficient zero-copy networking using io_uring
ennael
PRO
0
350
【swonet.conf_】NOCメンバーが語るSTMの実態!! ~ShowNetから若者への贈り物~
shownet
PRO
0
310
【shownet.conf_】革新と伝統を融合したファシリティ
shownet
PRO
0
340
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
2
240
ドキュメントとの付き合い方を考える
leveragestech
1
140
Databricks Appのご紹介
databricksjapan
0
220
エムスリーマネジメントチーム紹介資料 / Introduction of M3 Management Team
m3_engineering
0
280
PREEMPT_RT over the years
ennael
PRO
0
360
Featured
See All Featured
Designing for Performance
lara
604
68k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Building Applications with DynamoDB
mza
90
6k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
105
48k
Visualization
eitanlees
143
15k
A Philosophy of Restraint
colly
203
16k
Music & Morning Musume
bryan
46
6.1k
Robots, Beer and Maslow
schacon
PRO
157
8.2k
Agile that works and the tools we love
rasmusluckow
327
21k
Clear Off the Table
cherdarchuk
91
320k
Testing 201, or: Great Expectations
jmmastey
38
7k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
355
29k
Transcript
Amazon Lookout for Metrics触ってみた NRIネットコム株式会社 上野 史瑛 2021年5月22日
1 自己紹介 名前: 上野 史瑛(うえの ふみあき) 所属: NRIネットコム株式会社 経歴: ・各種Webシステムのインフラ構築・運用
- サーバ、ネットワーク管理や構築がメイン - オンプレとAWSの両方を経験 ・AWS最適化プロジェクトに参画 ・AWS技術検証や構成レビュー ・CCoE支援 ・2020/2021 APN Ambassadors ・2020/2021 APN AWS Top Engineers ・2020/2021 APN ALL AWS Certifications Engineer @fu3ak1
2 認定対策本も書いてます データベースももうすぐ!
3 会社紹介 WEBシステムを中心にソリューションを提供しています
4 会社紹介 AWSは特に力をいれて頑張っています ・資格取得数100 ・モバイルコンピテンシー取得 AWSでご相談があればご連絡ください →「NRIネットコム 問い合わせ」で検索
5 AWSエンジニア募集してます!
6 Amazon Lookout for Metricsを見ていく前に・・ 新サービスを触るときの私のやりかた
7 新サービスを触って理解するときの流れ 1. サービスの概要や目的をざっくり理解する 2. マネジメントコンソールから画面の手順に従って触ってみる 進めなくなったor不明点が出たら公式ドキュメント読む 3. ひととおり流し終えたら、詳細機能を見るなど深掘り 4.
(状況に応じて)ブログや登壇などでアウトプット
8 Amazon Lookout for Metricsを触ってみる
9 1. サービスの概要や目的をざっくり理解する
10 サービス概要ページを読む メトリクスの異常検出 メトリクス=S3、Redshift、RDSのデータ、サードパーティSaaS
11 特徴ページもおすすめ 概要ページよりもすこし詳細な情報が書いてある
12 2. マネジメントコンソールから画面の手順に従って触ってみる
13 今回作成する構成 AWS Cloud Amazon AppFlow Amazon Lookout for Metrics
※構成は作ってから書いてます ※はてなブログのGoogle Analytics設定方法は割愛 Google Analytics
14 Google Analyticsについて Googleが提供するアクセス解析ツール はてなブログから簡単に設定してアクセス解析ができる ⇒Lookout for Metricsに連携して異常検出(たくさんアクセスが来たら検知)してみる 自分のブログで設定
15 マネジメントコンソールから画面の手順に従って触ってみる 流れの概要を理解 開始
16 Detectorの作成 • 必須項目だけ入力してCreate • IntervalsはGoogle Analyticsの仕様上 1dayを選択
17 Datasourceの選択 • Google AnalyticsはAppFlowが必要 ⇒App Flowへ移動
18 App Flowの前に・・Googlle Analytics側のAPI設定が必要 公式ドキュメントを参考に設定してく • API有効 • OAuth設定 •
Client ID(キー)作成 https://docs.aws.amazon.com/appflow/latest/userguide/google-analytics.html
19 App Flowでフロー作成 KMSキーを指定しないと(AWSマネージドキーだと)エラーになる 設定しないとエラーになる
20 Google Analyticsに接続して、オブジェクトを選択
21 送信先にLookout for Metricsを選択 間隔など、細かい設定は変更できず 00:00にしないと エラーになる
22 取得フィールドのマッピング アクセス状況に関わる3項目をピックアップ ・pageviews(アクセス数) ・ページタイトル ・dateHour(日付と時刻)
23 フロー作成!
24 フローをアクティブ化
25 App Flow完成 AWS Cloud Amazon AppFlow Amazon Lookout for
Metrics ここができた Google Analytics
26 Lookout for Metricsに戻ってくる
27 作成したAppFlowをDatasourceとして選択 作成したAppFlowのflowを選択 IAM RoleはCreate a Roleを 選択し、flow名を入力
28 異常検知対象とするデータを選択する
Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 29 ここでトラブル
30 異常検知対象とするデータを選択する 選択肢が出てこない ⇒サポート問い合わせ
Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 31
Copyright© 2019 NRI Netcom, Ltd. All Rights Reserved. 32
33 アーキテクチャ変更 AWS Cloud Amazon AppFlow Amazon Lookout for Metrics
Amazon S3 AWS Lambda Amazon S3 追加 S3にオブジェクトが格納されたら、 Lookout for Metrics用にデータを変換して格納 Google Analytics
34 Lookout for MetricsのDatasourceをS3に リアルタイム(AppFlow)の前に・・ 過去分データのみで異常検出ができる Backtestをやってみる
35 Google Analytics Backtest(手動アップロード)の構成イメージ AWS Cloud Amazon Lookout for Metrics
Amazon S3 ダウンロード アップロード csv csv
36 過去データ(CSV)はGoogle Analyticsから直接ダウンロード
37 手動アップロードしたCSVファイルの場所を指定
38 計測対象にアクセス数、TimeStampに時刻を設定 Dimeisions(分類)は設定せず。 1時間単位(date)の、アクセス数(visits) を対象に異常検知
39 Activateしてしばらく待機
40 完了したのでanomaliesチェック
41 閾値を0(デフォルト70)にして異常値チェック いくつか異常値あり
42 異常値をクリックするとグラフが見える 異常値 ※3/30に記事UP無し
43 Backtest(過去分)ができたので、AppFlow経由のリアルタイムも試す AWS Cloud Amazon AppFlow Amazon Lookout for Metrics
Amazon S3 AWS Lambda Amazon S3 S3にオブジェクトが格納されたら、 Lookout for Metrics用にデータを変換して格納 ※Lambdaの詳細は割愛 Google Analytics
44 AppFlowの送信先をLookout for MetricsからS3に変更 取得処理は毎日0:15
45 途中経過 AWS Cloud Amazon AppFlow Amazon Lookout for Metrics
Amazon S3 AWS Lambda Amazon S3 ここが完成 Google Analytics
46 途中経過 AWS Cloud Amazon AppFlow Amazon Lookout for Metrics
Amazon S3 AWS Lambda Amazon S3 ここは詳細割愛 Pythonで実装 Google Analytics
47 Lookout for Metricsへ、 リアルタイムデータを処理するためにContinuousを選択
48 変換後データ格納先のS3詳細設定 1オブジェクトのパスを入力 パスパターン入力 Google Analytics(無料版) の仕様で1日間隔 格納後1時間後に分析開始 精度を高めるため 過去データも指定
49 途中経過 AWS Cloud Amazon AppFlow Amazon Lookout for Metrics
Amazon S3 AWS Lambda Amazon S3 ここまで設定完了 Google Analytics
50 Dataset作成後はBacktestと作業内容は同様 Backtestは1回きりだったが、Continuousは指定間隔で継続実行される
51 処理の流れおさらい AWS Cloud Amazon AppFlow Amazon Lookout for Metrics
Amazon S3 AWS Lambda Amazon S3 日次(0:15)でS3に取り込むように 取り込まれたらオブジェクトトリガーで Lambdaを起動しMetrics用に変換 日次(1:00)で データ取り込み Google Analytics
52 3.ひととおり流し終えたら、詳細機能を見るなど深掘り (+見直し)
53 当初予定していた構成は、AWS CLIで解決した AWS Cloud Amazon AppFlow Amazon Lookout for
Metrics サポートより回答があり、AppFlowの登録をマネジメントコンソールではなく AWS CLIにすることで解決した aws appflow create-flowで登録 Google Analytics
54 アラートも設定して飛ばしてみた アラートの追加を行い、メール通知 JSONで飛んでくる
55 4.(状況に応じて)ブログや登壇などでアウトプット
56 アウトプットのすすめ ブログや社内共有、登壇などなんでもOK 自分の知識整理にもなるのでおススメです
57 まとめ
58 構築した構成 AWS Cloud Amazon Lookout for Metrics Amazon S3
ダウンロード アップロード csv csv AWS Cloud Amazon AppFlow Amazon S3 AWS Lambda Amazon S3 AWS Cloud Amazon AppFlow Amazon Lookout for Metrics ① ② ③ Google Analytics Google Analytics Google Analytics
59 Amazon Lookout for Metrics 感想 • CloudWatch anomaly detectionの他サービス対応版の印象を持った
• 対応しているサードパーティのサービスが多いのがありがたい • 外部サービス(今回はGoogle Analytics)のAPI設定はそれぞれコツが必要 • とりあえずS3に格納すればどんなデータも異常検出できる • 異常値検知が無いとグラフは見れない? • 自分で異常値が決めれないものに活用したい
60 学びポイント • AWSのAIサービスは特に知識が無くとも始めやすいものが多い • 諦めないことが大事、他に方法が無いか考えてみる • サポートは偉大 • マネジメントコンソールがNGならAWS
CLIも試してみる
61 ありがとうございました