Elastic StackでKafkaをモニタリング!
を始めてみるには?

A presentation at Apache Kafka Meetup Japan #6 in April 2019 in Tokyo, Japan by Jun Ohtani

Slide 1

Slide 1

Elastic StackでKafkaをモニタリング! を始めてみるには? 2019/04/08 Community Engineer @Elastic Jun Ohtani @johtani !1

Slide 2

Slide 2

about • • !2 Me, Jun Ohtani / Community Engineer ‒ lucene-gosenコミッター ‒ データ分析基盤構築入門 共著 ‒ http://blog.johtani.info Elastic, founded in 2012 ‒ Products: Elasticsearch, Logstash, Kibana, Beats Elastic APM, Elastic Cloud, Swiftype Professional services: Support & development subscriptions Trainings, Consulting, SaaS

Slide 3

Slide 3

Kafkaを利用している人? !3

Slide 4

Slide 4

Kafkaの運用をしている人? !4

Slide 5

Slide 5

Kafkaの監視どうやってます? !5

Slide 6

Slide 6

監視してない (ワイルド。。。) !6

Slide 7

Slide 7

Zabbixで監視 !7

Slide 8

Slide 8

Confluent Control Center !8

Slide 9

Slide 9

SaaSサービス Datadog? !9

Slide 10

Slide 10

その他 (何があるんだろう?) Prometheus? !10

Slide 11

Slide 11

アジェンダ • Elastic Stackとは? • Kafkaのモニタリングを軽く試してみるには? • さらに色々試してみるには? !11

Slide 12

Slide 12

Elastic Stackとは? !12

Slide 13

Slide 13

Elastic Stack Kibana 可視化、管理 Elasticsearch 保存、検索、分析 Beats Logstash インジェスト

Slide 14

Slide 14

Application Search Metrics Elastic Stack Site Search APM Enterprise Search Logging Business Analytics Security Analytics Future ソリューション Kibana 可視化、管理 Elasticsearch 保存、検索、分析 Beats Logstash インジェスト

Slide 15

Slide 15

App Search Site Search Metrics Elastic Stack APM Enterprise Search Logging Business Analytics Security Analytics Future ソリューション Kibana 可視化、管理 Elasticsearch 保存、検索、分析 Beats SaaS Elastic Cloud Logstash インジェスト Self Managed Elastic Cloud Enterprise Standalone デプロイ

Slide 16

Slide 16

Application Search Site Search Metrics Elastic Stack APM Enterprise Search Logging Business Analytics Security Analytics Future ソリューション Kibana 可視化、管理 Elasticsearch 保存、検索、分析 Beats SaaS Elastic Cloud Logstash インジェスト Self Managed Elastic Cloud Enterprise Standalone デプロイ

Slide 17

Slide 17

!17

Slide 18

Slide 18

Beats 軽量データシッパー ソースからデータを転送 転送しElasticsearchに集約 変換とパースのため Logstashに転送 Elastic Cloudに転送 Libbeat: カスタムbeatsのた めのAPIフレームワーク 30以上のコミュニティbeats 18

Slide 19

Slide 19

The Beats family Packetbeat Metricbeat Winlogbeat Network data Metrics Windows Event Logs Auditbeat Filebeat Audit data Log files Heartbeat Uptime monitoring +40 community Beats

Slide 20

Slide 20

!20

Slide 21

Slide 21

Logstash データ加工パイプライン 全ての形式、サイズとデータ ソースの投入 パースと動的な データ変換 あらゆる出力に データ転送 安全で暗号化された データ入力 独自のパイプライン処理 の作成 200以上のプラグイン 21

Slide 22

Slide 22

!22

Slide 23

Slide 23

Elasticsearch Heart of the Elastic Stack 分散型、スケーラブル 高可用性 マルチテナント 開発者フレンドリー リアルタイム、全文検索 アグリゲーション 23

Slide 24

Slide 24

!24

Slide 25

Slide 25

Kibana Window into the Elastic Stack 可視化と分析 地理空間 カスタマイズと レポートの共有 グラフ探索 Elastic Stackへの セキュアなアクセスと管理 カスタムAppsの作成 25

Slide 26

Slide 26

Kibana 6 !26

Slide 27

Slide 27

Elastic Stackの構成 Beats Log Files Elasticsearch Kibana Wire Data Instances Nodes Metrics your{beat} Distributed Message Queue Kafka !27 Data Store Web APIs Social Sensors Logstash Nodes Queues Storage Metrics Notification

Slide 28

Slide 28

Kafkaのモニタリング with Beats !28

Slide 29

Slide 29

監視ポイント? • 外形監視 → Heartbeat • メトリック(メトリクス) → Metricbeat • • !29 サーバー、アプリケーション ログ → Filebeat

Slide 30

Slide 30

Heartbeat Lightweight Shipper for Uptime Monitoring

Slide 31

Slide 31

Uptime UI Dedicated Uptime Monitoring UI for Kibana

Slide 32

Slide 32

Metricbeat Collect system and application metrics

Slide 33

Slide 33

Metricbeat lots of modules

Slide 34

Slide 34

Metricbeat モジュール ● ● ● ● ● ● ● ● ● ● ● ● !34 Aerospike module Apache module Ceph module Couchbase module Docker module Dropwizard module Elasticsearch module Etcd module Golang module Graphite module HAProxy module HTTP module ● ● ● ● ● ● ● ● ● ● ● ● Jolokia module Kafka module Kibana module Kubernetes module kvm module Logstash module Memcached module MongoDB module Munin module MySQL module Nginx module ● ● ● ● ● ● ● ● ● ● PHP_FPM module PostgreSQL module Prometheus module RabbitMQ module Redis module System module uwsgi module vSphere module Windows module ZooKeeper module

Slide 35

Slide 35

Metricbeat モジュール ● ● ● ● ● ● ● ● ● ● ● ● !35 Aerospike module Apache module Ceph module Couchbase module Docker module Dropwizard module Elasticsearch module Etcd module Golang module Graphite module HAProxy module HTTP module ● ● ● ● ● ● ● ● ● ● ● ● Jolokia module Kafka module Kibana module Kubernetes module kvm module Logstash module Memcached module MongoDB module Munin module MySQL module Nginx module ● ● ● ● ● ● ● ● ● ● PHP_FPM module PostgreSQL module Prometheus module RabbitMQ module Redis module System module uwsgi module vSphere module Windows module ZooKeeper module

Slide 36

Slide 36

デモ画面 - Metricbeat Kafka module !36

Slide 37

Slide 37

Filebeat tail log from file

Slide 38

Slide 38

Filebeat many modules

Slide 39

Slide 39

Filebeat modules - v6.4.2 • Apache2 module • MySQL module • Auditd module • Nginx module • Icinga module • Osquery module • IIS module • PostgreSQL module • Kafka module • Redis module • Logstash module • System module • MongoDB module • Traefik module

Slide 40

Slide 40

Filebeat modules - v6.4.2 • Apache2 module • MySQL module • Auditd module • Nginx module • Icinga module • Osquery module • IIS module • PostgreSQL module • Kafka module • Redis module • Logstash module • System module • MongoDB module • Traefik module

Slide 41

Slide 41

デモ画面 - Filebeat Kafka module !41

Slide 42

Slide 42

さらに活用するには? !42

Slide 43

Slide 43

!43

Slide 44

Slide 44

!44

Slide 45

Slide 45

!45

Slide 46

Slide 46

!46

Slide 47

Slide 47

!47

Slide 48

Slide 48

参考文献 • Elasticsearch - The Definitive guide ‒ http://www.elastic.co/guide/en/elasticsearch/guide/current/ index.html • 書籍(日本語) !48 ‒ データ分析基盤構築入門 ‒ Elasticsearch実践ガイド

Slide 49

Slide 49

参考サイト • ユースケース • https://www.elastic.co/use-cases • Discuss(Webフォーラム) • https://discuss.elastic.co • Elastic{ON}のビデオと資料 • https://www.elastic.co/elasticon/videos • サポートメニュー • https://www.elastic.co/subscriptions !49

Slide 50

Slide 50

Thank you! ● Web : https://www.elastic.co/jp/ ● Forums : https://discuss.elastic.co/ ● Twitter : @johtani