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 study group 2nd slide
Search
Korenaga Makoto
April 22, 2020
Technology
1
49
SRE study group 2nd slide
Korenaga Makoto
April 22, 2020
Tweet
Share
More Decks by Korenaga Makoto
See All by Korenaga Makoto
SRE study group 4th slide
hapoon
2
79
SRE study group 3rd slide
hapoon
1
57
SRE study group 1st slide
hapoon
1
58
Slackアプリを使ってデイリースクラムを効率化
hapoon
1
540
モノリシックからマイクロサービスへ
hapoon
0
110
Other Decks in Technology
See All in Technology
AgentCon Accra: Ctrl + Alt + Assist: AI Agents Edition
bethany
0
110
[Codex Meetup Japan #1] Codex-Powered Mobile Apps Development
korodroid
2
790
プロダクトのコードから見るGoによるデザインパターンの実践 #go_night_talk
bengo4com
1
2.5k
フレームワークを意識させないワークショップづくり
keigosuda
0
190
2025-10-09_プロジェクトマネージャーAIチャンス
taukami
0
140
なぜAWSを活かしきれないのか?技術と組織への処方箋
nrinetcom
PRO
4
890
Claude Codeを駆使した初めてのiOSアプリ開発 ~ゼロから3週間でグローバルハッカソンで入賞するまで~
oikon48
8
3k
AI時代こそ求められる設計力- AWSクラウドデザインパターン3選で信頼性と拡張性を高める-
kenichirokimura
3
320
Git in Team
kawaguti
PRO
3
370
そのWAFのブロック、どう活かす? サービスを守るための実践的多層防御と思考法 / WAF blocks defense decision
kaminashi
0
200
20201008_ファインディ_品質意識を育てる役目は人かAIか___2_.pdf
findy_eventslides
2
640
Simplifying Cloud Native app testing across environments with Dapr and Microcks
salaboy
0
160
Featured
See All Featured
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.2k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.6k
The Invisible Side of Design
smashingmag
302
51k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Code Reviewing Like a Champion
maltzj
526
40k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
Visualization
eitanlees
149
16k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
Git: the NoSQL Database
bkeepers
PRO
431
66k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.5k
Transcript
Site Reliability Engineering 2nd DevOps unit study group Makoto Korenaga
アジェンダ 1. Googleのプロダクション環境 1.1. ハードウェア 1.2. システムソフトウェア 1.3. ソフトウェアインフラストラクチャ
1.4. 開発環境
Googleのプロダクション環境
ハードウェア • マシン ・・・ 1つのハードウェア(あるいは1つのVM) • サーバー ・・・ サービスを実装しているソフトウェア クラスタオペレーティングシステムBorgがマシン上で起動させるサーバーのリソース
割り当てを行う。
ハードウェア • ラック・・・数十台のマシンを配置 • クラスタ・・・1つないし複数の列(複数のラックで構成)で構成 • データセンター・・・複数クラスタを格納 • キャンパス・・・近くに配置されたデータセンター群 •
Jupiter・・・データセンター内で高速通信する為のClos Network装置 • B4・・・データセンター群を相互接続する地球規模のネットワーク
ハードウェア Google データセンター内の光景
システムソフトウェア Borg マシン群を管理する分散クラスタオペ レーティングシステム
システムソフトウェア D HDDやSSD含めたファイルサーバ Colossus 一般的なFSセマンティックに加え、レ プリケーションと暗号化を提供する ファイルシステム
システムソフトウェア 1. OpenFlowベースのSDN ネットワーク間での最善経路を事前に計算 2. Bandwidth Enforcer(BwE) 利用できる帯域を最大化する為に利用可能帯域を管理 3. Global
Software-Load Balancer(GSLB) 3.1. DNSリクエストに対するロードバランシング 3.2. サービスレベルでのロードバランシング 3.3. RPCレベルでのロードバランシング
システムソフトウェア Chubby ロックサービス(複数箇所のデータセンターに跨 がる) 非同期合意形成には Paxosプロトコル使用 Borgmon モニタリングプログラム サーバーメトリクスの定期スクレイプ
ソフトウェアインフラストラクチャ Stubby すべてのサービスで使用されるリモートプロシージャコール(RPC)。 オープンソースでgRPCとして公開。 Protocol buffers RPC間のデータやりとりに使用。 XMLと比較するとサイズは1/3〜1/10、速度は20〜100倍高速。
開発環境 AndroidやChromeのように独自のオープンソースリポジトリを除けば、Googleのソフ トウェアエンジニアは単一の共有リポジトリを使って作業している • 自分のプロジェクト外のコンポーネント不具合に遭遇した場合、自身でその問題を修正し変更の提案 (changelistもしくはCL)を所有者に送り、レビュー後メインラインに投入してもらうことができる • 自分のプロジェクトのソースコードに変更を加える際にはレビューが必要
• ソフトウェアのビルドはデータセンター内のビルドサーバーへビルドリクエストが送られ実行 • プロジェクトによっては push-on-greenシステムによりテストをパスした新バージョンが自動的にプロダ クション環境に送られる
次回予告
リスクの受容 サービスレベル目標 第参回
ありがとうございました 参照: SRE サイトリライアビリティ エンジニアリング Googleの信頼性を支えるエンジニアリングチーム (オライリー・ジャパン)