Upgrade to Pro — share decks privately, control downloads, hide ads and more …

可視化プラットフォームGrafanaの基本と活用方法の全て

 可視化プラットフォームGrafanaの基本と活用方法の全て

可視化プラットフォームとして大きな広がりを見せつつあるGrafana。ユースケースは非常に広いのですが、最初の取っ掛かりで苦労する人も多いのが現実です。このセッションでは、改めてGrafana関連プロダクトの基礎と具体的な利用例、ユースケースをご紹介しながら、よりよい可視化プラットフォーム構築の参考にしてもらえればと思います。

濱田孝治

July 20, 2024
Tweet

More Decks by 濱田孝治

Other Decks in Technology

Transcript

  1. About me 濱⽥孝治(ハマコー) • クラスメソッド株式会社 • 製造ビジネステクノロジー部 マネージャー • 2017年9⽉⼊社〜

    ex • AWS事業本部 ソリューションアーキテクト • CX事業本部 MAD事業部 • CX事業本部 VPoE • @hamako9999 2
  2. Grafanaから想像されそうなキーワード • データ可視化 • ダッシュボード • モニタリング • オープンソース •

    時系列データ • リアルタイム分析 • マルチデータソース • IoTデータ • クラウドネイティブ • ビジネスインテリジェンス 13 • アラート • メトリクス • インフラ監視 • パフォーマンス分析 • カスタマイズ可能 • プラグイン拡張性 • ログ解析 • トレーシング • セキュリティ監視 • DevOps
  3. Grafanaから想像されそうなキーワード • データ可視化 • ダッシュボード • モニタリング • オープンソース •

    時系列データ • リアルタイム分析 • マルチデータソース • IoTデータ • クラウドネイティブ • ビジネスインテリジェンス 14 • アラート • メトリクス • インフラ監視 • パフォーマンス分析 • カスタマイズ可能 • プラグイン拡張性 • ログ解析 • トレーシング • セキュリティ監視 • DevOps おそらく人によって 全然違うと思います
  4. Grafanaとは︖ Observability(可観測性)の統合ソリューション Profiles, Performance testing, Alert, Incident response, SLO, Frontend

    Observability, Application Observability, Synthetic monitoring, Kubernetes monitoring, Logs, Traces, Metrics 21 https://grafana.com/ja/
  5. 数字で知るGrafana • GitHubのスター数︓ Grafana: 55,000+ スター (2024年4⽉時点) • ⽐較︓Kibana (約18,000スター),

    Prometheus (約49,000スター) • ダウンロード数︓ Docker Hubでの累計プル数: 10億回以上 (2023年データ) • 企業での採⽤︓ Fortune 500企業の85%以上がGrafanaを使⽤ (Grafana Labs公式情報, 2023年) • コミュニティの規模︓ 公式Slackチャンネル: 30,000+メンバー (2023年データ) • 市場シェア︓ アプリケーションパフォーマンスモニタリング市場でのシェア: 約5-10% (業界レポー トより推定, 2022年) • 成⻑率︓ Grafana Labsの年間成⻑率: 100%以上 (2021年から2022年にかけて) • オープンソースコントリビューション︓ GitHub上で8,000+のコントリビューター (2024年4⽉時 点) • 業界認知度︓ Gartner Magic Quadrant for Application Performance Monitoring and Observabilityで「Visionaries」として位置付け (2022年) • ユーザー数︓ ⽉間アクティブユーザー: 150万以上 (Grafana Labs公式情報, 2023年) • データソース接続数︓ 100以上のデータソースに対応 (2024年時点) 30
  6. 汎⽤性に関するGrafanaの優位性 Grafana Labsが主導して開発しているGrafanaはオープンソースプロジェクトのため、他のObservability関連 製品に⽐べて、オープンかつクラウドネイティブなプロダクトとの親和性が⾼い。 また、有料製品とは明確に⽴ち位置が違う 34 1. 多様なデータソース対応 • Grafana:

    100以上のデータソースに対応 • 特徴: Grafanaは時系列データベースから⼀般的なRDBMSまで 幅広く対応し、単⼀ダッシュボードで複数のデータソースを統 合できる。 2. オープンソースと商⽤のハイブリッドモデル • Grafana: オープンソースコアに商⽤機能を追加可能 • 特徴: コストを抑えつつ、必要に応じて商⽤機能を追加できる柔 軟性がある。 3. プラグインエコシステム • Grafana: 豊富なプラグインによる拡張性 • 特徴: コミュニティによる多様なプラグイン開発により、機能を 柔軟に拡張できる。 4. クラウドネイティブ環境との親和性 • Grafana: Kubernetes環境との⾼い親和性 • Prometheusと同様にクラウドネイティブ環境に強い 5. コスト効率 • Grafana: 基本機能は無料で利⽤可能 • 特徴: ⼩規模から⼤規模まで、コスト効率よく導⼊できる 6. コミュニティサポート • Grafana: 活発なコミュニティと豊富な情報源 • ⽐較: オープンソースツールの中でも特に活発なコミュニティを 持つ • 特徴: 問題解決や最新情報の⼊⼿が容易
  7. Grafana関連OSS(1) 43 名前 アイコン 用途 Grafana Oveservabilityの中⼼。データがどこにあろうとも、それらをクエリし、 ビジュアライズし、それらから業務に必要なインサイトを得る Grafana Mimir

    Prometheusにスケーラブルな⻑期ストレージを提供するオープンソー スソフトウェアプロジェクト Grafana Tempo オープンソースの分散トレーシングバックエンド。Tempoの利⽤で、 トレースを検索し、メトリクスを⽣成、トレースデータをログとメト リクスにリンク可能。 Grafana Loki ロギングスタックを構成するOSSコンポーネント。⼩さなインデック スと⾼度に圧縮されたチャンクは操作を簡素化し、Lokiのコストを⼤幅 に削減。 Grafana Pyroscope 継続的なプロファイリングデータ集約のためのOSS。ワークロードのリソース の使用状況をソースコードの行番号まで理解することが可能。Grafanaと完 全に統合されており、メトリクス、ログ、トレースのような他の可観測性シグナ ルと相関が可能。
  8. Grafana関連OSS (2) 44 名前 アイコン 用途 Grafana Alloy OpenTelemetry(OTel)Collectorのベンダーニュートラルディストリビューショ ン。

    Grafana Beyla eBPFベースのアプリケーション自動計測ツール。Beylaを使うことで、 Application Observabilityを簡単に始めることが可能。BeylaはeBPFを使用 してアプリケーションの実行ファイルとOSのネットワークを検査し、メトリクス に関連するトレーススパンをキャプチャする。 Grafana Faro シグナルを取得しフロントエンドWebアプリケーションのパフォーマンスをリア ルタイムで計測し、フルスタックの可観測性を実現する。 Grafana k6 拡張可能なOSSの負荷テストツール。プロアクティブに信頼性を向上させる ことが可能。
  9. Grafana Cloud関連(1) 45 名前 アイコン 用途 Grafana Cloud Grafanaダッシュボード、Prometheus/Graphite Metrics,

    Loki Logsの公式マ ネージドプラットフォーム。 Grafana Cloud k6 k6 OSSによって提供されるGrafana Cloud インスタンス無いのパフォーマン ステストアプリケーション。 Synthetic Monitoring 世界中のプローブ拠点からリモートターゲットへの継続的な監視により、アプ リケーションの死活、可用性、パフォーマンスを評価。 Grafana Kubernetes Monitoring Kubernetes環境のモニタリング。メトリクス、Podログ、クラスタイベント、トレ ース、コストメトリクスを収集・保存。 Grafana OnCall 事前に定義されたエスカーレションポリシー、スケジュール、通知設定に従っ て、オンコール通知を実施。Grafana Cloudに統合されている。 Grafana Incident チームがインシデント、障害、その他の重要なイベントに迅速かつ効果的に 対応できるように設計されたインシデント管理ソリューション。 Grafana SLO ユーザーに提供するサービスの品質を測定するためのメトリクスを作成可能 となる。
  10. Grafana Cloud関連(2) 46 名前 アイコン ⽤途 Grafana Alerting Grafana Alertingを使用すると、システムで問題が発生した直後にその

    問題を知ることができます。 Grafana Machine Learning アラートの作成、キャパシティ要件の予測、異常なアクティビティの特定 など、データ分析と生成AIの機能を拡張して提供します。
  11. Grafanaの優位性が出しやすいところ 62 複数のデータソースを⼀括で統合管理する • AWSとGoogle CloudとAzureの請求の合計料⾦でア ラートをだしたい • マルチクラウドでのDR体制を⼀括監視したい •

    異なるSaaSやパブリッククラウドを組み合わせたシス テム全体のパフォーマンスを監視したい • オンプレとAWSを組み合わせたハイブリッド環境にお ける監視
  12. Grafanaのアーキテクチャ上の優位性(1) 65 • プラグインアーキテクチャ • 特徴︓モジュラー設計により、コア機能を拡張可能 • 利点︓ 新しいデータソース、パネルタイプ、アプリケーションを容易に追加で きる

    • コミュニティや企業が独⾃の機能を開発・共有可能 • コアシステムを軽量に保ちつつ、機能を柔軟に拡張できる • フロントエンド中⼼の設計 • 特徴︓主要な処理をブラウザ側で実⾏ • 利点︓ サーバーの負荷を軽減し、スケーラビリティを向上 • リアルタイムの対話的なダッシュボード操作が可能 • シングルページアプリケーション(SPA)としての⾼速な応答性
  13. Grafanaのアーキテクチャ上の優位性(2) 66 • バックエンドのステートレス設計 • 特徴︓セッション状態をサーバーに保持しない • 利点︓ ⽔平スケーリングが容易 •

    ⾼可⽤性の実現が⽐較的簡単 • クラウドネイティブ環境との親和性が⾼い • データソース抽象化レイヤー • 特徴︓多様なデータソースを統⼀的に扱うインターフェースを提供 • 利点︓ 新しいデータソースの追加が容易 • 異なるデータソースからのデータを単⼀のダッシュボードで統合可能 • クエリ⾔語の違いを抽象化し、ユーザーエクスペリエンスを統⼀
  14. ダッシュボード関連のコンポーネント(詳解) 73 Data Source Plugin Query Transfor m Data Source

    データで構成されるエンティティ。RDBやGrafana Loki、Gfarana Mimir、 JSONのAPI、CSVファイルなど様々な形式あり。 データソースはそれぞれ独⾃の構造を持ち、異なるクエリが必要となるが、 ダッシュボードでは、異なるデータソースを1つのビューで視覚化できる
  15. ダッシュボード関連のコンポーネント(詳解) 74 Data Source Plugin Query Transfor m Plugin Pluginにより、Grafanaに新しい機能を追加可能。データソースプラグイン

    の場合は、クエリを受け取りデータソースからデータを取得し、データソー スとGrafanaダッシュボードのデータモデルとの差異を調整すること。デー タフレームと呼ばれる、統⼀データ構造をもつ。
  16. ダッシュボード関連のコンポーネント(詳解) 75 Data Source Plugin Query Transfor m Query Queryにより、データを特定のデータセットに絞り込み視覚化

    を容易にする。システムや業務プロセスに関する疑問に応える のに役⽴つ。データソース毎に独⾃のQuery⾔語が必要になる。 PromQLやLogQLやSQL等のクエリ⾔語を利⽤する。
  17. ダッシュボード関連のコンポーネント(詳解) 76 Data Source Plugin Query Transfor m Transform 視覚化の形式が要件を満たさない場合、クエリ結果を操作するために

    Transformを利⽤する。例えば、姓と名をあわせて姓名にする。CSVデータ のフィールドタイプの変換、クエリ⾔語がサポートしていないフィルタリン グ・結合・マージなどのSQLのような操作の実⾏などが可能。
  18. ダッシュボード関連のコンポーネント(詳解) 77 Data Source Plugin Query Transfor m Panel 視覚化の最終化。データをどのように⾒たいかを指定する。例えば、パネル

    の右上にあるドロップダウンメニューを使って、棒グラフ、円グラフ、ヒス トグラムなど、可視化のタイプを指定する。
  19. Grafanaをどこで動かすか 89 ホスティング場所によるプロコン ⽅法 メリット デメリット Amazon Managed Grafana •

    マネージド提供されているので、インフラ気 にしなくてよい • AWS課⾦で請求周辺で⼿間が無い • 初期セットアップのユーザー作成で ⼿間がかかる(IAM Identity Center or SAML連携が必須) • 利⽤できるバージョンがOSSや、 Grafana Cloudに⽐べて古い • version8.4〜9.4(2024年4⽉23⽇ 現在) コンテナをAWS App Runner上起動 • VPCとか意識せずにさくっとコンテナ起動で きる • AWS課⾦で⼿間がない • EFS対応してないので、メタデータ 格納には別途MySQLやPostgreSQL などが必要 Grafana Cloud • セットアップはインフラプロビジョニング含 めて5分程度 • クレジット情報の登録不要で14⽇間無制限ト ライアル • 14⽇経過後も無料範囲内でそのまま利⽤可能 • ほぼ最新のバージョンが使える • プラグインの導⼊に制限あり(導⼊ できるのはプラグインカタログにア ップロードされたもののみ)
  20. Grafanaをどこで動かすか︖ 93 ホスティング場所は、運⽤⾯、コスト⾯双⽅で総合的な考慮 が必要 • 初速はGrafana Cloudが圧倒的に早い • Grafana Cloud

    Proは利⽤量に応じた従量課⾦のため、上 限が⾒込みにくい • AWSの中の複数リソースの監視などクラウドの中単体で利 ⽤するなら、リソースプロビジョニング料⾦だけで利⽤で きるOSSのセルフホスティングが無難(それでも運⽤の⼿ 間はかかる) • 勝⼿に課⾦されることはないので、最初はFree版で始めて みて、どこまで使えるか試してみるのが早い
  21. 101