Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Prometheusで監視・モニタリング #hackt
Search
Manabu Matsuzaki
September 11, 2016
Programming
3
1.1k
Prometheusで監視・モニタリング #hackt
Manabu Matsuzaki
September 11, 2016
Tweet
Share
More Decks by Manabu Matsuzaki
See All by Manabu Matsuzaki
Spring BootユーザのためのArmeria入門 #jsug / Introduce to Armeria for Spring users
matsumana
0
2.8k
Canary Release with Argo Rollouts #ふくばねてす / canary-release-with-argo-rollouts
matsumana
1
1.2k
Getting started Central Dogma with Golang #fukuokago #umedago / getting-started-central-dogma-with-golang
matsumana
0
890
Micrometer入門 #javaq / introduce-to-micrometer
matsumana
1
2.9k
ArmeriaとCentral Dogmaから学ぶ、マイクロサービスに必要な機能 #edayfuk / lean-from-armeria-and-central-dogma
matsumana
0
4.3k
SREcon19 Americas 参加レポート #srefukuoka / srecon19-americas-report
matsumana
0
880
SRE入門 & チームで取り組んでいるSRE #srefukuoka / introduce-to-sre
matsumana
0
1.3k
Introduce to Armeria and Central Dogma #GWD_Nulab / introduce-to-armeria-and-central-dogma
matsumana
0
560
Connector/JでMaster/Slave Replication構成のMySQLに接続する #mysql_casual_fukuoka /connector-j-master-slave-replication
matsumana
0
1.5k
Other Decks in Programming
See All in Programming
テスト駆動Kaggle
isax1015
1
620
MCPを使ってイベントソーシングのAIコーディングを効率化する / Streamlining Event Sourcing AI Coding with MCP
tomohisa
0
170
20250704_教育事業におけるアジャイルなデータ基盤構築
hanon52_
5
1.1k
The Modern View Layer Rails Deserves: A Vision For 2025 And Beyond @ RailsConf 2025, Philadelphia, PA
marcoroth
2
730
PHPでWebSocketサーバーを実装しよう2025
kubotak
0
320
High-Level Programming Languages in AI Era -Human Thought and Mind-
hayat01sh1da
PRO
0
880
明示と暗黙 ー PHPとGoの インターフェイスの違いを知る
shimabox
2
620
PipeCDのプラグイン化で目指すところ
warashi
1
300
PicoRuby on Rails
makicamel
2
140
AIエージェントはこう育てる - GitHub Copilot Agentとチームの共進化サイクル
koboriakira
0
760
AI コーディングエージェントの時代へ:JetBrains が描く開発の未来
masaruhr
1
200
20250708_JAWS_opscdk
takuyay0ne
2
130
Featured
See All Featured
Measuring & Analyzing Core Web Vitals
bluesmoon
7
520
Speed Design
sergeychernyshev
32
1k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Typedesign – Prime Four
hannesfritz
42
2.7k
Optimising Largest Contentful Paint
csswizardry
37
3.3k
Embracing the Ebb and Flow
colly
86
4.8k
Designing Experiences People Love
moore
142
24k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
700
Art, The Web, and Tiny UX
lynnandtonic
299
21k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
The Cult of Friendly URLs
andyhume
79
6.5k
Transcript
PrometheusͰ ࢹɾϞχλϦϯά Hacker Tackle 2016 2016/09/10 @matsumana
ࣗݾհ • ໊લɿ দ࡚ ֶ • Twitterɿ @matsumana • ৬ۀɿ
ιϑτΣΞΤϯδχΞ ʢϓϩάϥϚɺWebαʔϏεӡ༻ʣ
ΞδΣϯμ • Prometheusͷհ • ଞͷπʔϧͱͷൺֱ • promgenͷհ • exporterʹ͍ͭͯ
Ξϯέʔτ
ݱࡏԿΛͬͯ·͔͢ʁ • Nagios • Ganglia • Munin • Cacti •
Zabbix • AWS CloudWatch • Datadog • Mackerel • New Relic • ͦΕҎ֎
PrometheusͷࣄΛ ͬͯ·͔ͨ͠ʁ
Prometheusͱ • SoundCloud͕ࣾ։ൃ͠ɺOSSͱͯ͠ެ։͍ͯ͠ΔࢹɾϞχλϦϯάπʔϧ • ࠷ॳͷcommit2012/11/24 • 2016/07/18ʹ1.0.0ϦϦʔε (ࠓ࣌Ͱͷ࠷৽1.1.0) • ࠷্͕ۙঢத
• Prometheus Casual Talks @౦ژ → ࢀՃऀ100໊ • Prometheus Core Developer Björn Rabenstein Open Q&A @ϩϯυϯ ˠ ࢀՃऀ 27໊ • PromCon 2016 @ϕϧϦϯ → ࢀՃऀ 80໊
Prometheusͷػೳ • time series database (࣌ܥྻσʔλϕʔε) • ϝτϦΫεऩू & อଘ
• อଘͨ͠ϝτϦΫεʹର͢ΔΫΤϦ • ͖͍͠Λઃఆͯ͠ΞϥʔτΛඈ͢ • μογϡϘʔυ
Prometheusʹແ͍ػೳ • ੜϩά/Πϕϯτσʔλͷऩू (Elasticsearchͷ༷ͳ) • ϦΫΤετͷτϨʔγϯά (Zipkinͷ༷ͳ) • ػցֶशσʔλϚΠχϯάʹΑΔݕग़ •
ϝτϦΫεͷظอଘετϨʔδ • ࣗಈతͳਫฏεέʔϦϯά • Ϣʔβೝূ
ͦͷଞͷಛ • golangͰॻ͔Ε͍ͯΔ • pullܕ ࢹରϊʔυʹexportorΛΠϯετʔϧͯ͠Prometheus͔ΒϙʔϦϯά • Grafanaͱ࿈ܞՄೳ • PrometheusࣗମʹPromDashͱ͍͏μογϡϘʔυπʔϧ͕͋Δ͕ɺ
Grafanaͱͷ࿈ܞ͕ਪ • CNCF(Cloud Native Computing Foundation)ͷϓϩδΣΫτʹͳͬͨ • Kubernetesͱ౷߹Մೳ ※ͱݴͬͯDocker༻Ͱͳ͍ͷͰɺͪΖΜΦϯϓϨͰ͑Δ
ΞʔΩςΫνϟ
pros • Grafanaͱ࿈ܞग़དྷΔ • ΫΤϦ͕ॻ͚Δ • αʔόεϖοΫϝτϦΫεʹΑΔͱࢥ͏͕ 1ͷαʔόͰࢁͷϊʔυΛࢹͰ͖ΔΒ͍͠ • 1ͷαʔόͰ3,000ϊʔυ͘Β͍ࢹग़དྷΔΒ͍͠
• AWSͷ߹ɺ50ʙ100ϊʔυ͘Β͍ͳΒαʔόεϖοΫ t2.medium(CPU: 2Core, Mem: 4GB)ͰेΒ͍͠ • exportor͕๛ɻ͠ཉ͍͠ͷ͕ແ͚Ε؆୯ʹ࡞ΕΔ
cons • ໊લ͕ΞϨͳͷͰάάΓʹ͍͘ ʢөըɺΪϦγϟਆͷਆʣ • ΫΤϦͷॻ͖ํ͕Α͘Θ͔Βͳ͍ • ࢹରϊʔυͷՃઃఆϑΝΠϧʹॻ͍ͯ ϓϩηεΛ࠶ىಈʢGUI͕ͳ͍ʣ •
TimeZone͕GMT (GrafanaΛ͑ͳ͍)
ଞͷπʔϧͱͷൺֱ • ྫ͑Zabbixͱൺֱ͢ΔͱɺͲΜͳײ͡ʁ • γϯϓϧ ʘ(^o^)ʗ • ίϯϙʔωϯτ͕ૄ݁߹ͳͷɺ 1ͭͷαʔϏεͰϊʔυࢹ͢Δ͚ͩͳΒZabbixͷ༷ͳ ΦʔϧΠϯϫϯͷํ͕͍͍͔
(´ɾωɾʆ) • WebUIͰઃఆग़དྷͳ͍ (´ɾωɾʆ) • ϝϯςφϯε͕࣌ؒઃఆग़དྷͳ͍ (´ɾωɾʆ) • Ξϥʔτૹ৴ઌϝʔϧΞυϨεͷઃఆ͕ࡉ͔͘ग़དྷͳ͍ (´ɾωɾʆ)
Prometheus ྑ͍Μ͚ͩͲ ͦͷ··͏ͷ ݁ߏͭΒ͍
ͦ͜Ͱ
promgen • GitHubͰެ։த • https://github.com/line/promgen • WebUIͰઃఆ͕Մೳ
promgen Service
promgen Project
ΞʔΩςΫνϟ (࠶ܝ)
Prometheus w/ promgen
exporter
Α͍ͦ͘͏ͳexporter • Default port allocations Wikiࣗ༝ʹฤूՄೳɻศརͳexporterΛ࡞ͬͨΒొ͠Α͏ʂ • node_exporter • blackbox_exporter
• nginx_exporter • apache_exporter • mysqld_exporter • redis_exporter • memcached_exporter • jmx_exporter • zookeeper_exporter • elasticsearch_exporter
exporterͷ࡞Γํ • ΫϥΠΞϯτϥΠϒϥϦΛ͏ͱָ • client_java • client_golang • client_python •
client_ruby
exporterͷಈ࡞Πϝʔδ
exporterΛࢹରΞϓϦʹΈࠐΉࣄՄೳ
γϯϓϧͳ exporterͷιʔεΛྫʹ ࡞ΓํΛઆ໌͠·͢
σϞ • promgen • Prometheus • Grafana
ϦϯΫू • ΦϑΟγϟϧ • prometheus.io • Github Organization • YouTubeνϟϯωϧ
ʢPromConͷಈը͋Γʣ ← ͓͢͢Ί • Prometheus Casual Talks #1Λ։࠵͠·ͨ͠ • Prometheus London meetupͰLT͖ͯ͠·ͨ͠ • PromCon 2016ʹߦͬͯൃද͖ͯ͠·ͨ͠ • promgen - prometheus managemnet tool / simpleclient_java hacks @ Prometheus casual