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
SREの理念と原則〜SREの「人間的」側面 / SRE from humanism
Search
ymotongpoo
May 23, 2023
Technology
1
1k
SREの理念と原則〜SREの「人間的」側面 / SRE from humanism
ymotongpoo
May 23, 2023
Tweet
Share
More Decks by ymotongpoo
See All by ymotongpoo
オブザーバビリティの観点でみるAWS / AWS from observability perspective
ymotongpoo
9
1.6k
信頼性を支えるテレメトリーパイプラインの構築 / Building Telemetry Pipeline with OpenTelemetry
ymotongpoo
9
5.8k
オブザーバビリティのマクロからミクロまで / Observability from macro to micro
ymotongpoo
13
6.3k
テレメトリーシグナルの相関、してますか? 第一原理からのデバッグを支える計装 / Do you utilize telemetry correlations?
ymotongpoo
4
740
OpenTelemetryのここ4年の流れ / OpenTelemetry in last 4+ years
ymotongpoo
17
4.5k
信頼性目標とシステムアーキテクチャー / Reliability Objective and System Architecture
ymotongpoo
18
9.3k
継続的プロファイルによる大規模アプリケーションの性能改善 / Improving massive application clusters with continuous profiling
ymotongpoo
0
350
SLOは何を実現するのか / What does SLO achieve?
ymotongpoo
2
360
Goのメモリ管理 / Memory management in Go
ymotongpoo
11
5.8k
Other Decks in Technology
See All in Technology
偏光画像処理ライブラリを作った話
elerac
1
120
ビジネスモデリング道場 目的と背景
masuda220
PRO
9
670
依存パッケージの更新はコツコツが勝つコツ! / phpcon_nagoya2025
blue_goheimochi
3
180
データ資産をシームレスに伝達するためのイベント駆動型アーキテクチャ
kakehashi
PRO
2
600
現場で役立つAPIデザイン
nagix
35
13k
Tech Blogを書きやすい環境づくり
lycorptech_jp
PRO
1
260
コンピュータビジョンの社会実装について考えていたらゲームを作っていた話
takmin
1
480
Amazon S3 Tablesと外部分析基盤連携について / Amazon S3 Tables and External Data Analytics Platform
nttcom
0
150
2024.02.19 W&B AIエージェントLT会 / AIエージェントが業務を代行するための計画と実行 / Algomatic 宮脇
smiyawaki0820
15
4.1k
Cloud Spanner 導入で実現した快適な開発と運用について
colopl
1
900
php-conference-nagoya-2025
fuwasegu
0
110
エンジニアの育成を支える爆速フィードバック文化
sansantech
PRO
3
1.1k
Featured
See All Featured
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Statistics for Hackers
jakevdp
797
220k
Navigating Team Friction
lara
183
15k
Building Adaptive Systems
keathley
40
2.4k
Into the Great Unknown - MozCon
thekraken
35
1.6k
How to Ace a Technical Interview
jacobian
276
23k
Rails Girls Zürich Keynote
gr2m
94
13k
Agile that works and the tools we love
rasmusluckow
328
21k
Documentation Writing (for coders)
carmenintech
67
4.6k
Large-scale JavaScript Application Architecture
addyosmani
511
110k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
560
How GitHub (no longer) Works
holman
314
140k
Transcript
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関連のブログポストの⽇本語訳