Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
SREの理念と原則〜SREの「人間的」側面 / SRE from humanism
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
ymotongpoo
May 23, 2023
Technology
1.5k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
SREの理念と原則〜SREの「人間的」側面 / SRE from humanism
ymotongpoo
May 23, 2023
Transcript
30 slides
SREの理念と原則 デベロッパーアドボケイト 山口能迪 (@ymotongpoo) SREの「人間的」側面 Sep 9th, 2021 SRE Gaps「理論と実践からSREを再考する」
⼭⼝ 能迪 (ymotongpoo) 職種: デベロッパーアドボケイト 担当: オブザーバビリティ、 SRE、Go 製品: Cloud
Operations suite全般 OpenTelemetry Monitoring Logging Trace Profiler Error Reporting Debugger @ymotongpoo @ymotongpoo
「SREの探求」が出版されました 編纂: David N. Blank-Edelman 翻訳: 渡邉 了介 監訳: 山口
能迪 発刊: オライリージャパン 632ページ、全33章 定価5,060円 2021年9月3日 発刊
今⽇は細かな技術の話はしません
SREとは何をするものか SREはシステムの信頼性を確保するためのシステム開発運⽤⽅法論 =システムの信頼性を揺るがすものを排除‧軽減する
何がシステムの信頼性を揺るがすのか 変化や不確実性が信頼性を下げる システム ユーザー 外部環境 開発者・運用者
何がシステムの信頼性を揺るがすのか ⼈間は不確実 システム ユーザー 外部環境 開発者・運用者
SREとは何をするものか SREはシステムの信頼性を確保するためのシステム開発運⽤⽅法論 =システムの信頼性を揺るがすものを排除‧軽減する たとえば極力「人間に依存しないようにする」
SREとは何をするものか ヒロイズムを取り除く "Hope is not a strategy" ‒ Google SREの⾮公式モットー
⼈間に依存しないためにどうするか 「⼈間」の何に依存しているのかを考える • ⼿作業 • 意思決定
⼈間に依存しないためにどうするか 「⼈間」の何に依存しているのかを考える • ⼿作業 ソフトウェアの問題として解決する • 意思決定 客観的なルールに基づかせる
ソフトウェアの問題として解決する ⼈間に依存しないためにソフトウェアの問題として解決する • 再現性が高い • スケールする • 自動化できる • 抽象化できる
etc…
ソフトウェアの問題として解決する ⼈間に依存しないためにソフトウェアの問題として解決する • トイルの削減 • ⾃動化
ソフトウェアの問題として解決する ‒ トイルの削減 ソフトウェアはもっとも⾝近にある作業代⾏者 • コンピューターは同じ作業を再現性⾼く繰り返し⾏うのが得意 • スケールさせることが容易 S: 5章
W: 6章
ソフトウェアの問題として解決する ‒ ⾃動化 作業をソフトウェア化すれば⼀歩進めて⾃動化できる • 継続的インテグレーション • アラート • データパイプライン∕バッチ
S: 5, 8, 24, 25章
共通ルールに押し出す ⼈間に依存しないために数値化や⽂書化された基準で判断する • 客観性が高い • 予測が立てやすい etc… • 再現性が高まる •
判断が早まる • 継続的に改善できる etc…
共通ルールに押し出す ⼈間に依存しないために数値化や⽂書化された基準で判断する • SLIとSLO • エラーバジェット • インシデント管理 • 運⽤⼿順書(プレイブック/ランブック)
共通ルール ‒ SLIとSLO / エラーバジェット 客観的に注⼒すべき⾏動を判断するための指標と閾値 各コンポーネントの「信頼性」に基づいた指標の策定がポイント • SLO範囲内 新規開発、トイルの削減
• SLO違反 システムの安定化 エラーバジェット(予算)によって投資とリスクのバランスを数値化 S: 3, 4章 W: 2, 3, 5章
共通ルール ‒ インシデント管理 インシデントに関わる⼈間が⾃律的に動けるようにする • インシデント指揮者: インシデントの解消をするまでのプロジェク トマネージャー • 実⾏作業者:
インシデントの実対応者 • コミュニケーション担当者: 外部とのやりとりを担う • 計画担当者: 上記担当者が担わない記録やファシリティを⾏う S: 12, 13, 14章 W: 9章
共通ルール ‒ 運⽤⼿順書(プレイブック/ランブック) 誰が⾏っても対応できるように⼿順書を⽤意する • 開発者や運⽤者の知識の共有 • ⾃動化のための指針‧設計書 • コミュニケーションスキルの向上
W: 8章
しかし前提が必要
⼈間がパフォーマンスを最⼤限に発揮できるようにする ⼈間がパフォーマンスを最⼤限に発揮できる環境が必要 • 体力面 • 精神面 両方において必要
体⼒⾯ ⼈間的な⽣活を送れるように、そうでない場合はそれに報いるように • アラート∕オンコール戦略 S: 10, 11, 28, 29章 W:
5章
精神⾯ 障害の復旧やその改善を⾏うのは⼈間が最善の改善策を出せるような奇 譚なき意⾒を⾔える環境づくり • ⾮難なきポストモーテム S: 10, 11, 29章 W:
5, 10章
まとめ
今⽇話さなかったこと SREのより技術的な側⾯や複雑な組織論 • モニタリング戦略‧設計、モニタリングインフラ • 各種冗⻑化インフラの設計‧構築 • リリース戦略‧CI/CDパイプライン • テスト戦略、テストインフラ
• セキュリティ • 組織論 etc…
「⼈間の不確実性」を下げる活動が多くある • ⼈間の不確実性を避けるために、ソフトウェアやルールで解決 • ⼈間の確実性を上げるために、最⼤限パフォーマンスが発揮できる ように すべては「信頼性」のため
SREの探求 • 様々な組織のSREの実践に至る苦労が赤 裸々に語られている • こういった話が広く共有されてほしい
SRE関連書籍(和書) Google著 各社
GoogleのSRE関連ウェブサイト sre.google • SRE関連書籍(英語版)の無料公開 • 各種SRE関連記事 • 各種ワークショップ資料 cloud.google.com/blog/ja/products/devops-sre •
Google CloudのDevOps/SRE関連のブログポストの⽇本語訳
More Decks by ymotongpoo
See All by ymotongpoo
TinyGoでオブザーバビリティ?OpenTelemetryはTinyGoで使えるのか / Is OpenTelemetry available in TinyGo environment?
ymotongpoo
2
170
セルフサービスのオブザーバビリティ基盤をOpenTelemetryで作る / Building a Self-Service Observability Platform with OpenTelemetry
ymotongpoo
3
630
OpenTelemetry eBPF Instrumentationの舞台裏 / Behind the Scenes of OpenTelemetry eBPF Instrumentation
ymotongpoo
5
1.7k
サンプリングは統計学である: 数理的根拠に基づき、オブザーバビリティのコストと精度を両立する
ymotongpoo
12
11k
Loadbalancing exporter internals
ymotongpoo
2
270
サンプリングは「作る」のか「使う」のか? 分散トレースのコストと運用を両立する実践的戦略 / Why you need the tail sampling and why you don't want it
ymotongpoo
4
3.5k
生成AI時代の開発と運用 / Dev and Ops in Gen AI era
ymotongpoo
9
5.1k
生成AI時代にこそ求められるSRE / SRE for Gen AI era
ymotongpoo
12
13k
プロファイルとAIエージェントによる効率的なデバッグ / Effective debugging with profiler and AI assistant
ymotongpoo
1
2.2k
Other Decks in Technology
See All in Technology
Context != Context: One window, many lifecycles (AI Native DevCon, Nov 2026)
birgitta410
0
140
AIネイティブ組織の作り方。1人のPOとAIから始める、自社での実験
ama_ch
1
450
生成AI時代のIAMのマニアックな話
takuros
6
3.2k
Frontier Teams — Amazon は AI で「開発のやり方」をどう変えたのか
kmotohas
0
250
アラートを見直していたら営業組織への理解にちょっとだけ繋がった話
z63d
1
200
田んぼの見回りをIoTで減らしたい!水位監視から電池駆動カメラまでの試行錯誤
itosoft
1
190
サボる子はいねぇがー!AgentCoreハーネスの脆弱性に学ぶ、エージェントの入力バリデーション
iwamot
PRO
5
340
自治体AIコンタクトセンター、何をどこに任せる?~Amazon Connect Customer +Amazon Bedrockの実践知~ / 20261107 Satoshi Torano
shift_evolve
PRO
1
140
属人化したISMS運用をGitHubとAIで仕組み化した1年間の記録
sioncojp
4
2.6k
高品質と高スピードを支える品質のシフトレフトのアプローチ
goyoki
4
1.1k
大江戸Ruby会議でデータベース クライアントの話をするのは 間違っているだろうか
yahonda
1
120
人間+AIを「チーム」としてプロセスを再設計する
littlehands
2
2.5k
Featured
See All Featured
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
530
The Mindset for Success: Future Career Progression
greggifford
PRO
0
560
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
980
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.7k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
590
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.4k
Designing for Performance
lara
612
70k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.5k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
380
Optimizing for Happiness
mojombo
378
71k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
570