SlideShare a Scribd company logo
Copyright © Xchange Solutions All right reserved.
Prometeusについてはじめてみよう
株式会社エクスチェンジ ソリューションズ
野田 健夫
2017.12.16
KIXS vol.006 紅白LT大会
絶対にガチってはいけないLT大会
2
Copyright © Xchange Solutions All right reserved.
こんにちは
野田 健夫(のだたけお)
https://twitter.com/nodatakeo
https://www.facebook.com/nodatakeo
株式会社エクスチェンジ ソリューションズ
3
Copyright © Xchange Solutions All right reserved.
いつから?
2011/10 2012/7 2016/04
前職の部長と仲間
6名からスタート。
福岡拠点設立
福岡移住
セブンメディアを母体
として会社名変更
福岡に来て5年
4
Copyright © Xchange Solutions All right reserved.
これまでの監視ツール遍歴
2004~2009年ごろ:BigBrother / Hobbit / Xymon
http://xymon.sourceforge.net/
5
Copyright © Xchange Solutions All right reserved.
これまでの監視ツール遍歴
2008~2012年ごろ:Nagios
https://www.nagios.org/
6
Copyright © Xchange Solutions All right reserved.
これまでの監視ツール遍歴
2012年~現在 :Zabbix
http://www.zabbix.com/jp/
7
Copyright © Xchange Solutions All right reserved.
そろそろ次?
Zabbixとの付き合いも5年。
Zabbixは、生存競争に残れるのか?
新しい監視サービスの取り込みを検討。
8
Copyright © Xchange Solutions All right reserved.
Prometeusとは
Prometheus は、 Google 出身者が Google
社内監視ツール Borgmon にインスパイアさ
れて作成したオープンソースの監視システム。
音楽SNSとして知られているSoundcloud社
が2012年に開発をスタート。現在は、 Cloud
Native Computing Foundationの下で開発。
Go言語で書かれています。
9
Copyright © Xchange Solutions All right reserved.
なぜPrometeusか
軽量でシンプル
Go言語でOS問わずインストールが簡単
基本はmetricsをWEB APIで取得
microserviceに基づく設計で実装
10
Copyright © Xchange Solutions All right reserved.
インストール&起動について
ダウンロードして解凍
コマンド実行すれば即起動
※サーバーは、デフォルトでは Port:9090 で起動
※Dockerも提供されている。
https://hub.docker.com/u/prom/
11
Copyright © Xchange Solutions All right reserved.
ダウンロード可能なモジュール
 Prometheus (サーバー本体)
 Alertmanager (アラート管理)
 Blackbox_exporter (外形監視)
 Consul_exporter
 Graphite_exporter
 Haproxy_exporter
 Memcached_exporter
 Mysqld_exporter
 Node_exporter
 Statsd_exporter
 Pushgateway(PUSH通知、バッチ結果の通知などに限定しての利用を推奨。)
(エクスポーター、監視エージェント)
ほかにも数多く公式、非公式含め公開されている。
12
Copyright © Xchange Solutions All right reserved.
公開されているExporter
https://prometheus.io/docs/instrumenting/exporters/
13
Copyright © Xchange Solutions All right reserved.
独自監視
 いくつかの言語で基盤を提供
 Golang https://github.com/prometheus/client_golang
 Python https://github.com/prometheus/client_python
 Java https://github.com/prometheus/client_java
 Ruby https://github.com/prometheus/client_ruby
 大きく3種類
 Online Serving System (よくあるExporter系)
 Offline Processing
 Batch Jobs (PushGateway系)
 命名規則などのガイドラインがある。
https://prometheus.io/docs/practices/naming/
https://prometheus.io/docs/instrumenting/writing_exporters/
14
Copyright © Xchange Solutions All right reserved.
システム構成:詳細①
サービス系をエクス
ポーターからデータ
取得
ほかのPrometheus
サーバーからもデー
タ取得できる
アラート通知
管理画面
基本PULL型で情報取得
短期処理結果をPUSH
例:バッチ実行件数など
https://prometheus.io/docs/introduction/overview/
15
Copyright © Xchange Solutions All right reserved.
システム構成:詳細②
https://developers.soundcloud.com/blog/prometheus-monitoring-at-soundcloud
16
Copyright © Xchange Solutions All right reserved.
管理画面
17
Copyright © Xchange Solutions All right reserved.
Grafana
18
Copyright © Xchange Solutions All right reserved.
まとめ
シンプルな監視サーバー。
microserviceの監視にマッチする。
ローカルでは15日程度しか保持しないの
で別でリモートの永続化の仕組みを考え
る必要がある。
シンプルゆえに組み合わせ方が肝。

More Related Content

What's hot

Elasticsearch の検索精度のチューニング 〜テストを作って高速かつ安全に〜
Elasticsearch の検索精度のチューニング 〜テストを作って高速かつ安全に〜Elasticsearch の検索精度のチューニング 〜テストを作って高速かつ安全に〜
Elasticsearch の検索精度のチューニング 〜テストを作って高速かつ安全に〜
Takahiko Ito
 
Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)
Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)
Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)
NTT DATA Technology & Innovation
 
忙しい人の5分で分かるMesos入門 - Mesos って何だ?
忙しい人の5分で分かるMesos入門 - Mesos って何だ?忙しい人の5分で分かるMesos入門 - Mesos って何だ?
忙しい人の5分で分かるMesos入門 - Mesos って何だ?
Masahito Zembutsu
 
SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021
Hiroshi Tokumaru
 
分散システムについて語らせてくれ
分散システムについて語らせてくれ分散システムについて語らせてくれ
分散システムについて語らせてくれ
Kumazaki Hiroki
 
Cycloudのストレージ紹介と歴史
Cycloudのストレージ紹介と歴史Cycloudのストレージ紹介と歴史
Cycloudのストレージ紹介と歴史
Hiroki Chinen
 
20分でわかるgVisor入門
20分でわかるgVisor入門20分でわかるgVisor入門
20分でわかるgVisor入門
Shuji Yamada
 
Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)
Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)
Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)
Hiro H.
 
開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)
mosa siru
 
新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編
infinite_loop
 
O/Rマッパーによるトラブルを未然に防ぐ
O/Rマッパーによるトラブルを未然に防ぐO/Rマッパーによるトラブルを未然に防ぐ
O/Rマッパーによるトラブルを未然に防ぐ
kwatch
 
AlmaLinux と Rocky Linux の誕生経緯&比較
AlmaLinux と Rocky Linux の誕生経緯&比較AlmaLinux と Rocky Linux の誕生経緯&比較
AlmaLinux と Rocky Linux の誕生経緯&比較
beyond Co., Ltd.
 
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
Kentaro Matsui
 
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方
Yoshiyasu SAEKI
 
ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計
Yoshinori Matsunobu
 
What's new in Spring Batch 5
What's new in Spring Batch 5What's new in Spring Batch 5
What's new in Spring Batch 5
ikeyat
 
ゲームエンジニアのためのデータベース設計
ゲームエンジニアのためのデータベース設計ゲームエンジニアのためのデータベース設計
ゲームエンジニアのためのデータベース設計
sairoutine
 
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
Takuto Wada
 
世界でいちばんわかりやすいドメイン駆動設計
世界でいちばんわかりやすいドメイン駆動設計世界でいちばんわかりやすいドメイン駆動設計
世界でいちばんわかりやすいドメイン駆動設計
増田 亨
 
ドメイン駆動設計 基本を理解する
ドメイン駆動設計 基本を理解するドメイン駆動設計 基本を理解する
ドメイン駆動設計 基本を理解する
増田 亨
 

What's hot (20)

Elasticsearch の検索精度のチューニング 〜テストを作って高速かつ安全に〜
Elasticsearch の検索精度のチューニング 〜テストを作って高速かつ安全に〜Elasticsearch の検索精度のチューニング 〜テストを作って高速かつ安全に〜
Elasticsearch の検索精度のチューニング 〜テストを作って高速かつ安全に〜
 
Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)
Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)
Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)
 
忙しい人の5分で分かるMesos入門 - Mesos って何だ?
忙しい人の5分で分かるMesos入門 - Mesos って何だ?忙しい人の5分で分かるMesos入門 - Mesos って何だ?
忙しい人の5分で分かるMesos入門 - Mesos って何だ?
 
SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021
 
分散システムについて語らせてくれ
分散システムについて語らせてくれ分散システムについて語らせてくれ
分散システムについて語らせてくれ
 
Cycloudのストレージ紹介と歴史
Cycloudのストレージ紹介と歴史Cycloudのストレージ紹介と歴史
Cycloudのストレージ紹介と歴史
 
20分でわかるgVisor入門
20分でわかるgVisor入門20分でわかるgVisor入門
20分でわかるgVisor入門
 
Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)
Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)
Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)
 
開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)
 
新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編
 
O/Rマッパーによるトラブルを未然に防ぐ
O/Rマッパーによるトラブルを未然に防ぐO/Rマッパーによるトラブルを未然に防ぐ
O/Rマッパーによるトラブルを未然に防ぐ
 
AlmaLinux と Rocky Linux の誕生経緯&比較
AlmaLinux と Rocky Linux の誕生経緯&比較AlmaLinux と Rocky Linux の誕生経緯&比較
AlmaLinux と Rocky Linux の誕生経緯&比較
 
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
 
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方
 
ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計
 
What's new in Spring Batch 5
What's new in Spring Batch 5What's new in Spring Batch 5
What's new in Spring Batch 5
 
ゲームエンジニアのためのデータベース設計
ゲームエンジニアのためのデータベース設計ゲームエンジニアのためのデータベース設計
ゲームエンジニアのためのデータベース設計
 
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
 
世界でいちばんわかりやすいドメイン駆動設計
世界でいちばんわかりやすいドメイン駆動設計世界でいちばんわかりやすいドメイン駆動設計
世界でいちばんわかりやすいドメイン駆動設計
 
ドメイン駆動設計 基本を理解する
ドメイン駆動設計 基本を理解するドメイン駆動設計 基本を理解する
ドメイン駆動設計 基本を理解する
 

Similar to Prometeusについてはじめてみよう / Let's start Prometeus

会社紹介資料
会社紹介資料会社紹介資料
会社紹介資料
ssuser5b98401
 
IAチャンネル:地ビールのIA最適化事例その7
IAチャンネル:地ビールのIA最適化事例その7IAチャンネル:地ビールのIA最適化事例その7
IAチャンネル:地ビールのIA最適化事例その7
Makoto Shimizu
 
MonotaRO TechTalk #1 ごあいさつ
MonotaRO TechTalk #1 ごあいさつMonotaRO TechTalk #1 ごあいさつ
MonotaRO TechTalk #1 ごあいさつ
株式会社MonotaRO Tech Team
 
eVar7 = s.t(art) ; Kick-Off
eVar7 = s.t(art) ; Kick-OffeVar7 = s.t(art) ; Kick-Off
eVar7 = s.t(art) ; Kick-Off
Makoto Shimizu
 
SoftLayerのAPIを活用した􀀁 ポータルサービス「SETTA」
SoftLayerのAPIを活用した􀀁 ポータルサービス「SETTA」SoftLayerのAPIを活用した􀀁 ポータルサービス「SETTA」
SoftLayerのAPIを活用した􀀁 ポータルサービス「SETTA」
softlayerjp
 
マイクロサービスっぽい感じの話
マイクロサービスっぽい感じの話マイクロサービスっぽい感じの話
マイクロサービスっぽい感じの話
Makoto Haruyama
 
Leaf2009 環境分科会
Leaf2009 環境分科会Leaf2009 環境分科会
Leaf2009 環境分科会
T P
 
Instok[file makerを用いた弊社の取組について」
Instok[file makerを用いた弊社の取組について」Instok[file makerを用いた弊社の取組について」
Instok[file makerを用いた弊社の取組について」
基演 伊藤
 
SORACOM Canalを使った キャンペーン端末事
SORACOM Canalを使った キャンペーン端末事SORACOM Canalを使った キャンペーン端末事
SORACOM Canalを使った キャンペーン端末事
Tosihiyuki Hirai
 
世界最強トヨタのDNAを自社に移植する Agile japan2016
世界最強トヨタのDNAを自社に移植する Agile japan2016世界最強トヨタのDNAを自社に移植する Agile japan2016
世界最強トヨタのDNAを自社に移植する Agile japan2016
Kazutaka Sankai
 
Setta soft layersummit(公開用)_creationline
Setta soft layersummit(公開用)_creationlineSetta soft layersummit(公開用)_creationline
Setta soft layersummit(公開用)_creationlinesoftlayerjp
 
Setta soft layersummit(公開用)_creationline
Setta soft layersummit(公開用)_creationlineSetta soft layersummit(公開用)_creationline
Setta soft layersummit(公開用)_creationlinechenree3
 
kintone は会社のお医者さん
kintone は会社のお医者さんkintone は会社のお医者さん
kintone は会社のお医者さん
Cybozucommunity
 
202405_VISIONARYJAPAN_engineerteam_entrancebook(ver2.1)
202405_VISIONARYJAPAN_engineerteam_entrancebook(ver2.1)202405_VISIONARYJAPAN_engineerteam_entrancebook(ver2.1)
202405_VISIONARYJAPAN_engineerteam_entrancebook(ver2.1)
KayaSuetake1
 
Turnk運用book
Turnk運用bookTurnk運用book
Turnk運用book
Naomichi Sawamura
 
【公開用】株式会社VISIONARY JAPAN_エンジニアチーム 採用資料(ver2.1)
【公開用】株式会社VISIONARY JAPAN_エンジニアチーム 採用資料(ver2.1)【公開用】株式会社VISIONARY JAPAN_エンジニアチーム 採用資料(ver2.1)
【公開用】株式会社VISIONARY JAPAN_エンジニアチーム 採用資料(ver2.1)
recruit9
 
VISIONARYJAPAN_engineer_Recruitbook202404
VISIONARYJAPAN_engineer_Recruitbook202404VISIONARYJAPAN_engineer_Recruitbook202404
VISIONARYJAPAN_engineer_Recruitbook202404
KayaSuetake1
 
Pythonエンジニアの最適なキャリアを考える (PyCon JP 2016 ジョブフェア LT)
Pythonエンジニアの最適なキャリアを考える (PyCon JP 2016 ジョブフェア LT)Pythonエンジニアの最適なキャリアを考える (PyCon JP 2016 ジョブフェア LT)
Pythonエンジニアの最適なキャリアを考える (PyCon JP 2016 ジョブフェア LT)
株式会社MonotaRO Tech Team
 
大きな組織にスクラムの輪を広げていくために
大きな組織にスクラムの輪を広げていくために大きな組織にスクラムの輪を広げていくために
大きな組織にスクラムの輪を広げていくために
Tomonori Fukuta
 
再就職難の時代だからこそ、出来ること
再就職難の時代だからこそ、出来ること再就職難の時代だからこそ、出来ること
再就職難の時代だからこそ、出来ることYukio Saito
 

Similar to Prometeusについてはじめてみよう / Let's start Prometeus (20)

会社紹介資料
会社紹介資料会社紹介資料
会社紹介資料
 
IAチャンネル:地ビールのIA最適化事例その7
IAチャンネル:地ビールのIA最適化事例その7IAチャンネル:地ビールのIA最適化事例その7
IAチャンネル:地ビールのIA最適化事例その7
 
MonotaRO TechTalk #1 ごあいさつ
MonotaRO TechTalk #1 ごあいさつMonotaRO TechTalk #1 ごあいさつ
MonotaRO TechTalk #1 ごあいさつ
 
eVar7 = s.t(art) ; Kick-Off
eVar7 = s.t(art) ; Kick-OffeVar7 = s.t(art) ; Kick-Off
eVar7 = s.t(art) ; Kick-Off
 
SoftLayerのAPIを活用した􀀁 ポータルサービス「SETTA」
SoftLayerのAPIを活用した􀀁 ポータルサービス「SETTA」SoftLayerのAPIを活用した􀀁 ポータルサービス「SETTA」
SoftLayerのAPIを活用した􀀁 ポータルサービス「SETTA」
 
マイクロサービスっぽい感じの話
マイクロサービスっぽい感じの話マイクロサービスっぽい感じの話
マイクロサービスっぽい感じの話
 
Leaf2009 環境分科会
Leaf2009 環境分科会Leaf2009 環境分科会
Leaf2009 環境分科会
 
Instok[file makerを用いた弊社の取組について」
Instok[file makerを用いた弊社の取組について」Instok[file makerを用いた弊社の取組について」
Instok[file makerを用いた弊社の取組について」
 
SORACOM Canalを使った キャンペーン端末事
SORACOM Canalを使った キャンペーン端末事SORACOM Canalを使った キャンペーン端末事
SORACOM Canalを使った キャンペーン端末事
 
世界最強トヨタのDNAを自社に移植する Agile japan2016
世界最強トヨタのDNAを自社に移植する Agile japan2016世界最強トヨタのDNAを自社に移植する Agile japan2016
世界最強トヨタのDNAを自社に移植する Agile japan2016
 
Setta soft layersummit(公開用)_creationline
Setta soft layersummit(公開用)_creationlineSetta soft layersummit(公開用)_creationline
Setta soft layersummit(公開用)_creationline
 
Setta soft layersummit(公開用)_creationline
Setta soft layersummit(公開用)_creationlineSetta soft layersummit(公開用)_creationline
Setta soft layersummit(公開用)_creationline
 
kintone は会社のお医者さん
kintone は会社のお医者さんkintone は会社のお医者さん
kintone は会社のお医者さん
 
202405_VISIONARYJAPAN_engineerteam_entrancebook(ver2.1)
202405_VISIONARYJAPAN_engineerteam_entrancebook(ver2.1)202405_VISIONARYJAPAN_engineerteam_entrancebook(ver2.1)
202405_VISIONARYJAPAN_engineerteam_entrancebook(ver2.1)
 
Turnk運用book
Turnk運用bookTurnk運用book
Turnk運用book
 
【公開用】株式会社VISIONARY JAPAN_エンジニアチーム 採用資料(ver2.1)
【公開用】株式会社VISIONARY JAPAN_エンジニアチーム 採用資料(ver2.1)【公開用】株式会社VISIONARY JAPAN_エンジニアチーム 採用資料(ver2.1)
【公開用】株式会社VISIONARY JAPAN_エンジニアチーム 採用資料(ver2.1)
 
VISIONARYJAPAN_engineer_Recruitbook202404
VISIONARYJAPAN_engineer_Recruitbook202404VISIONARYJAPAN_engineer_Recruitbook202404
VISIONARYJAPAN_engineer_Recruitbook202404
 
Pythonエンジニアの最適なキャリアを考える (PyCon JP 2016 ジョブフェア LT)
Pythonエンジニアの最適なキャリアを考える (PyCon JP 2016 ジョブフェア LT)Pythonエンジニアの最適なキャリアを考える (PyCon JP 2016 ジョブフェア LT)
Pythonエンジニアの最適なキャリアを考える (PyCon JP 2016 ジョブフェア LT)
 
大きな組織にスクラムの輪を広げていくために
大きな組織にスクラムの輪を広げていくために大きな組織にスクラムの輪を広げていくために
大きな組織にスクラムの輪を広げていくために
 
再就職難の時代だからこそ、出来ること
再就職難の時代だからこそ、出来ること再就職難の時代だからこそ、出来ること
再就職難の時代だからこそ、出来ること
 

More from Takeo Noda

スタートアップにやさしいAWS
スタートアップにやさしいAWSスタートアップにやさしいAWS
スタートアップにやさしいAWS
Takeo Noda
 
Vue入門
Vue入門Vue入門
Vue入門
Takeo Noda
 
ディレクションのすゝめ
ディレクションのすゝめディレクションのすゝめ
ディレクションのすゝめ
Takeo Noda
 
負荷テスト入門
負荷テスト入門負荷テスト入門
負荷テスト入門
Takeo Noda
 
データ解析入門
データ解析入門データ解析入門
データ解析入門
Takeo Noda
 
Laravelの認証について
Laravelの認証についてLaravelの認証について
Laravelの認証について
Takeo Noda
 
Zabbixで学ぶ統計解析入門
Zabbixで学ぶ統計解析入門Zabbixで学ぶ統計解析入門
Zabbixで学ぶ統計解析入門
Takeo Noda
 
Laravelとテストについて
LaravelとテストについてLaravelとテストについて
Laravelとテストについて
Takeo Noda
 
Zabbix入門
Zabbix入門Zabbix入門
Zabbix入門
Takeo Noda
 
映像・音響機材入門
映像・音響機材入門映像・音響機材入門
映像・音響機材入門
Takeo Noda
 
サイト運用者に向けたバージョン管理について
サイト運用者に向けたバージョン管理についてサイト運用者に向けたバージョン管理について
サイト運用者に向けたバージョン管理について
Takeo Noda
 
Laravel5を使って開発してみた
Laravel5を使って開発してみたLaravel5を使って開発してみた
Laravel5を使って開発してみた
Takeo Noda
 

More from Takeo Noda (12)

スタートアップにやさしいAWS
スタートアップにやさしいAWSスタートアップにやさしいAWS
スタートアップにやさしいAWS
 
Vue入門
Vue入門Vue入門
Vue入門
 
ディレクションのすゝめ
ディレクションのすゝめディレクションのすゝめ
ディレクションのすゝめ
 
負荷テスト入門
負荷テスト入門負荷テスト入門
負荷テスト入門
 
データ解析入門
データ解析入門データ解析入門
データ解析入門
 
Laravelの認証について
Laravelの認証についてLaravelの認証について
Laravelの認証について
 
Zabbixで学ぶ統計解析入門
Zabbixで学ぶ統計解析入門Zabbixで学ぶ統計解析入門
Zabbixで学ぶ統計解析入門
 
Laravelとテストについて
LaravelとテストについてLaravelとテストについて
Laravelとテストについて
 
Zabbix入門
Zabbix入門Zabbix入門
Zabbix入門
 
映像・音響機材入門
映像・音響機材入門映像・音響機材入門
映像・音響機材入門
 
サイト運用者に向けたバージョン管理について
サイト運用者に向けたバージョン管理についてサイト運用者に向けたバージョン管理について
サイト運用者に向けたバージョン管理について
 
Laravel5を使って開発してみた
Laravel5を使って開発してみたLaravel5を使って開発してみた
Laravel5を使って開発してみた
 

Prometeusについてはじめてみよう / Let's start Prometeus

  • 1. Copyright © Xchange Solutions All right reserved. Prometeusについてはじめてみよう 株式会社エクスチェンジ ソリューションズ 野田 健夫 2017.12.16 KIXS vol.006 紅白LT大会 絶対にガチってはいけないLT大会
  • 2. 2 Copyright © Xchange Solutions All right reserved. こんにちは 野田 健夫(のだたけお) https://twitter.com/nodatakeo https://www.facebook.com/nodatakeo 株式会社エクスチェンジ ソリューションズ
  • 3. 3 Copyright © Xchange Solutions All right reserved. いつから? 2011/10 2012/7 2016/04 前職の部長と仲間 6名からスタート。 福岡拠点設立 福岡移住 セブンメディアを母体 として会社名変更 福岡に来て5年
  • 4. 4 Copyright © Xchange Solutions All right reserved. これまでの監視ツール遍歴 2004~2009年ごろ:BigBrother / Hobbit / Xymon http://xymon.sourceforge.net/
  • 5. 5 Copyright © Xchange Solutions All right reserved. これまでの監視ツール遍歴 2008~2012年ごろ:Nagios https://www.nagios.org/
  • 6. 6 Copyright © Xchange Solutions All right reserved. これまでの監視ツール遍歴 2012年~現在 :Zabbix http://www.zabbix.com/jp/
  • 7. 7 Copyright © Xchange Solutions All right reserved. そろそろ次? Zabbixとの付き合いも5年。 Zabbixは、生存競争に残れるのか? 新しい監視サービスの取り込みを検討。
  • 8. 8 Copyright © Xchange Solutions All right reserved. Prometeusとは Prometheus は、 Google 出身者が Google 社内監視ツール Borgmon にインスパイアさ れて作成したオープンソースの監視システム。 音楽SNSとして知られているSoundcloud社 が2012年に開発をスタート。現在は、 Cloud Native Computing Foundationの下で開発。 Go言語で書かれています。
  • 9. 9 Copyright © Xchange Solutions All right reserved. なぜPrometeusか 軽量でシンプル Go言語でOS問わずインストールが簡単 基本はmetricsをWEB APIで取得 microserviceに基づく設計で実装
  • 10. 10 Copyright © Xchange Solutions All right reserved. インストール&起動について ダウンロードして解凍 コマンド実行すれば即起動 ※サーバーは、デフォルトでは Port:9090 で起動 ※Dockerも提供されている。 https://hub.docker.com/u/prom/
  • 11. 11 Copyright © Xchange Solutions All right reserved. ダウンロード可能なモジュール  Prometheus (サーバー本体)  Alertmanager (アラート管理)  Blackbox_exporter (外形監視)  Consul_exporter  Graphite_exporter  Haproxy_exporter  Memcached_exporter  Mysqld_exporter  Node_exporter  Statsd_exporter  Pushgateway(PUSH通知、バッチ結果の通知などに限定しての利用を推奨。) (エクスポーター、監視エージェント) ほかにも数多く公式、非公式含め公開されている。
  • 12. 12 Copyright © Xchange Solutions All right reserved. 公開されているExporter https://prometheus.io/docs/instrumenting/exporters/
  • 13. 13 Copyright © Xchange Solutions All right reserved. 独自監視  いくつかの言語で基盤を提供  Golang https://github.com/prometheus/client_golang  Python https://github.com/prometheus/client_python  Java https://github.com/prometheus/client_java  Ruby https://github.com/prometheus/client_ruby  大きく3種類  Online Serving System (よくあるExporter系)  Offline Processing  Batch Jobs (PushGateway系)  命名規則などのガイドラインがある。 https://prometheus.io/docs/practices/naming/ https://prometheus.io/docs/instrumenting/writing_exporters/
  • 14. 14 Copyright © Xchange Solutions All right reserved. システム構成:詳細① サービス系をエクス ポーターからデータ 取得 ほかのPrometheus サーバーからもデー タ取得できる アラート通知 管理画面 基本PULL型で情報取得 短期処理結果をPUSH 例:バッチ実行件数など https://prometheus.io/docs/introduction/overview/
  • 15. 15 Copyright © Xchange Solutions All right reserved. システム構成:詳細② https://developers.soundcloud.com/blog/prometheus-monitoring-at-soundcloud
  • 16. 16 Copyright © Xchange Solutions All right reserved. 管理画面
  • 17. 17 Copyright © Xchange Solutions All right reserved. Grafana
  • 18. 18 Copyright © Xchange Solutions All right reserved. まとめ シンプルな監視サーバー。 microserviceの監視にマッチする。 ローカルでは15日程度しか保持しないの で別でリモートの永続化の仕組みを考え る必要がある。 シンプルゆえに組み合わせ方が肝。