852 Views
October 05, 21
スライド概要
Apache Pulsar Meetup Japan #4
https://japan-pulsar-user-group.connpass.com/event/222026/
2023年10月からSpeaker Deckに移行しました。最新情報はこちらをご覧ください。 https://speakerdeck.com/lycorptech_jp
Yahoo! JAPANを⽀える ログ・メトリクス転送システムの E2Eモニタリングの取り組み 2021年09⽉30⽇ © 2021 Yahoo Japan Corporation All rights reserved.
⾃⼰紹介 担当 名前 アプリケーションPF PaaS開発・運⽤ ⽯川 真幸 勝⽥ 広樹 © 2021 Yahoo Japan Corporation All rights reserved. ログPFのSplunk運⽤ 富⼭ 渉 2
アジェンダ 1. ログ・メトリクス転送システムについて 2. ログ・メトリクス転送システムの課題 3. 課題解決に向けての取り組み 4. まとめ © 2021 Yahoo Japan Corporation All rights reserved. 3
アジェンダ 1. ログ・メトリクス転送システムについて 2. ログ・メトリクス転送システムの課題 3. 課題解決に向けての取り組み 4. まとめ © 2021 Yahoo Japan Corporation All rights reserved. 4
ログ・メトリクス転送システムについて 従来のログ・メトリクス転送システム(2019年) ログ・メトリクスPF アプリケーションPF アプリケーションPFとログメトリクスPFが密結合な状態 → 運⽤コストとログ連携の安定化が課題 © 2021 Yahoo Japan Corporation All rights reserved. 5
ログ・メトリクス転送システムについて Pulsarを利⽤した疎結合なログ・メトリクス転送システム(1/3) アプリケーションPF =Producer ログ・メトリクスPF =Consumer アプリケーションPFとログ・メトリクスPFが疎結合な状態を実現🎉 © 2021 Yahoo Japan Corporation All rights reserved. 6
ログ・メトリクス転送システムについて Pulsarを利⽤した疎結合なログ・メトリクス転送システム(1/3) アプリケーションPF =Producer ログ・メトリクスPF =Consumer アプリケーションPFとログ・メトリクスPFが疎結合な状態を実現🎉 © 2021 Yahoo Japan Corporation All rights reserved. 7
ログ・メトリクス転送システムについて Pulsarを利⽤した疎結合なログ・メトリクス転送システム(2/3) JSON JSON Producer Consumer Pulsarのインターフェースだけ知っていれば連携が可能 © 2021 Yahoo Japan Corporation All rights reserved. 8
ログ・メトリクス転送システムについて Pulsarを利⽤した疎結合なログ・メトリクス転送システム(3/3) topic topic Producer Consumer バッファリングはPulsarにおまかせ © 2021 Yahoo Japan Corporation All rights reserved. 9
アジェンダ 1. ログ・メトリクス転送システムについて 2. ログ・メトリクス転送システムの課題 3. 課題解決に向けての取り組み 4. まとめ © 2021 Yahoo Japan Corporation All rights reserved. 10
ログ・メトリクス転送システムの課題 PULSAR導⼊による利点と導⼊後の課題 導⼊ 利点1︓ログ・メトリクス連携の運⽤の簡略化 → 前述のシステム構成図から簡略化の効果は明⽩ 利点2︓ログ・メトリクス連携の安定化 → PULSAR導⼊で安定するはずだが・・・ 課題︓ログ・メトリクス連携の安定化を測定できていない © 2021 Yahoo Japan Corporation All rights reserved. 11
ログ・メトリクス転送システムの課題 ログ・メトリクス連携の安定性測定の課題 ログ・メトリクス連携の安定している状態とは… 「ログが⽋損することなくProducerからConsumerへ転送できている」状態 なぜ測定できていないのか︖ • PFを跨いで転送状態を測定できる統⼀した指標が存在しない • 膨⼤なログ流量のため件数やサイズを測定することが難しい © 2021 Yahoo Japan Corporation All rights reserved. 12
ログ・メトリクス転送システムの課題 PFを跨いで転送状態を測定できる統⼀した指標が存在しない(1/2) Producer Consumer ProducerはPulsarまでのログ送信までを保証 © 2021 Yahoo Japan Corporation All rights reserved. 13
ログ・メトリクス転送システムの課題 PFを跨いで転送状態を測定できる統⼀した指標が存在しない(2/2) Producer Consumer ConsumerはPulsarからのログ受信以降を保証 © 2021 Yahoo Japan Corporation All rights reserved. 14
ログ・メトリクス転送システムの課題 膨⼤なログ流量のため件数やサイズを測定することが難しい Consumer Producer ⼀般的に⽤いられる単位時間あたりの件数突き合わせでは 件数ズレが発⽣しやすい © 2021 Yahoo Japan Corporation All rights reserved. 15
アジェンダ 1. ログ・メトリクス転送システムについて 2. ログ・メトリクス転送システムの課題 3. 課題解決に向けての取り組み 4. まとめ © 2021 Yahoo Japan Corporation All rights reserved. 16
課題解決に向けての取り組み ProducerからConsumerまでログ送信を⼀貫して保証するには︖(1/3) たくさんの ログを送った たくさんの ログが届いた ちゃんと 全部送れ てる︖ Consumer Producer © 2021 Yahoo Japan Corporation All rights reserved. 17
課題解決に向けての取り組み ProducerからConsumerまでログ送信を⼀貫して保証するには︖(2/3) Producerが送ったログの分 Consumerに届いた OK! Consumer Producer © 2021 Yahoo Japan Corporation All rights reserved. 18
課題解決に向けての取り組み ProducerからConsumerまでログ送信を⼀貫して保証するには︖(3/3) End to Endでログ送信が成功していることをモニタリング サンプルログを x個送るよ サンプルログは xʼ個届いたよ 到達率を 測定しよう Consumer Producer © 2021 Yahoo Japan Corporation All rights reserved. 19
課題解決に向けての取り組み E2Eでログ到達率を測定する⽅法を検討 • Producer – Consumer 間でログ可視化のフォーマットを決定 Ø ログ到達率の測定に必要な項⽬を精査 Ø 単位当たりのログ送信数を検討(stdout 10件/秒, stderr 1件/秒 ) xxなログを x個送るよ フォーマット, 送信量を 指定できるアプリを作成 Producer © 2021 Yahoo Japan Corporation All rights reserved. 20
課題解決に向けての取り組み Producer側の仕組みを検討(1/3) サンプル サンプル サンプル ログ ログ ログ 測定の仕組みが システムを圧迫 ・・・数百node Producer クラスタサイズをスケールすると サンプルログ数も変動する © 2021 Yahoo Japan Corporation All rights reserved. 21
課題解決に向けての取り組み Producer側の仕組みを検討(2/3) サンプル ログ サンプルログ数は クラスタで固定 ランダムな node ・・・数百node Producer 別ロジックが入り込んでしまい 計測ミスや調査時の負担につながる © 2021 Yahoo Japan Corporation All rights reserved. 22
課題解決に向けての取り組み Producer側の仕組みを検討(3/3) サンプル ログ AZごと サンプルログ数は AZ数で固定 サンプル ログ (98%以上負荷削減) AZごと ・・・ ・・・数百node Producer AZ内のnodeは同状態であることは クラスタ内監視で担保 © 2021 Yahoo Japan Corporation All rights reserved. 23
課題解決に向けての取り組み Producer側の仕組みが完成 サンプルログは 10件/秒✕AZ数 送るよ Producer スケーラブルでシンプルな構成を実現 © 2021 Yahoo Japan Corporation All rights reserved. 24
課題解決に向けての取り組み ProducerからConsumerまでのログ到達率を可視化(1/3) • ログ到達率を算出するクエリ作成のために必要なパラメタを整理 Ø ProducerとConsumer間で決めたログ送信頻度(件/秒) Ø 検索期間(秒)については分析時に決定 Ø ログ送信アプリの検索期間内の実際のログ送信数(件) ログ到達率(%)= 検索期間内の実際のログ送信数(件) ログ送信頻度(件/秒)✕ 検索期間(秒) © 2021 Yahoo Japan Corporation All rights reserved. 25
課題解決に向けての取り組み ProducerからConsumerまでのログ到達率を可視化(2/3) • Producerのログ送信アプリの情報を基に可視化 Ø Splunkでクエリを作成し可視化 // 送信ルール ログ到達率の算出するクエリ作成 ログ到達率をSingle Valueで可視化 © 2021 Yahoo Japan Corporation All rights reserved. 26
課題解決に向けての取り組み ProducerからConsumerまでのログ到達率を可視化(3/3) ログ到達率をダッシュボード化 © 2021 Yahoo Japan Corporation All rights reserved. 27
アジェンダ 1. ログ・メトリクス転送システムについて 2. ログ・メトリクス転送システムの課題 3. 課題の解決に向けての取り組み 4. まとめ © 2021 Yahoo Japan Corporation All rights reserved. 28
まとめ Yahoo! JAPANを⽀えるログ・メトリクス転送システムの取り組み • Pulsarを利⽤した疎結合なログ転送システムを構築 Ø インターフェースをシンプルに Ø ⼤規模データにも柔軟な対応が可能 • ProducerからConsumerまでのログ到達率の可視化 Ø ログ送信アプリをシステム全体を把握できるようにデプロイ Ø ⼀部システムのログ到達率をE2Eでモニタリング © 2021 Yahoo Japan Corporation All rights reserved. 29
Pulsarを利⽤して クラウド時代を⽣き抜く © 2021 Yahoo Japan Corporation All rights reserved.
EOF © 2021 Yahoo Japan Corporation All rights reserved.