Yahoo! JAPANを支えるログ・メトリクス転送システムのE2Eモニタリングの取り組み

299 Views

October 05, 21

スライド概要

Apache Pulsar Meetup Japan #4
https://japan-pulsar-user-group.connpass.com/event/222026/

profile-image

エンジニア・デザイナー向けのヤフー公式アカウント。イベント/登壇情報/ブログ記事など、ヤフーの技術・デザインに関わる情報を発信します。

シェア

埋め込む »CMSなどでJSが使えない場合

関連スライド

各ページのテキスト
1.

Yahoo! JAPANを⽀える ログ・メトリクス転送システムの E2Eモニタリングの取り組み 2021年09⽉30⽇ © 2021 Yahoo Japan Corporation All rights reserved.

2.

⾃⼰紹介 担当 名前 アプリケーションPF PaaS開発・運⽤ ⽯川 真幸 勝⽥ 広樹 © 2021 Yahoo Japan Corporation All rights reserved. ログPFのSplunk運⽤ 富⼭ 渉 2

3.

アジェンダ 1. ログ・メトリクス転送システムについて 2. ログ・メトリクス転送システムの課題 3. 課題解決に向けての取り組み 4. まとめ © 2021 Yahoo Japan Corporation All rights reserved. 3

4.

アジェンダ 1. ログ・メトリクス転送システムについて 2. ログ・メトリクス転送システムの課題 3. 課題解決に向けての取り組み 4. まとめ © 2021 Yahoo Japan Corporation All rights reserved. 4

5.

ログ・メトリクス転送システムについて 従来のログ・メトリクス転送システム(2019年) ログ・メトリクスPF アプリケーションPF アプリケーションPFとログメトリクスPFが密結合な状態 → 運⽤コストとログ連携の安定化が課題 © 2021 Yahoo Japan Corporation All rights reserved. 5

6.

ログ・メトリクス転送システムについて Pulsarを利⽤した疎結合なログ・メトリクス転送システム(1/3) アプリケーションPF =Producer ログ・メトリクスPF =Consumer アプリケーションPFとログ・メトリクスPFが疎結合な状態を実現🎉 © 2021 Yahoo Japan Corporation All rights reserved. 6

7.

ログ・メトリクス転送システムについて Pulsarを利⽤した疎結合なログ・メトリクス転送システム(1/3) アプリケーションPF =Producer ログ・メトリクスPF =Consumer アプリケーションPFとログ・メトリクスPFが疎結合な状態を実現🎉 © 2021 Yahoo Japan Corporation All rights reserved. 7

8.

ログ・メトリクス転送システムについて Pulsarを利⽤した疎結合なログ・メトリクス転送システム(2/3) JSON JSON Producer Consumer Pulsarのインターフェースだけ知っていれば連携が可能 © 2021 Yahoo Japan Corporation All rights reserved. 8

9.

ログ・メトリクス転送システムについて Pulsarを利⽤した疎結合なログ・メトリクス転送システム(3/3) topic topic Producer Consumer バッファリングはPulsarにおまかせ © 2021 Yahoo Japan Corporation All rights reserved. 9

10.

アジェンダ 1. ログ・メトリクス転送システムについて 2. ログ・メトリクス転送システムの課題 3. 課題解決に向けての取り組み 4. まとめ © 2021 Yahoo Japan Corporation All rights reserved. 10

11.

ログ・メトリクス転送システムの課題 PULSAR導⼊による利点と導⼊後の課題 導⼊ 利点1︓ログ・メトリクス連携の運⽤の簡略化 → 前述のシステム構成図から簡略化の効果は明⽩ 利点2︓ログ・メトリクス連携の安定化 → PULSAR導⼊で安定するはずだが・・・ 課題︓ログ・メトリクス連携の安定化を測定できていない © 2021 Yahoo Japan Corporation All rights reserved. 11

12.

ログ・メトリクス転送システムの課題 ログ・メトリクス連携の安定性測定の課題 ログ・メトリクス連携の安定している状態とは… 「ログが⽋損することなくProducerからConsumerへ転送できている」状態 なぜ測定できていないのか︖ • PFを跨いで転送状態を測定できる統⼀した指標が存在しない • 膨⼤なログ流量のため件数やサイズを測定することが難しい © 2021 Yahoo Japan Corporation All rights reserved. 12

13.

ログ・メトリクス転送システムの課題 PFを跨いで転送状態を測定できる統⼀した指標が存在しない(1/2) Producer Consumer ProducerはPulsarまでのログ送信までを保証 © 2021 Yahoo Japan Corporation All rights reserved. 13

14.

ログ・メトリクス転送システムの課題 PFを跨いで転送状態を測定できる統⼀した指標が存在しない(2/2) Producer Consumer ConsumerはPulsarからのログ受信以降を保証 © 2021 Yahoo Japan Corporation All rights reserved. 14

15.

ログ・メトリクス転送システムの課題 膨⼤なログ流量のため件数やサイズを測定することが難しい Consumer Producer ⼀般的に⽤いられる単位時間あたりの件数突き合わせでは 件数ズレが発⽣しやすい © 2021 Yahoo Japan Corporation All rights reserved. 15

16.

アジェンダ 1. ログ・メトリクス転送システムについて 2. ログ・メトリクス転送システムの課題 3. 課題解決に向けての取り組み 4. まとめ © 2021 Yahoo Japan Corporation All rights reserved. 16

17.

課題解決に向けての取り組み ProducerからConsumerまでログ送信を⼀貫して保証するには︖(1/3) たくさんの ログを送った たくさんの ログが届いた ちゃんと 全部送れ てる︖ Consumer Producer © 2021 Yahoo Japan Corporation All rights reserved. 17

18.

課題解決に向けての取り組み ProducerからConsumerまでログ送信を⼀貫して保証するには︖(2/3) Producerが送ったログの分 Consumerに届いた OK! Consumer Producer © 2021 Yahoo Japan Corporation All rights reserved. 18

19.

課題解決に向けての取り組み ProducerからConsumerまでログ送信を⼀貫して保証するには︖(3/3) End to Endでログ送信が成功していることをモニタリング サンプルログを x個送るよ サンプルログは xʼ個届いたよ 到達率を 測定しよう Consumer Producer © 2021 Yahoo Japan Corporation All rights reserved. 19

20.

課題解決に向けての取り組み E2Eでログ到達率を測定する⽅法を検討 • Producer – Consumer 間でログ可視化のフォーマットを決定 Ø ログ到達率の測定に必要な項⽬を精査 Ø 単位当たりのログ送信数を検討(stdout 10件/秒, stderr 1件/秒 ) xxなログを x個送るよ フォーマット, 送信量を 指定できるアプリを作成 Producer © 2021 Yahoo Japan Corporation All rights reserved. 20

21.

課題解決に向けての取り組み Producer側の仕組みを検討(1/3) サンプル サンプル サンプル ログ ログ ログ 測定の仕組みが システムを圧迫 ・・・数百node Producer クラスタサイズをスケールすると サンプルログ数も変動する © 2021 Yahoo Japan Corporation All rights reserved. 21

22.

課題解決に向けての取り組み Producer側の仕組みを検討(2/3) サンプル ログ サンプルログ数は クラスタで固定 ランダムな node ・・・数百node Producer 別ロジックが入り込んでしまい 計測ミスや調査時の負担につながる © 2021 Yahoo Japan Corporation All rights reserved. 22

23.

課題解決に向けての取り組み Producer側の仕組みを検討(3/3) サンプル ログ AZごと サンプルログ数は AZ数で固定 サンプル ログ (98%以上負荷削減) AZごと ・・・ ・・・数百node Producer AZ内のnodeは同状態であることは クラスタ内監視で担保 © 2021 Yahoo Japan Corporation All rights reserved. 23

24.

課題解決に向けての取り組み Producer側の仕組みが完成 サンプルログは 10件/秒✕AZ数 送るよ Producer スケーラブルでシンプルな構成を実現 © 2021 Yahoo Japan Corporation All rights reserved. 24

25.

課題解決に向けての取り組み ProducerからConsumerまでのログ到達率を可視化(1/3) • ログ到達率を算出するクエリ作成のために必要なパラメタを整理 Ø ProducerとConsumer間で決めたログ送信頻度(件/秒) Ø 検索期間(秒)については分析時に決定 Ø ログ送信アプリの検索期間内の実際のログ送信数(件) ログ到達率(%)= 検索期間内の実際のログ送信数(件) ログ送信頻度(件/秒)✕ 検索期間(秒) © 2021 Yahoo Japan Corporation All rights reserved. 25

26.

課題解決に向けての取り組み ProducerからConsumerまでのログ到達率を可視化(2/3) • Producerのログ送信アプリの情報を基に可視化 Ø Splunkでクエリを作成し可視化 // 送信ルール ログ到達率の算出するクエリ作成 ログ到達率をSingle Valueで可視化 © 2021 Yahoo Japan Corporation All rights reserved. 26

27.

課題解決に向けての取り組み ProducerからConsumerまでのログ到達率を可視化(3/3) ログ到達率をダッシュボード化 © 2021 Yahoo Japan Corporation All rights reserved. 27

28.

アジェンダ 1. ログ・メトリクス転送システムについて 2. ログ・メトリクス転送システムの課題 3. 課題の解決に向けての取り組み 4. まとめ © 2021 Yahoo Japan Corporation All rights reserved. 28

29.

まとめ Yahoo! JAPANを⽀えるログ・メトリクス転送システムの取り組み • Pulsarを利⽤した疎結合なログ転送システムを構築 Ø インターフェースをシンプルに Ø ⼤規模データにも柔軟な対応が可能 • ProducerからConsumerまでのログ到達率の可視化 Ø ログ送信アプリをシステム全体を把握できるようにデプロイ Ø ⼀部システムのログ到達率をE2Eでモニタリング © 2021 Yahoo Japan Corporation All rights reserved. 29

30.

Pulsarを利⽤して クラウド時代を⽣き抜く © 2021 Yahoo Japan Corporation All rights reserved.

31.

EOF © 2021 Yahoo Japan Corporation All rights reserved.