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
今学生に伝えたい, 監視の話 / okinawa_ac_lt
Search
cohalz
July 06, 2019
Technology
0
390
今学生に伝えたい, 監視の話 / okinawa_ac_lt
沖縄学生×企業エンジニア 7月大LT大会!!! #okinawa_ac_lt
https://connpass.com/event/132178/
の発表資料です
cohalz
July 06, 2019
Tweet
Share
More Decks by cohalz
See All by cohalz
toittaにOpenTelemetryを導入した話 / Mackerel APM リリースパーティ
cohalz
1
710
はてなにおけるfujiwara-wareの活用やecspressoのCI/CD構成 / Fujiwara Tech Conference 2025
cohalz
3
7.7k
はてなのSRE組織2024 / Road to SRE NEXT@福岡
cohalz
2
2k
SREのキャリア、 あるいは生態 / #ya8
cohalz
11
1.7k
カンファレンスのボランティアスタッフって何やるの? / DAIMYO Meetup #4
cohalz
0
180
小さなものでも Step Functions / Serverless Meetup Fukuoka Re:boot
cohalz
0
220
ECSのCI/CD改善と標準化の取り組み / JAWS FESTA 2023 in Kyushu
cohalz
8
7.4k
ecspressoへの貢献を振り返る / JAWS-UG コンテナ支部 #24 ecspresso MeetUp
cohalz
1
7.7k
はてなフォトライフをECSに移行した話 / Hatena Engineer Seminar #20
cohalz
1
19k
Other Decks in Technology
See All in Technology
なぜテストマネージャの視点が 必要なのか? 〜 一歩先へ進むために 〜
moritamasami
0
240
Android Audio: Beyond Winning On It
atsushieno
0
2.4k
Terraformで構築する セルフサービス型データプラットフォーム / terraform-self-service-data-platform
pei0804
1
190
プラットフォーム転換期におけるGitHub Copilot活用〜Coding agentがそれを加速するか〜 / Leveraging GitHub Copilot During Platform Transition Periods
aeonpeople
1
230
💡Ruby 川辺で灯すPicoRubyからの光
bash0c7
0
120
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
10
75k
Autonomous Database - Dedicated 技術詳細 / adb-d_technical_detail_jp
oracle4engineer
PRO
4
10k
人工衛星のファームウェアをRustで書く理由
koba789
15
8.2k
S3アクセス制御の設計ポイント
tommy0124
3
200
[ JAWS-UG 東京 CommunityBuilders Night #2 ]SlackとAmazon Q Developerで 運用効率化を模索する
sh_fk2
3
460
スクラムガイドに載っていないスクラムのはじめかた - チームでスクラムをはじめるときに知っておきたい勘所を集めてみました! - / How to start Scrum that is not written in the Scrum Guide 2nd
takaking22
1
150
Aurora DSQLはサーバーレスアーキテクチャの常識を変えるのか
iwatatomoya
1
1.2k
Featured
See All Featured
Side Projects
sachag
455
43k
Music & Morning Musume
bryan
46
6.8k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3k
Why Our Code Smells
bkeepers
PRO
339
57k
Into the Great Unknown - MozCon
thekraken
40
2k
Being A Developer After 40
akosma
90
590k
The Pragmatic Product Professional
lauravandoore
36
6.9k
Typedesign – Prime Four
hannesfritz
42
2.8k
GitHub's CSS Performance
jonrohan
1032
460k
Unsuck your backbone
ammeep
671
58k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.2k
Transcript
今学生に伝えたい, 監視の話 沖縄学生×企業エンジニア 7月大LT大会!!! id:cohalz
自己紹介 ・id:cohalz / @cohalz ・はてなインターン2017 Mackerelチーム ・株式会社はてな SRE (2018 ~)
監視って? ・サーバ上の様々なメトリックを元にアラート通知を飛ばす ・ CPU使用率や残り容量など
監視って? ・そのメトリックを保存して,グラフにして見る
なぜ監視の話?
今監視が大ブーム!
覚えて帰ってほしいこと ・監視ってそんなに難しくない ・開発者も監視をしてみよう
何を監視すればいいか?
何を監視すればいいか? ・「起きてほしくないこと」 ・例: Webアプリケーション ・500エラーを返す ・レスポンス時間の悪化 ・証明書の期限切れ
まずはサービスに近いところから ・大事なのはサービスが動いているか ・個別のサーバのCPUやメモリでアラートを設定しない ・アラートが飛びがちになる ・代わりにグラフで傾向を見よう
なんでもアラートを飛ばせばいいものでもない ・たくさんのアラートが飛んでくると? ・「アラート疲れ」 ・「オオカミ少年アラート」 ・サービス品質をよく考えて設計する
アラートが役立つ他の例 ・バッチの実行 ・失敗内容をアラートに含める ・システムのマイグレーション ・古いホストに接続してたらアラート ・安全にホストを落とせる
アラート設計の話
昔のアラート対応 ・インフラエンジニアもしくはSREがアラートを設計 ・対応するのも同じ人 ・同じ言語・フレームワークなので対応方法が決まっていた
最近のアラート対応 ・サービスが複雑になってきた ・言語やフレームワークもバラバラ ・一次対応だけでは済まないことも ・サービス開発者が対応しないといけない ・原因はアプリケーション自体にあることが多い
例: Webアプリケーションが見れなくなった ・MySQLのコネクション数が跳ね上がっていた ・接続数上限のため調査のために繋ぐこともできない!! ・一次対応として再起動をした
例: Webアプリケーションが見れなくなった ・MySQLのコネクション数が跳ね上がっていた ・接続数上限のため調査のために繋ぐこともできない!! ・一次対応として再起動をした ・実はアプリケーション側から接続を切っていなかった!! ・開発者にアプリケーションのコードを直してもらった
開発者も監視に関わるべき ・サービスの実装を一番良くわかっている ・実装時に懸念点があればそこを監視すればいい ・開発者がアラートを受け取る ・根本的解決が早くなるかも
コンテナ化と言語と監視 ・どの言語・フレームワークを使ってるか把握しにくくなる ・サービスから見た最小単位がコンテナになる ・とはいえ特有の監視をしなくていい理由にはならない ・開発者が関わるべき
監視の目的
起きてほしくないことが, 起こっていないを保証する
テストに似てる
テストは皆さん書いてますよね?
対象が違うだけで目的は同じ ・テストはソフトウェアだが,監視はシステムを見る http://developer.cybozu.co.jp/archives/kazuho/2010/01/cronlog-52f2.html
監視プラグイン ・プログラムを書いて対象の数字を出力するだけ ・ヘルパプラグインがあるので意外と簡単 ・既にいろんな人が作っていて,コードの参考にもなる
監視プラグイン ・欲しいプラグインはすでに誰かが作っているかも? ・欲しい機能がなかったらOSSのPR作成チャンス!
監視以外のいろいろ
監視も万能ではない 苦手なもの ・数値にならないもの ・統計・解析 ・1リクエストの詳細
監視以外のあれこれ ・ログ ・APM (Application Performance Management) ・分散トレーシング
監視以外のあれこれ ・ログ ・APM (Application Performance Management) ・分散トレーシング => サービスの見える化
「推測するな,計測せよ」
まとめ ・不安を安心に変えるために監視をする ・テストと同じ ・でもアラートはよく考えよう ・開発者も監視をしてみよう ・サービスに一番詳しいのは開発者
あわせて読みたい ・入門 監視 ・監視についてのアンチパターンなど詳しく載っている本 ・監視 入門 ~ マイクロサービス時代の監視設計 ・https://junkyard.song.mu/slides/rancher-meetup-tokyo-18 ・マイクロサービスに限らない,開発者に向けた現在の監視の話